From 8dfae577bb3c4a88f65b54942508c50d9d068d18 Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Wed, 18 Oct 2023 08:45:50 +0100 Subject: [PATCH 01/36] [feature] Make maximum classical register width a parameter of QASM converters (#1083) --- pytket/docs/changelog.rst | 8 ++ pytket/pytket/qasm/qasm.py | 170 +++++++++++++++++++++++++++++-------- pytket/tests/qasm_test.py | 23 ++++- 3 files changed, 162 insertions(+), 39 deletions(-) diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index 87903fc25d..0cb10e2bff 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -1,6 +1,14 @@ Changelog ========= +Unreleased +---------- + +Minor new features: + +* Add optional parameter to QASM conversion methods to set the maximum allowed + width of classical registers (default 32). + 1.21.0 (October 2023) --------------------- diff --git a/pytket/pytket/qasm/qasm.py b/pytket/pytket/qasm/qasm.py index c30d3244b7..8496b6e076 100644 --- a/pytket/pytket/qasm/qasm.py +++ b/pytket/pytket/qasm/qasm.py @@ -290,7 +290,7 @@ def __iter__(self) -> Iterable[str]: class CircuitTransformer(Transformer): - def __init__(self, return_gate_dict: bool = False) -> None: + def __init__(self, return_gate_dict: bool = False, maxwidth: int = 32) -> None: super().__init__() self.q_registers: Dict[str, int] = {} self.c_registers: Dict[str, int] = {} @@ -298,6 +298,7 @@ def __init__(self, return_gate_dict: bool = False) -> None: self.wasm: Optional[WasmFileHandler] = None self.include = "" self.return_gate_dict = return_gate_dict + self.maxwidth = maxwidth def _fresh_temp_bit(self) -> List: if _TEMP_BIT_NAME in self.c_registers: @@ -352,6 +353,12 @@ def args(self, tree: Iterable[Token]) -> Iterator[List]: def creg(self, tree: List[Token]) -> None: name, size = _extract_reg(tree[0]) + if size > self.maxwidth: + raise QASMUnsupportedError( + f"Circuit contains classical register {name} of size {size} > " + f"{self.maxwidth}: try setting the `maxwidth` parameter to a larger " + "value." + ) self.c_registers[Reg(name)] = size def qreg(self, tree: List[Token]) -> None: @@ -612,7 +619,7 @@ def ifc(self, tree: Sequence) -> Iterable[CommandDict]: else: pred_val = cast(int, val) minval = 0 - maxval = (1 << 32) - 1 + maxval = (1 << self.maxwidth) - 1 if condition.op == RegWiseOp.LT: maxval = pred_val - 1 elif condition.op == RegWiseOp.GT: @@ -834,7 +841,7 @@ def gdef(self, tree: List) -> None: symbol_map = {sym: sym * pi for sym in map(Symbol, symbols)} rename_map = {Qubit.from_list(qb): Qubit("q", i) for i, qb in enumerate(args)} - new = CircuitTransformer() + new = CircuitTransformer(maxwidth=self.maxwidth) circ_dict = new.prog(child_iter) circ_dict["qubits"] = args @@ -850,7 +857,9 @@ def gdef(self, tree: List) -> None: comparison_circ = _get_gate_circuit( NOPARAM_EXTRA_COMMANDS[gate], qubit_args ) - if circuit_to_qasm_str(comparison_circ) == circuit_to_qasm_str(gate_circ): + if circuit_to_qasm_str( + comparison_circ, maxwidth=self.maxwidth + ) == circuit_to_qasm_str(gate_circ, maxwidth=self.maxwidth): existing_op = True elif gate in PARAM_EXTRA_COMMANDS: qubit_args = [ @@ -911,61 +920,110 @@ def prog(self, tree: Iterable) -> Dict[str, Any]: return outdict -parser = Lark( - grammar, - start="prog", - debug=False, - parser="lalr", - cache=True, - transformer=CircuitTransformer(), -) +def parser(maxwidth: int) -> Lark: + return Lark( + grammar, + start="prog", + debug=False, + parser="lalr", + cache=True, + transformer=CircuitTransformer(maxwidth=maxwidth), + ) + + +g_parser = None +g_maxwidth = 32 + + +def set_parser(maxwidth: int) -> None: + global g_parser, g_maxwidth + if (g_parser is None) or (g_maxwidth != maxwidth): # type: ignore + g_parser = parser(maxwidth=maxwidth) + g_maxwidth = maxwidth def circuit_from_qasm( - input_file: Union[str, "os.PathLike[Any]"], encoding: str = "utf-8" + input_file: Union[str, "os.PathLike[Any]"], + encoding: str = "utf-8", + maxwidth: int = 32, ) -> Circuit: - """A method to generate a tket Circuit from a qasm file""" + """A method to generate a tket Circuit from a qasm file. + + :param input_file: path to qasm file; filename must have ``.qasm`` extension + :param encoding: file encoding (default utf-8) + :param maxwidth: maximum allowed width of classical registers (default 32) + :return: pytket circuit + """ ext = os.path.splitext(input_file)[-1] if ext != ".qasm": raise TypeError("Can only convert .qasm files") with open(input_file, "r", encoding=encoding) as f: try: - circ = circuit_from_qasm_io(f) + circ = circuit_from_qasm_io(f, maxwidth=maxwidth) except QASMParseError as e: raise QASMParseError(e.msg, e.line, str(input_file)) return circ -def circuit_from_qasm_str(qasm_str: str) -> Circuit: - """A method to generate a tket Circuit from a qasm str""" - cast(CircuitTransformer, parser.options.transformer)._reset_context( +def circuit_from_qasm_str(qasm_str: str, maxwidth: int = 32) -> Circuit: + """A method to generate a tket Circuit from a qasm string. + + :param qasm_str: qasm string + :param maxwidth: maximum allowed width of classical registers (default 32) + :return: pytket circuit + """ + global g_parser + set_parser(maxwidth=maxwidth) + assert g_parser is not None + cast(CircuitTransformer, g_parser.options.transformer)._reset_context( reset_wasm=False ) - return Circuit.from_dict(parser.parse(qasm_str)) # type: ignore[arg-type] + return Circuit.from_dict(g_parser.parse(qasm_str)) # type: ignore[arg-type] -def circuit_from_qasm_io(stream_in: TextIO) -> Circuit: +def circuit_from_qasm_io(stream_in: TextIO, maxwidth: int = 32) -> Circuit: """A method to generate a tket Circuit from a qasm text stream""" - return circuit_from_qasm_str(stream_in.read()) + return circuit_from_qasm_str(stream_in.read(), maxwidth=maxwidth) def circuit_from_qasm_wasm( input_file: Union[str, "os.PathLike[Any]"], wasm_file: Union[str, "os.PathLike[Any]"], encoding: str = "utf-8", + maxwidth: int = 32, ) -> Circuit: - """A method to generate a tket Circuit from a qasm str and external WASM module.""" + """A method to generate a tket Circuit from a qasm string and external WASM module. + + :param input_file: path to qasm file; filename must have ``.qasm`` extension + :param wasm_file: path to WASM file containing functions used in qasm + :param encoding: encoding of qasm file (default utf-8) + :param maxwidth: maximum allowed width of classical registers (default 32) + :return: pytket circuit + """ + global g_parser wasm_module = WasmFileHandler(str(wasm_file)) - cast(CircuitTransformer, parser.options.transformer).wasm = wasm_module - return circuit_from_qasm(input_file, encoding=encoding) + set_parser(maxwidth=maxwidth) + assert g_parser is not None + cast(CircuitTransformer, g_parser.options.transformer).wasm = wasm_module + return circuit_from_qasm(input_file, encoding=encoding, maxwidth=maxwidth) -def circuit_to_qasm(circ: Circuit, output_file: str, header: str = "qelib1") -> None: +def circuit_to_qasm( + circ: Circuit, output_file: str, header: str = "qelib1", maxwidth: int = 32 +) -> None: """Convert a Circuit to QASM and write it to a file. - Note that this will not account for implicit qubit permutations in the Circuit.""" + Classical bits in the pytket circuit must be singly-indexed. + + Note that this will not account for implicit qubit permutations in the Circuit. + + :param circ: pytket circuit + :param output_file: path to output qasm file + :param header: qasm header (default "qelib1") + :param maxwidth: maximum allowed width of classical registers (default 32) + """ with open(output_file, "w") as out: - circuit_to_qasm_io(circ, out, header=header) + circuit_to_qasm_io(circ, out, header=header, maxwidth=maxwidth) def _filtered_qasm_str(qasm: str) -> str: @@ -993,11 +1051,24 @@ def _filtered_qasm_str(qasm: str) -> str: def circuit_to_qasm_str( - circ: Circuit, header: str = "qelib1", include_gate_defs: Optional[Set[str]] = None + circ: Circuit, + header: str = "qelib1", + include_gate_defs: Optional[Set[str]] = None, + maxwidth: int = 32, ) -> str: """Convert a Circuit to QASM and return the string. - Note that this will not account for implicit qubit permutations in the Circuit.""" + Classical bits in the pytket circuit must be singly-indexed. + + Note that this will not account for implicit qubit permutations in the Circuit. + + :param circ: pytket circuit + :param header: qasm header (default "qelib1") + :param output_file: path to output qasm file + :param include_gate_defs: optional set of gates to include + :param maxwidth: maximum allowed width of classical registers (default 32) + :return: qasm string + """ if any( circ.n_gates_of_type(typ) for typ in ( @@ -1014,7 +1085,14 @@ def circuit_to_qasm_str( "Complex classical gates not supported with qelib1: try converting with " "`header=hqslib1`" ) - qasm_writer = QasmWriter(circ.qubits, circ.bits, header, include_gate_defs) + if any(bit.index[0] >= maxwidth for bit in circ.bits): + raise QASMUnsupportedError( + f"Circuit contains a classical register larger than {maxwidth}: try " + "setting the `maxwidth` parameter to a higher value." + ) + qasm_writer = QasmWriter( + circ.qubits, circ.bits, header, include_gate_defs, maxwidth + ) for command in circ: assert isinstance(command, Command) qasm_writer.add_op(command.op, command.args) @@ -1036,8 +1114,8 @@ def _retrieve_registers( } -def _parse_range(minval: int, maxval: int) -> Tuple[str, int]: - REGMAX = (1 << 32) - 1 +def _parse_range(minval: int, maxval: int, maxwidth: int) -> Tuple[str, int]: + REGMAX = (1 << maxwidth) - 1 if minval == maxval: return ("==", minval) elif minval == 0: @@ -1140,8 +1218,10 @@ def __init__( bits: List[Bit], header: str = "qelib1", include_gate_defs: Optional[Set[str]] = None, + maxwidth: int = 32, ): self.header = header + self.maxwidth = maxwidth self.added_gate_definitions: Set[str] = set() self.include_module_gates = {"measure", "reset", "barrier"} self.include_module_gates.update( @@ -1243,7 +1323,9 @@ def write_gate_definition( gate_circ = _get_gate_circuit(optype, qubit_args, symbols) # write circuit to qasm self.strings.add_string( - circuit_to_qasm_str(gate_circ, self.header, self.include_gate_defs) + circuit_to_qasm_str( + gate_circ, self.header, self.include_gate_defs, self.maxwidth + ) ) self.strings.add_string("}\n") @@ -1261,7 +1343,7 @@ def mark_as_written(self, written_variable: str) -> None: self.range_preds.remove(hit) def add_range_predicate(self, op: RangePredicateOp, args: List[Bit]) -> None: - comparator, value = _parse_range(op.lower, op.upper) + comparator, value = _parse_range(op.lower, op.upper, self.maxwidth) if (not hqs_header(self.header)) and comparator != "==": raise QASMUnsupportedError( "OpenQASM conditions must be on a register's fixed value." @@ -1440,7 +1522,9 @@ def add_custom_gate(self, op: CustomGate, args: List[UnitID]) -> None: gate_circ.rename_units(dict(zip(gate_circ.qubits, args))) gate_circ.symbol_substitution(dict(zip(op.gate.args, op.params))) self.strings.add_string( - circuit_to_qasm_str(gate_circ, self.header, self.include_gate_defs) + circuit_to_qasm_str( + gate_circ, self.header, self.include_gate_defs, self.maxwidth + ) ) else: opstr = op.gate.name @@ -1575,10 +1659,22 @@ def circuit_to_qasm_io( stream_out: TextIO, header: str = "qelib1", include_gate_defs: Optional[Set[str]] = None, + maxwidth: int = 32, ) -> None: """Convert a Circuit to QASM and write to a text stream. - Note that this will not account for implicit qubit permutations in the Circuit.""" + Classical bits in the pytket circuit must be singly-indexed. + + Note that this will not account for implicit qubit permutations in the Circuit. + + :param circ: pytket circuit + :param stream_out: text stream to be written to + :param header: qasm header (default "qelib1") + :param include_gate_defs: optional set of gates to include + :param maxwidth: maximum allowed width of classical registers (default 32) + """ stream_out.write( - circuit_to_qasm_str(circ, header=header, include_gate_defs=include_gate_defs) + circuit_to_qasm_str( + circ, header=header, include_gate_defs=include_gate_defs, maxwidth=maxwidth + ) ) diff --git a/pytket/tests/qasm_test.py b/pytket/tests/qasm_test.py index 0c6817bc6a..12e0d6d1fc 100644 --- a/pytket/tests/qasm_test.py +++ b/pytket/tests/qasm_test.py @@ -605,8 +605,8 @@ def test_scratch_bits_filtering() -> None: creg a[1]; creg b[1]; creg d[2]; - creg {_TEMP_BIT_NAME}[100]; - creg {_TEMP_BIT_NAME}_1[100]; + creg {_TEMP_BIT_NAME}[32]; + creg {_TEMP_BIT_NAME}_1[32]; {_TEMP_BIT_NAME}[0] = (a[0] ^ b[0]); if({_TEMP_BIT_NAME}[0]==1) x q[0]; """ @@ -818,6 +818,25 @@ def test_classical_assignment_order_1() -> None: assert qasm == correct_qasm +def test_max_reg_width() -> None: + circ_in = Circuit(1, 33) + circ_in.H(0).Measure(0, 32) + with pytest.raises(QASMUnsupportedError): + circuit_to_qasm_str(circ_in) + qasm_out = circuit_to_qasm_str(circ_in, maxwidth=64) + assert "measure q[0] -> c[32];" in qasm_out + qasm_in = """OPENQASM 2.0; +include "qelib1.inc"; +qreg q[1]; +creg c[33]; +h q[0]; +measure q[0] -> c[32];""" + with pytest.raises(QASMUnsupportedError): + circuit_from_qasm_str(qasm_in) + circ_out = circuit_from_qasm_str(qasm_in, maxwidth=64) + assert len(circ_out.bits) == 33 + + if __name__ == "__main__": test_qasm_correct() test_qasm_qubit() From 7220b48ca061734619559936dd4bcfd8817cc157 Mon Sep 17 00:00:00 2001 From: jake-arkinstall-quantinuum <111498186+jake-arkinstall-quantinuum@users.noreply.github.com> Date: Fri, 20 Oct 2023 11:30:56 +0100 Subject: [PATCH 02/36] [infra] Add nix support (#918) --- .github/workflows/build-with-nix.yml | 20 ++++ .gitignore | 1 + README.md | 6 ++ flake.lock | 60 ++++++++++++ flake.nix | 31 ++++++ libs/tkassert/CMakeLists.txt | 7 +- libs/tklog/CMakeLists.txt | 8 +- libs/tkrng/CMakeLists.txt | 7 +- libs/tktokenswap/CMakeLists.txt | 8 +- libs/tkwsm/CMakeLists.txt | 8 +- nix-support/README.md | 33 +++++++ nix-support/example-flake-project/README.md | 18 ++++ nix-support/example-flake-project/flake.nix | 45 +++++++++ .../example-flake-project/pyproject.toml | 9 ++ .../src/examples/__init__.py | 0 .../src/examples/basic_circuits.py | 22 +++++ nix-support/includes-fixup.nix | 7 ++ nix-support/libs.nix | 45 +++++++++ nix-support/pytket.nix | 94 +++++++++++++++++++ nix-support/symengine.nix | 14 +++ nix-support/symengine.patch | 21 +++++ nix-support/third-party-python-packages.nix | 44 +++++++++ nix-support/tket.nix | 44 +++++++++ pytket/CMakeLists.txt | 3 + pytket/conanfile.py | 2 +- pytket/setup.py | 32 ++++++- tket/CMakeLists.txt | 8 +- tket/conanfile.py | 2 +- tket/test/src/test_PhasePolynomials.cpp | 2 +- 29 files changed, 591 insertions(+), 10 deletions(-) create mode 100644 .github/workflows/build-with-nix.yml create mode 100644 flake.lock create mode 100644 flake.nix create mode 100644 nix-support/README.md create mode 100644 nix-support/example-flake-project/README.md create mode 100644 nix-support/example-flake-project/flake.nix create mode 100644 nix-support/example-flake-project/pyproject.toml create mode 100644 nix-support/example-flake-project/src/examples/__init__.py create mode 100644 nix-support/example-flake-project/src/examples/basic_circuits.py create mode 100644 nix-support/includes-fixup.nix create mode 100644 nix-support/libs.nix create mode 100644 nix-support/pytket.nix create mode 100644 nix-support/symengine.nix create mode 100644 nix-support/symengine.patch create mode 100644 nix-support/third-party-python-packages.nix create mode 100644 nix-support/tket.nix diff --git a/.github/workflows/build-with-nix.yml b/.github/workflows/build-with-nix.yml new file mode 100644 index 0000000000..091f2a9671 --- /dev/null +++ b/.github/workflows/build-with-nix.yml @@ -0,0 +1,20 @@ +name: build with nix +on: + schedule: + # 01:00 every Sunday morning + - cron: '0 1 * * 0' + workflow_dispatch: {} +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true +jobs: + build_and_test: + strategy: + matrix: + os: ['ubuntu-22.04', 'macos-12'] + runs-on: ${{matrix.os}} + steps: + - uses: actions/checkout@v3 + - uses: cachix/install-nix-action@v20 + - name: Build and test tket + run: nix flake check diff --git a/.gitignore b/.gitignore index e3a61997e0..90eb7af76d 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ *.egg-info *.o *.so +*.swp .cache .eggs .hypothesis diff --git a/README.md b/README.md index 14e928a27c..e3facaa256 100644 --- a/README.md +++ b/README.md @@ -124,6 +124,12 @@ building and testing tket as a standalone C++ library. See the [README](pytket/README.md) in the `pytket` directory for instructions on building and testing pytket. +### Nix Support + +Tket and pytket are available as a Nix flake. See the [README](nix-support/README.md) +in the `nix-support` directory for instructions on building and testing tket and pytket +through Nix, and on how to use it within a Nix project. + ## API documentation The `tket` (C++) API documentation (generated with `doxygen`, and still rather diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000000..4ba12b3083 --- /dev/null +++ b/flake.lock @@ -0,0 +1,60 @@ +{ + "nodes": { + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1697158538, + "narHash": "sha256-TR02XPre2EcwU1kT4WXZWJOBi/B8C7P1xoywOUGkdDk=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "ee176b5fbb680864dcf80f9ca3f6f134d81331d8", + "type": "github" + }, + "original": { + "owner": "nixos", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000000..a82c8cf73d --- /dev/null +++ b/flake.nix @@ -0,0 +1,31 @@ +{ + description = "Tket Quantum SDK"; + inputs.nixpkgs.url = "github:nixos/nixpkgs"; + inputs.flake-utils.url = "github:numtide/flake-utils"; + outputs = { self, nixpkgs, flake-utils }: + flake-utils.lib.eachDefaultSystem (system: + let + pkgs = import nixpkgs { + inherit system; + overlays = [ + (import ./nix-support/libs.nix) + (import ./nix-support/symengine.nix) + (import ./nix-support/tket.nix) + (import ./nix-support/third-party-python-packages.nix) + (import ./nix-support/pytket.nix) + ]; + }; + in { + packages = { + tket = pkgs.tket; + pytket = pkgs.pytket; + }; + devShells = { + default = pkgs.mkShell { buildInputs = [ pkgs.tket pkgs.pytket ]; }; + }; + checks = { + tket-tests = pkgs.run-tket-tests; + pytket-tests = pkgs.pytket; + }; + }); +} diff --git a/libs/tkassert/CMakeLists.txt b/libs/tkassert/CMakeLists.txt index cd38a7f271..b65ef57dd5 100644 --- a/libs/tkassert/CMakeLists.txt +++ b/libs/tkassert/CMakeLists.txt @@ -22,6 +22,8 @@ find_package(tklog CONFIG REQUIRED) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_EXTENSIONS OFF) +option(INSTALL_NAME_DIR "Set the install name dir for the library to @loader_path for Apple targets" ON) + if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() @@ -35,7 +37,7 @@ if(WIN32) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS yes) endif() -if(APPLE) +if(APPLE AND INSTALL_NAME_DIR) set(CMAKE_INSTALL_NAME_DIR "@loader_path") set(CMAKE_BUILD_WITH_INSTALL_NAME_DIR ON) endif() @@ -64,6 +66,9 @@ target_include_directories(tkassert PUBLIC $ $) target_link_libraries(tkassert PRIVATE tklog::tklog) +IF(APPLE) + target_link_libraries(tkassert PRIVATE "-flat_namespace") +ENDIF() target_sources(tkassert PRIVATE src/AssertMessage.cpp diff --git a/libs/tklog/CMakeLists.txt b/libs/tklog/CMakeLists.txt index 8b570edce7..2366c0f895 100644 --- a/libs/tklog/CMakeLists.txt +++ b/libs/tklog/CMakeLists.txt @@ -20,6 +20,8 @@ list(INSERT CMAKE_MODULE_PATH 0 ${CMAKE_SOURCE_DIR}/cmake) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_EXTENSIONS OFF) +option(INSTALL_NAME_DIR "Set the install name dir for the library to @loader_path for Apple targets" ON) + if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() @@ -33,7 +35,7 @@ if(WIN32) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS yes) endif() -if(APPLE) +if(APPLE AND INSTALL_NAME_DIR) set(CMAKE_INSTALL_NAME_DIR "@loader_path") set(CMAKE_BUILD_WITH_INSTALL_NAME_DIR ON) endif() @@ -62,6 +64,10 @@ target_include_directories(tklog PUBLIC $ $) +IF(APPLE) + target_link_libraries(tklog PRIVATE "-flat_namespace") +ENDIF() + target_sources(tklog PRIVATE src/TketLog.cpp PUBLIC FILE_SET HEADERS diff --git a/libs/tkrng/CMakeLists.txt b/libs/tkrng/CMakeLists.txt index d7de653944..9f81d6a90f 100644 --- a/libs/tkrng/CMakeLists.txt +++ b/libs/tkrng/CMakeLists.txt @@ -20,6 +20,8 @@ list(INSERT CMAKE_MODULE_PATH 0 ${CMAKE_SOURCE_DIR}/cmake) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_EXTENSIONS OFF) +option(INSTALL_NAME_DIR "Set the install name dir for the library to @loader_path for Apple targets" ON) + if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() @@ -33,7 +35,7 @@ if(WIN32) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS yes) endif() -if(APPLE) +if(APPLE AND INSTALL_NAME_DIR) set(CMAKE_INSTALL_NAME_DIR "@loader_path") set(CMAKE_BUILD_WITH_INSTALL_NAME_DIR ON) endif() @@ -62,6 +64,9 @@ target_include_directories(tkrng PUBLIC $ $) +IF(APPLE) + target_link_libraries(tkrng PRIVATE "-flat_namespace") +ENDIF() target_sources(tkrng PRIVATE src/RNG.cpp PUBLIC FILE_SET HEADERS diff --git a/libs/tktokenswap/CMakeLists.txt b/libs/tktokenswap/CMakeLists.txt index fa9a8a21b9..e9e50624ed 100644 --- a/libs/tktokenswap/CMakeLists.txt +++ b/libs/tktokenswap/CMakeLists.txt @@ -25,6 +25,8 @@ find_package(Boost CONFIG REQUIRED) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_EXTENSIONS OFF) +option(INSTALL_NAME_DIR "Set the install name dir for the library to @loader_path for Apple targets" ON) + if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() @@ -38,7 +40,7 @@ if(WIN32) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS yes) endif() -if(APPLE) +if(APPLE AND INSTALL_NAME_DIR) set(CMAKE_INSTALL_NAME_DIR "@loader_path") set(CMAKE_BUILD_WITH_INSTALL_NAME_DIR ON) endif() @@ -71,6 +73,10 @@ target_link_libraries(tktokenswap PRIVATE tkassert::tkassert) target_link_libraries(tktokenswap PRIVATE tkrng::tkrng) target_link_libraries(tktokenswap PRIVATE Boost::headers) +IF(APPLE) + target_link_libraries(tktokenswap PRIVATE "-flat_namespace") +ENDIF() + target_sources(tktokenswap PRIVATE src/BestFullTsa.cpp diff --git a/libs/tkwsm/CMakeLists.txt b/libs/tkwsm/CMakeLists.txt index e37c1ff6cf..d889aa887b 100644 --- a/libs/tkwsm/CMakeLists.txt +++ b/libs/tkwsm/CMakeLists.txt @@ -25,6 +25,8 @@ find_package(Boost CONFIG REQUIRED) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_EXTENSIONS OFF) +option(INSTALL_NAME_DIR "Set the install name dir for the library to @loader_path for Apple targets" ON) + if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() @@ -38,7 +40,7 @@ if(WIN32) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS yes) endif() -if(APPLE) +if(APPLE AND INSTALL_NAME_DIR) set(CMAKE_INSTALL_NAME_DIR "@loader_path") set(CMAKE_BUILD_WITH_INSTALL_NAME_DIR ON) endif() @@ -69,6 +71,9 @@ target_include_directories(tkwsm PUBLIC target_link_libraries(tkwsm PRIVATE tkassert::tkassert) target_link_libraries(tkwsm PRIVATE tkrng::tkrng) target_link_libraries(tkwsm PRIVATE Boost::headers) +IF(APPLE) + target_link_libraries(tkwsm PRIVATE "-flat_namespace") +ENDIF() target_sources(tkwsm PRIVATE @@ -157,6 +162,7 @@ target_sources(tkwsm include/tkwsm/WeightPruning/WeightNogoodDetectorManager.hpp ) + include(GNUInstallDirs) set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/tkwsm) diff --git a/nix-support/README.md b/nix-support/README.md new file mode 100644 index 0000000000..0721a5e8ff --- /dev/null +++ b/nix-support/README.md @@ -0,0 +1,33 @@ +# Nix support for tket and pytket + +Tket exposes a Nix flake that you can build, test and use within a Nix environment. +To build and test tket and pytket on your local system, you can run + +``` +$ nix flake check github:CQCL/tket +``` + +This will take some time, as it requires the building of a patched symengine, +the compilation of tket and tket tests, and the compilation of pytket's dependencies, +before testing. + +You can enter a development environment with tket and pytket available +with use of `nix develop`. For example, + +``` +$ nix develop github:CQCL/tket + +$ python3 +Python 3.10.12 (main, Jun 6 2023, 22:43:10) [GCC 12.2.0] on linux +Type "help", "copyright", "credits" or "license" for more information. +>>> from pytket import Circuit +>>> circuit = Circuit(5) +>>> circuit.X(1) +[X q[1]; ] +>>> circuit.X(2) +[X q[1]; X q[2]; ] +``` + +You can also use tket and pytket within your own flake project. +An example of such a project is given in the [example-flake-project](example-flake-project) +directory. diff --git a/nix-support/example-flake-project/README.md b/nix-support/example-flake-project/README.md new file mode 100644 index 0000000000..d0c3737043 --- /dev/null +++ b/nix-support/example-flake-project/README.md @@ -0,0 +1,18 @@ +# Example flake project + +In this example, we create a [flake.nix](flake.nix) file that tells Nix +where to fetch nixpkgs, flake-utils and tket. It also builds an example +application, using [pyproject.toml](pyproject.toml) and the +[src](src) directory. This application [exposes](src/examples/basic_circuits.py) +two scripts: `entanglement` and `teleport`, that set up trivial circuits +and display them in your browser. + +To run these scripts, simply run the following commands from within this directory: + +``` +nix run .#entanglement +``` +and +``` +nix run .#teleport +``` diff --git a/nix-support/example-flake-project/flake.nix b/nix-support/example-flake-project/flake.nix new file mode 100644 index 0000000000..747f4d462e --- /dev/null +++ b/nix-support/example-flake-project/flake.nix @@ -0,0 +1,45 @@ +{ + inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05"; + inputs.flake-utils.url = "github:numtide/flake-utils"; + # fetch tket from github + inputs.tket.url = "github:CQCL/tket"; + + outputs = { self, nixpkgs, flake-utils, tket }: + flake-utils.lib.eachDefaultSystem (system: + let + pkgs = import nixpkgs { + inherit system; + overlays = [ + (self: super: { + # add tket and pytket to pkgs for later use + tket = tket.packages.${system}.tket; + pytket = tket.packages.${system}.pytket; + }) + ]; + }; + examples = pkgs.python3Packages.buildPythonApplication { + pname = "examples"; + version = "0.0.1"; + format = "pyproject"; + # copy pyproject.toml and src to the build directory + unpackPhase = '' + cp ${./pyproject.toml} pyproject.toml + cp -r ${./src} src + chmod 700 src; + ''; + # provide pytket as a dependency + propagatedBuildInputs = [ pkgs.pytket ]; + }; + in { + apps = { + entanglement = { + type = "app"; + program = "${examples}/bin/entanglement"; + }; + teleport = { + type = "app"; + program = "${examples}/bin/teleport"; + }; + }; + }); +} diff --git a/nix-support/example-flake-project/pyproject.toml b/nix-support/example-flake-project/pyproject.toml new file mode 100644 index 0000000000..c5b56a7063 --- /dev/null +++ b/nix-support/example-flake-project/pyproject.toml @@ -0,0 +1,9 @@ +[project] +name = "examples" +version = "0.0.1" +dependencies = ["pytket"] + +[project.scripts] +entanglement = "examples.basic_circuits:entanglement_circuit" +teleport = "examples.basic_circuits:teleport_circuit" + diff --git a/nix-support/example-flake-project/src/examples/__init__.py b/nix-support/example-flake-project/src/examples/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/nix-support/example-flake-project/src/examples/basic_circuits.py b/nix-support/example-flake-project/src/examples/basic_circuits.py new file mode 100644 index 0000000000..9d2ddd3cb1 --- /dev/null +++ b/nix-support/example-flake-project/src/examples/basic_circuits.py @@ -0,0 +1,22 @@ +from pytket import Circuit +from pytket.circuit.display import get_circuit_renderer + + +def entanglement_circuit(): + circuit = Circuit(2) + circuit.H(0) + circuit.CX(0, 1) + circuit.measure_all() + renderer = get_circuit_renderer() + renderer.view_browser(circuit) + + +def teleport_circuit(): + circuit = Circuit(3) + circuit.H(0) + circuit.CX(0, 1) + circuit.CX(1, 2) + circuit.H(0) + circuit.measure_all() + renderer = get_circuit_renderer() + renderer.view_browser(circuit) diff --git a/nix-support/includes-fixup.nix b/nix-support/includes-fixup.nix new file mode 100644 index 0000000000..b9a1fa43d2 --- /dev/null +++ b/nix-support/includes-fixup.nix @@ -0,0 +1,7 @@ +'' + # fix bogus include paths + # trick found here: https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/crc32c/default.nix + for f in $(find $out/lib/cmake -name '*.cmake'); do + substituteInPlace "$f" --replace "\''${_IMPORT_PREFIX}/$out/include" "\''${_IMPORT_PREFIX}/include" + done +'' diff --git a/nix-support/libs.nix b/nix-support/libs.nix new file mode 100644 index 0000000000..59f1f65524 --- /dev/null +++ b/nix-support/libs.nix @@ -0,0 +1,45 @@ +self: super: +let + default-flags = [ "-DBUILD_SHARED_LIBS=ON" "-DINSTALL_NAME_DIR=OFF" ]; + postFixup = import ./includes-fixup.nix; +in { + tklog = super.stdenv.mkDerivation { + name = "tklog"; + src = ../libs/tklog; + nativeBuildInputs = [ super.cmake ]; + cmakeFlags = default-flags; + inherit postFixup; + }; + tkrng = super.stdenv.mkDerivation { + name = "tkrng"; + src = ../libs/tkrng; + nativeBuildInputs = [ super.cmake ]; + cmakeFlags = default-flags; + inherit postFixup; + }; + tkassert = super.stdenv.mkDerivation { + name = "tkassert"; + src = ../libs/tkassert; + nativeBuildInputs = [ super.cmake ]; + buildInputs = [ self.tklog ]; + cmakeFlags = default-flags; + inherit postFixup; + }; + tktokenswap = super.stdenv.mkDerivation { + name = "tktokenswap"; + src = ../libs/tktokenswap; + nativeBuildInputs = [ super.cmake super.boost ]; + buildInputs = [ self.tklog self.tkassert self.tkrng ]; + cmakeFlags = default-flags; + inherit postFixup; + }; + tkwsm = super.stdenv.mkDerivation { + name = "tkwsm"; + src = ../libs/tkwsm; + nativeBuildInputs = [ super.cmake super.boost ]; + buildInputs = [ self.tklog self.tkassert self.tkrng ]; + cmakeFlags = default-flags; + inherit postFixup; + }; + tklibs = [ self.tklog self.tkrng self.tkassert self.tktokenswap self.tkwsm ]; +} diff --git a/nix-support/pytket.nix b/nix-support/pytket.nix new file mode 100644 index 0000000000..d99d90b98f --- /dev/null +++ b/nix-support/pytket.nix @@ -0,0 +1,94 @@ +self: super: +let + config_contents = builtins.readFile ../pytket/docs/conf.py; + versions = + builtins.match ''.*release *= *["']([^"']+)["'].*'' config_contents; + version = if builtins.length versions > 0 then + builtins.elemAt versions 0 + else + "0.0.0"; + + jsonschema-4180 = super.python3Packages.jsonschema.overrideAttrs (_: rec { + version = "4.18.0"; + src = super.fetchPypi { + pname = "jsonschema"; + version = "4.18.0"; + hash = sha256:jK9bV6mQqY6bOYMu88s1wXb+MxQUJStuGyb9WGb4kaQ=; + }; + }); +in { + binders = super.stdenv.mkDerivation { + name = "binders"; + nativeBuildInputs = [ + super.cmake + super.pkg-config + super.python3Packages.pybind11 + super.pybind11_json + ]; + cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ]; + propagatedBuildInputs = [ + super.tket + ]; + unpackPhase = '' + cp -r ${../pytket/binders} binders; + cp ${../pytket/CMakeLists.txt} CMakeLists.txt; + ''; + }; + pytket = super.python3.pkgs.buildPythonPackage { + name = "pytket"; + inherit version; + propagatedBuildInputs = with super.python3.pkgs; [ + self.binders + super.lark-parser + super.types-pkg_resources + super.qwasm + graphviz + networkx + jinja2 + sympy + scipy + numpy + typing-extensions + ]; + + unpackPhase = '' + cp -r ${../pytket/pytket} pytket; + cp -r ${../pytket/setup.py} setup.py; + cp -r ${../pytket/package.md} package.md; + cp -r ${../schemas} schemas; + mkdir test_root; + cp -r ${../pytket/tests} test_root/tests; + ''; + preBuild = '' + export USE_NIX=1; + ''; + postFixup = '' + # hardcode the version extracted from docs/conf.py. + echo '__version__ = "${version}"' > $out/lib/python3.10/site-packages/pytket/_version.py; + + # these directories aren't copied by setup.py, so we do it manually + cp -r ${ + ../pytket/pytket/circuit/display/js + } $out/lib/python3.10/site-packages/pytket/circuit/display/js; + cp -r ${ + ../pytket/pytket/circuit/display/static + } $out/lib/python3.10/site-packages/pytket/circuit/display/static; + ''; + checkInputs = with super.python3.pkgs; [ + pytest + pytest-cov + pytest-benchmark + py + hypothesis + docker + opt-einsum + ] ++ [jsonschema-4180]; + checkPhase = '' + export HOME=$TMPDIR; + chmod 700 $TMPDIR/test_root/tests/qasm_test_files; + cd test_root/tests; + python -m pytest -s . + ''; + doCheck = true; + }; +} diff --git a/nix-support/symengine.nix b/nix-support/symengine.nix new file mode 100644 index 0000000000..7b74768a47 --- /dev/null +++ b/nix-support/symengine.nix @@ -0,0 +1,14 @@ +self: super: { + # symengine in nixpkgs is built as a static library, and doesn't expose + # propagated inputs in its pkgconfig file. This is a workaround to build + # it as a shared library, and to expose the propagated inputs. + symengine = super.symengine.overrideAttrs (old: { + patches = [ ./symengine.patch ]; + cmakeFlags = old.cmakeFlags ++ [ + "-DBUILD_TESTS=OFF" + "-DBUILD_BENCHMARKS=OFF" + "-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=yes" + ]; + propagatedBuildInputs = [ super.flint super.gmp super.libmpc super.mpfr ]; + }); +} diff --git a/nix-support/symengine.patch b/nix-support/symengine.patch new file mode 100644 index 0000000000..b6e130f0f2 --- /dev/null +++ b/nix-support/symengine.patch @@ -0,0 +1,21 @@ +diff --git a/cmake/SymEngineConfig.cmake.in b/cmake/SymEngineConfig.cmake.in +index dbfc80ba..d3a390b8 100644 +--- a/cmake/SymEngineConfig.cmake.in ++++ b/cmake/SymEngineConfig.cmake.in +@@ -107,11 +107,11 @@ endif() + + list(REMOVE_DUPLICATES SYMENGINE_INCLUDE_DIRS) + +-foreach(LIB "@SYMENGINE_TARGETS@") +- # Remove linking of dependencies to later add them as targets +- set_target_properties(${LIB} PROPERTIES IMPORTED_LINK_INTERFACE_LIBRARIES_RELEASE "") +- set_target_properties(${LIB} PROPERTIES IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG "") +-endforeach() ++#foreach(LIB "@SYMENGINE_TARGETS@") ++# set_target_properties(${LIB} PROPERTIES IMPORTED_LINK_INTERFACE_LIBRARIES_RELEASE "") ++# set_target_properties(${LIB} PROPERTIES IMPORTED_LINK_INTERFACE_LIBRARIES_DEBUG "") ++#endforeach() ++set_target_properties(symengine PROPERTIES INTERFACE_LINK_LIBRARIES "${SYMENGINE_LIBRARIES}") + + set(SYMENGINE_LIBRARIES @SYMENGINE_TARGETS@ ${SYMENGINE_LIBRARIES}) + set(SYMENGINE_BUILD_TYPE "@CMAKE_BUILD_TYPE@") diff --git a/nix-support/third-party-python-packages.nix b/nix-support/third-party-python-packages.nix new file mode 100644 index 0000000000..b462a4c0b7 --- /dev/null +++ b/nix-support/third-party-python-packages.nix @@ -0,0 +1,44 @@ +self: super: { + pybind11_json = super.stdenv.mkDerivation { + name = "pybind11_json"; + src = super.fetchFromGitHub { + owner = "pybind"; + repo = "pybind11_json"; + rev = "0.2.13"; + sha256 = "sha256:Kl/QflV2bBoH72/LW03K8JDlhBF+DYYXL47A5s1nmTw="; + }; + nativeBuildInputs = [ super.cmake ]; + buildInputs = [ super.python3Packages.pybind11 super.nlohmann_json ]; + }; + qwasm = super.python3.pkgs.buildPythonPackage { + name = "qwasm"; + src = super.fetchFromGitHub { + owner = "CQCL"; + repo = "qwasm"; + rev = "35ebe1e2551449d97b9948a600f8d2e4d7474df6"; + sha256 = "sha256:g/QA5CpAR3exRDgVQMnXGIH8bEGtwGFBjjSblbdXRkU="; + }; + }; + lark-parser = super.python3.pkgs.buildPythonPackage { + pname = "lark-parser"; + version = "0.12.0"; + src = super.fetchFromGitHub { + owner = "lark-parser"; + repo = "lark"; + rev = "refs/tags/0.12.0"; + hash = "sha256-zcMGCn3ixD3dJg3GlC/ijs+U1JN1BodHLTXZc/5UR7Y="; + }; + doCheck = false; + }; + types-pkg_resources = let + pname = "types-pkg_resources"; + version = "0.1.3"; + in super.python3.pkgs.buildPythonPackage { + inherit pname version; + src = super.fetchPypi { + inherit pname version; + sha256 = "sha256:g0qbjT2+o0NWL9mdXTNZpyb2v503M7zNK08wlvurna4="; + }; + doCheck = false; + }; +} diff --git a/nix-support/tket.nix b/nix-support/tket.nix new file mode 100644 index 0000000000..5dc0fa43a2 --- /dev/null +++ b/nix-support/tket.nix @@ -0,0 +1,44 @@ +self: super: +let + postFixup = import ./includes-fixup.nix; + # only import necessary directories so that changes to unrelated + # files inside of ../tket won't trigger a rebuild + tket-without-tests = super.stdenv.mkDerivation { + name = "tket-sources"; + phases = [ "installPhase" ]; + installPhase = '' + mkdir -p $out; + cp -r ${../tket/cmake} $out/cmake; + cp -r ${../tket/include} $out/include; + cp -r ${../tket/src} $out/src; + cp -r ${../tket/CMakeLists.txt} $out/CMakeLists.txt; + ''; + }; +in { + tket = super.stdenv.mkDerivation { + name = "tket"; + src = tket-without-tests; + nativeBuildInputs = [ super.cmake ]; + propagatedBuildInputs = super.tklibs + ++ [ super.boost super.symengine super.eigen super.nlohmann_json ]; + cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" "-DINSTALL_NAME_DIR=OFF" ]; + inherit postFixup; + }; + + tket-tests = super.stdenv.mkDerivation { + name = "tket-tests"; + src = ../tket/test; + nativeBuildInputs = [ super.cmake super.pkg-config ]; + buildInputs = [ self.tket super.catch2_3 ]; + }; + run-tket-tests = super.stdenv.mkDerivation { + name = "run-tket-tests"; + stages = [ "build" ]; + buildCommand = '' + pushd ${self.tket-tests}/bin; + mkdir -p $out; + ./test-tket > $out/test_result.txt; + popd; + ''; + }; +} diff --git a/pytket/CMakeLists.txt b/pytket/CMakeLists.txt index 3042b08f6e..a5f46ca430 100644 --- a/pytket/CMakeLists.txt +++ b/pytket/CMakeLists.txt @@ -92,6 +92,9 @@ list(APPEND lib_deps if (WIN32) list(APPEND lib_deps bcrypt) # For boost::uuid endif() +if (APPLE) + list(APPEND lib_deps "-flat_namespace") +endif() set(HEADER_FILES binders/include/add_gate.hpp diff --git a/pytket/conanfile.py b/pytket/conanfile.py index 71b0000b0b..2fdd615d19 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,7 +32,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.59@tket/stable") + self.requires("tket/1.2.60@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("tkassert/0.3.3@tket/stable") diff --git a/pytket/setup.py b/pytket/setup.py index c16bd7fd21..b26819b448 100755 --- a/pytket/setup.py +++ b/pytket/setup.py @@ -123,9 +123,39 @@ def run(self): shutil.copy(libpath, extdir) +class NixBuild(build_ext): + def run(self): + self.check_extensions_list(self.extensions) + extdir = os.path.abspath( + os.path.dirname(self.get_ext_fullpath(self.extensions[0].name)) + ) + if os.path.exists(extdir): + shutil.rmtree(extdir) + os.makedirs(extdir) + + nix_ldflags = os.environ["NIX_LDFLAGS"].split() + build_inputs = os.environ["propagatedBuildInputs"].split() + + binders = [f"{l}/lib" for l in build_inputs if "-binders" in l] + for binder in binders: + for lib in os.listdir(binder): + libpath = os.path.join(binder, lib) + if not os.path.isdir(libpath): + shutil.copy(libpath, extdir) + + plat_name = os.getenv("WHEEL_PLAT_NAME") +def get_build_ext(): + if os.getenv("USE_NIX"): + return NixBuild + elif os.getenv("NO_CONAN"): + return CMakeBuild + else: + return ConanBuild + + class bdist_wheel(_bdist_wheel): def finalize_options(self): _bdist_wheel.finalize_options(self) @@ -173,7 +203,7 @@ def finalize_options(self): CMakeExtension("pytket._tket.{}".format(binder)) for binder in binders ], cmdclass={ - "build_ext": CMakeBuild if os.getenv("NO_CONAN") else ConanBuild, + "build_ext": get_build_ext(), "bdist_wheel": bdist_wheel, }, classifiers=[ diff --git a/tket/CMakeLists.txt b/tket/CMakeLists.txt index 947ec51d23..69d9cee448 100644 --- a/tket/CMakeLists.txt +++ b/tket/CMakeLists.txt @@ -30,6 +30,8 @@ find_package(tkwsm CONFIG REQUIRED) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_EXTENSIONS OFF) +option(INSTALL_NAME_DIR "Set the install name dir for the library to @loader_path for Apple targets" ON) + if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Release) endif() @@ -62,7 +64,7 @@ endif() if(WIN32) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS yes) -elseif(APPLE) +elseif(APPLE AND INSTALL_NAME_DIR) # set correct install_name set(CMAKE_INSTALL_NAME_DIR "@loader_path") set(CMAKE_BUILD_WITH_INSTALL_NAME_DIR ON) @@ -84,6 +86,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=maybe-uninitialized") endif() + add_library(tket) set(PROFILE_COVERAGE no CACHE BOOL "Build library with profiling for test coverage") @@ -114,6 +117,9 @@ target_link_libraries(tket PRIVATE tkassert::tkassert) target_link_libraries(tket PRIVATE tkrng::tkrng) target_link_libraries(tket PRIVATE tktokenswap::tktokenswap) target_link_libraries(tket PRIVATE tkwsm::tkwsm) +IF(APPLE) + target_link_libraries(tket PRIVATE "-flat_namespace") +ENDIF() target_sources(tket PRIVATE diff --git a/tket/conanfile.py b/tket/conanfile.py index 12a1adb205..6811687523 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.59" + version = "1.2.60" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" diff --git a/tket/test/src/test_PhasePolynomials.cpp b/tket/test/src/test_PhasePolynomials.cpp index e4d4e3cd35..0247e43cc9 100644 --- a/tket/test/src/test_PhasePolynomials.cpp +++ b/tket/test/src/test_PhasePolynomials.cpp @@ -15,12 +15,12 @@ #include #include "CircuitsForTesting.hpp" -#include "Predicates/PassLibrary.hpp" #include "testutil.hpp" #include "tket/Circuit/Boxes.hpp" #include "tket/Circuit/CircUtils.hpp" #include "tket/Converters/PhasePoly.hpp" #include "tket/Predicates/CompilerPass.hpp" +#include "tket/Predicates/PassLibrary.hpp" #include "tket/Transformations/Decomposition.hpp" #include "tket/Transformations/Rebase.hpp" #include "tket/Transformations/Transform.hpp" From 75caa93014885b12b112cc0792d05852bf65707d Mon Sep 17 00:00:00 2001 From: cqc-melf <70640934+cqc-melf@users.noreply.github.com> Date: Mon, 23 Oct 2023 16:37:54 +0100 Subject: [PATCH 03/36] add additional check for >32 bit size registers used in wasm (#1090) * add additional check for >32 bit sizze registers used in wasm * shorter line --- pytket/pytket/circuit/__init__.py | 15 +++++++++++ pytket/tests/classical_test.py | 43 ++++++++++++++++++++++++++++++- 2 files changed, 57 insertions(+), 1 deletion(-) diff --git a/pytket/pytket/circuit/__init__.py b/pytket/pytket/circuit/__init__.py index a9192d15bf..6941829c91 100644 --- a/pytket/pytket/circuit/__init__.py +++ b/pytket/pytket/circuit/__init__.py @@ -135,6 +135,21 @@ def overload_add_wasm_to_reg( if args_wasm is None: args_wasm = [0] + if filehandler._check_file: + for reg in list_i: + if reg.size > 32: + raise ValueError( + """wasm is only supporting 32 bit size registers, +please use only registers of at most 32 bits""" + ) + + for reg in list_o: + if reg.size > 32: + raise ValueError( + """wasm is only supporting 32 bit size registers, +please use only registers of at most 32 bits""" + ) + if filehandler.check_function(funcname, len(list_i), len(list_o)): if (len(args_wasm)) > 0: self._add_w_register(max(args_wasm) + 1) diff --git a/pytket/tests/classical_test.py b/pytket/tests/classical_test.py index 2f0d651844..a5f63860fd 100644 --- a/pytket/tests/classical_test.py +++ b/pytket/tests/classical_test.py @@ -390,10 +390,51 @@ def test_wasm_function_check_5() -> None: c = Circuit(20, 20) c0 = c.add_c_register("c0", 53) c1 = c.add_c_register("c1", 4) + + with pytest.raises(ValueError): + c.add_wasm_to_reg("add_one", w, [c0], [c1]) + + +def test_wasm_function_check_6() -> None: + w = wasm.WasmFileHandler("testfile.wasm") + c = Circuit(20, 20) + c0 = c.add_c_register("c0", 32) + c1 = c.add_c_register("c1", 4) + + c.add_wasm_to_reg("add_one", w, [c0], [c1]) + assert c.depth() == 1 + + +def test_wasm_function_check_7() -> None: + w = wasm.WasmFileHandler("testfile.wasm", int_size=32) + c = Circuit(20, 20) + c0 = c.add_c_register("c0", 32) + c1 = c.add_c_register("c1", 4) + + c.add_wasm_to_reg("add_one", w, [c0], [c1]) + assert c.depth() == 1 + + +def test_wasm_function_check_8() -> None: + w = wasm.WasmFileHandler("testfile.wasm", int_size=64) + c = Circuit(20, 20) + c0 = c.add_c_register("c0", 32) + c1 = c.add_c_register("c1", 4) + c2 = c.add_c_register("c2", 5) + + c.add_wasm_to_reg("add_something", w, [c0], [c1]) + assert c.depth() == 1 + + +def test_wasm_function_check_9() -> None: + w = wasm.WasmFileHandler("testfile.wasm", int_size=64) + c = Circuit(20, 20) + c0 = c.add_c_register("c0", 53) + c1 = c.add_c_register("c1", 4) c2 = c.add_c_register("c2", 5) with pytest.raises(ValueError): - c.add_wasm_to_reg("add_one", w, [c0], [c1, c2]) + c.add_wasm_to_reg("add_something", w, [c0], [c1]) def test_add_wasm_to_reg() -> None: From 0bad4856c2093bbdb0c7e93b2a2d5f8bde292377 Mon Sep 17 00:00:00 2001 From: yao-cqc <75305462+yao-cqc@users.noreply.github.com> Date: Tue, 24 Oct 2023 11:13:21 +0100 Subject: [PATCH 04/36] Feature/add op types for cs and c sdg (#1091) --- pytket/binders/circuit/Circuit/add_op.cpp | 44 ++++++ pytket/binders/circuit/main.cpp | 4 + pytket/binders/circuit_library.cpp | 12 ++ pytket/conanfile.py | 2 +- pytket/docs/changelog.rst | 1 + pytket/pytket/_tket/circuit.pyi | 136 +++++++++++------- pytket/pytket/_tket/circuit_library.pyi | 18 ++- pytket/pytket/circuit_library/__init__.py | 2 + pytket/pytket/qasm/includes/_hqslib1_decls.py | 2 +- pytket/pytket/qasm/includes/_hqslib1_defs.py | 2 +- .../qasm/includes/_hqslib1_dev_decls.py | 2 +- .../pytket/qasm/includes/_hqslib1_dev_defs.py | 2 +- pytket/pytket/qasm/includes/_qelib1_decls.py | 2 +- pytket/pytket/qasm/includes/_qelib1_defs.py | 2 +- pytket/pytket/qasm/includes/hqslib1.inc | 4 + pytket/pytket/qasm/includes/hqslib1_dev.inc | 4 + pytket/pytket/qasm/includes/qelib1.inc | 4 + pytket/pytket/qasm/qasm.py | 2 + pytket/tests/circuit_test.py | 21 ++- pytket/tests/utils_test.py | 2 + tket/conanfile.py | 2 +- tket/include/tket/Circuit/CircPool.hpp | 6 + .../Gate/GateUnitaryMatrixImplementations.hpp | 2 + tket/include/tket/OpType/OpType.hpp | 26 ++++ tket/src/Circuit/CircPool.cpp | 12 ++ tket/src/Circuit/CircUtils.cpp | 8 ++ tket/src/Circuit/latex_drawing.cpp | 8 ++ tket/src/Gate/Gate.cpp | 12 ++ tket/src/Gate/GateUnitaryMatrix.cpp | 2 + .../Gate/GateUnitaryMatrixFixedMatrices.cpp | 6 + tket/src/OpType/OpTypeFunctions.cpp | 65 ++++----- tket/src/OpType/OpTypeInfo.cpp | 2 + tket/src/Transformations/Replacement.cpp | 2 + tket/test/src/Circuit/test_Circ.cpp | 37 +++++ tket/test/src/Gate/GatesData.cpp | 8 +- tket/test/src/Passes/test_SynthesiseTK.cpp | 2 + .../src/Simulation/test_CircuitSimulator.cpp | 16 +++ .../test_RedundancyRemoval.cpp | 6 + 38 files changed, 391 insertions(+), 99 deletions(-) diff --git a/pytket/binders/circuit/Circuit/add_op.cpp b/pytket/binders/circuit/Circuit/add_op.cpp index bbce100dbb..a7a38daffd 100644 --- a/pytket/binders/circuit/Circuit/add_op.cpp +++ b/pytket/binders/circuit/Circuit/add_op.cpp @@ -1206,6 +1206,28 @@ void init_circuit_add_op(py::class_> &c) { "and target qubits." "\n\n:return: the new :py:class:`Circuit`", py::arg("control_qubit"), py::arg("target_qubit")) + .def( + "CS", + [](Circuit *circ, unsigned ctrl, unsigned trgt, + const py::kwargs &kwargs) { + return add_gate_method_noparams( + circ, OpType::CS, {ctrl, trgt}, kwargs); + }, + "Appends a CS gate on the wires for the specified control " + "and target qubits." + "\n\n:return: the new :py:class:`Circuit`", + py::arg("control_qubit"), py::arg("target_qubit")) + .def( + "CSdg", + [](Circuit *circ, unsigned ctrl, unsigned trgt, + const py::kwargs &kwargs) { + return add_gate_method_noparams( + circ, OpType::CSdg, {ctrl, trgt}, kwargs); + }, + "Appends a CSdg gate on the wires for the specified control " + "and target qubits." + "\n\n:return: the new :py:class:`Circuit`", + py::arg("control_qubit"), py::arg("target_qubit")) .def( "CRz", [](Circuit *circ, const Expr &angle, unsigned ctrl, unsigned trgt, @@ -1797,6 +1819,28 @@ void init_circuit_add_op(py::class_> &c) { "and target qubits." "\n\n:return: the new :py:class:`Circuit`", py::arg("control_qubit"), py::arg("target_qubit")) + .def( + "CS", + [](Circuit *circ, const Qubit &ctrl, const Qubit &trgt, + const py::kwargs &kwargs) { + return add_gate_method_noparams( + circ, OpType::CS, {ctrl, trgt}, kwargs); + }, + "Appends a CS gate on the wires for the specified control " + "and target qubits." + "\n\n:return: the new :py:class:`Circuit`", + py::arg("control_qubit"), py::arg("target_qubit")) + .def( + "CSdg", + [](Circuit *circ, const Qubit &ctrl, const Qubit &trgt, + const py::kwargs &kwargs) { + return add_gate_method_noparams( + circ, OpType::CSdg, {ctrl, trgt}, kwargs); + }, + "Appends a CSdg gate on the wires for the specified control " + "and target qubits." + "\n\n:return: the new :py:class:`Circuit`", + py::arg("control_qubit"), py::arg("target_qubit")) .def( "CRz", [](Circuit *circ, const Expr &angle, const Qubit &ctrl, diff --git a/pytket/binders/circuit/main.cpp b/pytket/binders/circuit/main.cpp index 432fb466a0..d14ec311b1 100644 --- a/pytket/binders/circuit/main.cpp +++ b/pytket/binders/circuit/main.cpp @@ -209,6 +209,10 @@ PYBIND11_MODULE(circuit, m) { .value( "CSXdg", OpType::CSXdg, "Controlled :math:`\\mathrm{SX}^{\\dagger}` gate") + .value("CS", OpType::CS, "Controlled :math:`\\mathrm{S}` gate") + .value( + "CSdg", OpType::CSdg, + "Controlled :math:`\\mathrm{S}^{\\dagger}` gate") .value( "CRz", OpType::CRz, ":math:`(\\alpha) \\mapsto` Controlled " diff --git a/pytket/binders/circuit_library.cpp b/pytket/binders/circuit_library.cpp index 7786d5a464..8914230a96 100644 --- a/pytket/binders/circuit_library.cpp +++ b/pytket/binders/circuit_library.cpp @@ -158,6 +158,12 @@ PYBIND11_MODULE(circuit_library, library_m) { library_m.def( "CSXdg_using_CX", &CircPool::CSXdg_using_CX, "Equivalent to CSXdg, using CX and single-qubit gates"); + library_m.def( + "CS_using_CX", &CircPool::CS_using_CX, + "Equivalent to CS, using CX and single-qubit gates"); + library_m.def( + "CSdg_using_CX", &CircPool::CSdg_using_CX, + "Equivalent to CSdg, using CX and single-qubit gates"); library_m.def( "CSWAP_using_CX", &CircPool::CSWAP_using_CX, "Equivalent to CSWAP, using CX and single-qubit gates "); @@ -424,6 +430,12 @@ PYBIND11_MODULE(circuit_library, library_m) { library_m.def( "_CSXdg_using_CX", &CircPool::CSXdg_using_CX, "Equivalent to CSXdg, using CX and single-qubit gates"); + library_m.def( + "_CS_using_CX", &CircPool::CS_using_CX, + "Equivalent to CS, using CX and single-qubit gates"); + library_m.def( + "_CSdg_using_CX", &CircPool::CSdg_using_CX, + "Equivalent to CSdg, using CX and single-qubit gates"); library_m.def( "_CSWAP_using_CX", &CircPool::CSWAP_using_CX, "Equivalent to CSWAP, using CX and single-qubit gates "); diff --git a/pytket/conanfile.py b/pytket/conanfile.py index 2fdd615d19..cd0a84ddc8 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,7 +32,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.60@tket/stable") + self.requires("tket/1.2.61@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("tkassert/0.3.3@tket/stable") diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index 0cb10e2bff..59f714cc6d 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -8,6 +8,7 @@ Minor new features: * Add optional parameter to QASM conversion methods to set the maximum allowed width of classical registers (default 32). +* New ``OpType.CS`` and ``OpType.CSdg``. 1.21.0 (October 2023) --------------------- diff --git a/pytket/pytket/_tket/circuit.pyi b/pytket/pytket/_tket/circuit.pyi index b079d941c4..a9c00a6819 100644 --- a/pytket/pytket/_tket/circuit.pyi +++ b/pytket/pytket/_tket/circuit.pyi @@ -219,6 +219,20 @@ class Circuit: :return: the new :py:class:`Circuit` """ @typing.overload + def CS(self, control_qubit: int, target_qubit: int, **kwargs: Any) -> Circuit: + """ + Appends a CS gate on the wires for the specified control and target qubits. + + :return: the new :py:class:`Circuit` + """ + @typing.overload + def CS(self, control_qubit: pytket._tket.unit_id.Qubit, target_qubit: pytket._tket.unit_id.Qubit, **kwargs: Any) -> Circuit: + """ + Appends a CS gate on the wires for the specified control and target qubits. + + :return: the new :py:class:`Circuit` + """ + @typing.overload def CSWAP(self, control: int, target_0: int, target_1: int, **kwargs: Any) -> Circuit: """ Appends a CSWAP gate on the wires for the specified control and target qubits. @@ -261,6 +275,20 @@ class Circuit: :return: the new :py:class:`Circuit` """ @typing.overload + def CSdg(self, control_qubit: int, target_qubit: int, **kwargs: Any) -> Circuit: + """ + Appends a CSdg gate on the wires for the specified control and target qubits. + + :return: the new :py:class:`Circuit` + """ + @typing.overload + def CSdg(self, control_qubit: pytket._tket.unit_id.Qubit, target_qubit: pytket._tket.unit_id.Qubit, **kwargs: Any) -> Circuit: + """ + Appends a CSdg gate on the wires for the specified control and target qubits. + + :return: the new :py:class:`Circuit` + """ + @typing.overload def CU1(self, angle: sympy.Expr | float, control_qubit: int, target_qubit: int, **kwargs: Any) -> Circuit: """ Appends a CU1 gate with a possibly symbolic angle (specified in half-turns) on the wires for the specified control and target qubits. @@ -2907,6 +2935,10 @@ class OpType: CSXdg : Controlled :math:`\mathrm{SX}^{\dagger}` gate + CS : Controlled :math:`\mathrm{S}` gate + + CSdg : Controlled :math:`\mathrm{S}^{\dagger}` gate + CRz : :math:`(\alpha) \mapsto` Controlled :math:`\mathrm{Rz}(\alpha)` gate CRx : :math:`(\alpha) \mapsto` Controlled :math:`\mathrm{Rx}(\alpha)` gate @@ -3033,99 +3065,101 @@ class OpType: DiagonalBox : A box for synthesising a diagonal unitary matrix into a sequence of multiplexed-Rz gates """ - BRIDGE: typing.ClassVar[OpType] # value = + BRIDGE: typing.ClassVar[OpType] # value = Barrier: typing.ClassVar[OpType] # value = Branch: typing.ClassVar[OpType] # value = - CCX: typing.ClassVar[OpType] # value = + CCX: typing.ClassVar[OpType] # value = CH: typing.ClassVar[OpType] # value = - CRx: typing.ClassVar[OpType] # value = - CRy: typing.ClassVar[OpType] # value = - CRz: typing.ClassVar[OpType] # value = - CSWAP: typing.ClassVar[OpType] # value = + CRx: typing.ClassVar[OpType] # value = + CRy: typing.ClassVar[OpType] # value = + CRz: typing.ClassVar[OpType] # value = + CS: typing.ClassVar[OpType] # value = + CSWAP: typing.ClassVar[OpType] # value = CSX: typing.ClassVar[OpType] # value = CSXdg: typing.ClassVar[OpType] # value = - CU1: typing.ClassVar[OpType] # value = - CU3: typing.ClassVar[OpType] # value = + CSdg: typing.ClassVar[OpType] # value = + CU1: typing.ClassVar[OpType] # value = + CU3: typing.ClassVar[OpType] # value = CV: typing.ClassVar[OpType] # value = CVdg: typing.ClassVar[OpType] # value = CX: typing.ClassVar[OpType] # value = CY: typing.ClassVar[OpType] # value = CZ: typing.ClassVar[OpType] # value = - CircBox: typing.ClassVar[OpType] # value = - ClassicalExpBox: typing.ClassVar[OpType] # value = + CircBox: typing.ClassVar[OpType] # value = + ClassicalExpBox: typing.ClassVar[OpType] # value = ClassicalTransform: typing.ClassVar[OpType] # value = - CnRy: typing.ClassVar[OpType] # value = - CnX: typing.ClassVar[OpType] # value = - CnY: typing.ClassVar[OpType] # value = - CnZ: typing.ClassVar[OpType] # value = - Conditional: typing.ClassVar[OpType] # value = + CnRy: typing.ClassVar[OpType] # value = + CnX: typing.ClassVar[OpType] # value = + CnY: typing.ClassVar[OpType] # value = + CnZ: typing.ClassVar[OpType] # value = + Conditional: typing.ClassVar[OpType] # value = CopyBits: typing.ClassVar[OpType] # value = - CustomGate: typing.ClassVar[OpType] # value = - DiagonalBox: typing.ClassVar[OpType] # value = - ECR: typing.ClassVar[OpType] # value = - ESWAP: typing.ClassVar[OpType] # value = - ExpBox: typing.ClassVar[OpType] # value = + CustomGate: typing.ClassVar[OpType] # value = + DiagonalBox: typing.ClassVar[OpType] # value = + ECR: typing.ClassVar[OpType] # value = + ESWAP: typing.ClassVar[OpType] # value = + ExpBox: typing.ClassVar[OpType] # value = ExplicitModifier: typing.ClassVar[OpType] # value = ExplicitPredicate: typing.ClassVar[OpType] # value = - FSim: typing.ClassVar[OpType] # value = + FSim: typing.ClassVar[OpType] # value = Goto: typing.ClassVar[OpType] # value = H: typing.ClassVar[OpType] # value = - ISWAP: typing.ClassVar[OpType] # value = - ISWAPMax: typing.ClassVar[OpType] # value = + ISWAP: typing.ClassVar[OpType] # value = + ISWAPMax: typing.ClassVar[OpType] # value = Label: typing.ClassVar[OpType] # value = - Measure: typing.ClassVar[OpType] # value = + Measure: typing.ClassVar[OpType] # value = MultiBit: typing.ClassVar[OpType] # value = - MultiplexedRotationBox: typing.ClassVar[OpType] # value = - MultiplexedTensoredU2Box: typing.ClassVar[OpType] # value = - MultiplexedU2Box: typing.ClassVar[OpType] # value = - MultiplexorBox: typing.ClassVar[OpType] # value = - NPhasedX: typing.ClassVar[OpType] # value = - PauliExpBox: typing.ClassVar[OpType] # value = - PauliExpCommutingSetBox: typing.ClassVar[OpType] # value = - PauliExpPairBox: typing.ClassVar[OpType] # value = + MultiplexedRotationBox: typing.ClassVar[OpType] # value = + MultiplexedTensoredU2Box: typing.ClassVar[OpType] # value = + MultiplexedU2Box: typing.ClassVar[OpType] # value = + MultiplexorBox: typing.ClassVar[OpType] # value = + NPhasedX: typing.ClassVar[OpType] # value = + PauliExpBox: typing.ClassVar[OpType] # value = + PauliExpCommutingSetBox: typing.ClassVar[OpType] # value = + PauliExpPairBox: typing.ClassVar[OpType] # value = Phase: typing.ClassVar[OpType] # value = - PhasePolyBox: typing.ClassVar[OpType] # value = - PhasedISWAP: typing.ClassVar[OpType] # value = - PhasedX: typing.ClassVar[OpType] # value = - QControlBox: typing.ClassVar[OpType] # value = + PhasePolyBox: typing.ClassVar[OpType] # value = + PhasedISWAP: typing.ClassVar[OpType] # value = + PhasedX: typing.ClassVar[OpType] # value = + QControlBox: typing.ClassVar[OpType] # value = RangePredicate: typing.ClassVar[OpType] # value = - Reset: typing.ClassVar[OpType] # value = + Reset: typing.ClassVar[OpType] # value = Rx: typing.ClassVar[OpType] # value = Ry: typing.ClassVar[OpType] # value = Rz: typing.ClassVar[OpType] # value = S: typing.ClassVar[OpType] # value = - SWAP: typing.ClassVar[OpType] # value = + SWAP: typing.ClassVar[OpType] # value = SX: typing.ClassVar[OpType] # value = SXdg: typing.ClassVar[OpType] # value = Sdg: typing.ClassVar[OpType] # value = SetBits: typing.ClassVar[OpType] # value = - StatePreparationBox: typing.ClassVar[OpType] # value = + StatePreparationBox: typing.ClassVar[OpType] # value = Stop: typing.ClassVar[OpType] # value = - Sycamore: typing.ClassVar[OpType] # value = + Sycamore: typing.ClassVar[OpType] # value = T: typing.ClassVar[OpType] # value = TK1: typing.ClassVar[OpType] # value = TK2: typing.ClassVar[OpType] # value = Tdg: typing.ClassVar[OpType] # value = - ToffoliBox: typing.ClassVar[OpType] # value = + ToffoliBox: typing.ClassVar[OpType] # value = U1: typing.ClassVar[OpType] # value = U2: typing.ClassVar[OpType] # value = U3: typing.ClassVar[OpType] # value = - Unitary1qBox: typing.ClassVar[OpType] # value = - Unitary2qBox: typing.ClassVar[OpType] # value = - Unitary3qBox: typing.ClassVar[OpType] # value = + Unitary1qBox: typing.ClassVar[OpType] # value = + Unitary2qBox: typing.ClassVar[OpType] # value = + Unitary3qBox: typing.ClassVar[OpType] # value = V: typing.ClassVar[OpType] # value = Vdg: typing.ClassVar[OpType] # value = WASM: typing.ClassVar[OpType] # value = X: typing.ClassVar[OpType] # value = - XXPhase: typing.ClassVar[OpType] # value = - XXPhase3: typing.ClassVar[OpType] # value = + XXPhase: typing.ClassVar[OpType] # value = + XXPhase3: typing.ClassVar[OpType] # value = Y: typing.ClassVar[OpType] # value = - YYPhase: typing.ClassVar[OpType] # value = + YYPhase: typing.ClassVar[OpType] # value = Z: typing.ClassVar[OpType] # value = - ZZMax: typing.ClassVar[OpType] # value = - ZZPhase: typing.ClassVar[OpType] # value = - __members__: typing.ClassVar[dict[str, OpType]] # value = {'Phase': , 'Z': , 'X': , 'Y': , 'S': , 'Sdg': , 'T': , 'Tdg': , 'V': , 'Vdg': , 'SX': , 'SXdg': , 'H': , 'Rx': , 'Ry': , 'Rz': , 'U1': , 'U2': , 'U3': , 'TK1': , 'TK2': , 'CX': , 'CY': , 'CZ': , 'CH': , 'CV': , 'CVdg': , 'CSX': , 'CSXdg': , 'CRz': , 'CRx': , 'CRy': , 'CU1': , 'CU3': , 'CCX': , 'ECR': , 'SWAP': , 'CSWAP': , 'noop': , 'Barrier': , 'Label': , 'Branch': , 'Goto': , 'Stop': , 'BRIDGE': , 'Measure': , 'Reset': , 'CircBox': , 'PhasePolyBox': , 'Unitary1qBox': , 'Unitary2qBox': , 'Unitary3qBox': , 'ExpBox': , 'PauliExpBox': , 'PauliExpPairBox': , 'PauliExpCommutingSetBox': , 'QControlBox': , 'ToffoliBox': , 'CustomGate': , 'Conditional': , 'ISWAP': , 'PhasedISWAP': , 'XXPhase': , 'YYPhase': , 'ZZPhase': , 'XXPhase3': , 'PhasedX': , 'NPhasedX': , 'CnRy': , 'CnX': , 'CnY': , 'CnZ': , 'ZZMax': , 'ESWAP': , 'FSim': , 'Sycamore': , 'ISWAPMax': , 'ClassicalTransform': , 'WASM': , 'SetBits': , 'CopyBits': , 'RangePredicate': , 'ExplicitPredicate': , 'ExplicitModifier': , 'MultiBit': , 'ClassicalExpBox': , 'MultiplexorBox': , 'MultiplexedRotationBox': , 'MultiplexedU2Box': , 'MultiplexedTensoredU2Box': , 'StatePreparationBox': , 'DiagonalBox': } - noop: typing.ClassVar[OpType] # value = + ZZMax: typing.ClassVar[OpType] # value = + ZZPhase: typing.ClassVar[OpType] # value = + __members__: typing.ClassVar[dict[str, OpType]] # value = {'Phase': , 'Z': , 'X': , 'Y': , 'S': , 'Sdg': , 'T': , 'Tdg': , 'V': , 'Vdg': , 'SX': , 'SXdg': , 'H': , 'Rx': , 'Ry': , 'Rz': , 'U1': , 'U2': , 'U3': , 'TK1': , 'TK2': , 'CX': , 'CY': , 'CZ': , 'CH': , 'CV': , 'CVdg': , 'CSX': , 'CSXdg': , 'CS': , 'CSdg': , 'CRz': , 'CRx': , 'CRy': , 'CU1': , 'CU3': , 'CCX': , 'ECR': , 'SWAP': , 'CSWAP': , 'noop': , 'Barrier': , 'Label': , 'Branch': , 'Goto': , 'Stop': , 'BRIDGE': , 'Measure': , 'Reset': , 'CircBox': , 'PhasePolyBox': , 'Unitary1qBox': , 'Unitary2qBox': , 'Unitary3qBox': , 'ExpBox': , 'PauliExpBox': , 'PauliExpPairBox': , 'PauliExpCommutingSetBox': , 'QControlBox': , 'ToffoliBox': , 'CustomGate': , 'Conditional': , 'ISWAP': , 'PhasedISWAP': , 'XXPhase': , 'YYPhase': , 'ZZPhase': , 'XXPhase3': , 'PhasedX': , 'NPhasedX': , 'CnRy': , 'CnX': , 'CnY': , 'CnZ': , 'ZZMax': , 'ESWAP': , 'FSim': , 'Sycamore': , 'ISWAPMax': , 'ClassicalTransform': , 'WASM': , 'SetBits': , 'CopyBits': , 'RangePredicate': , 'ExplicitPredicate': , 'ExplicitModifier': , 'MultiBit': , 'ClassicalExpBox': , 'MultiplexorBox': , 'MultiplexedRotationBox': , 'MultiplexedU2Box': , 'MultiplexedTensoredU2Box': , 'StatePreparationBox': , 'DiagonalBox': } + noop: typing.ClassVar[OpType] # value = @staticmethod def from_name(arg0: str) -> OpType: """ diff --git a/pytket/pytket/_tket/circuit_library.pyi b/pytket/pytket/_tket/circuit_library.pyi index 6b0cd2ae43..4224fa6173 100644 --- a/pytket/pytket/_tket/circuit_library.pyi +++ b/pytket/pytket/_tket/circuit_library.pyi @@ -2,7 +2,7 @@ from __future__ import annotations import pytket._tket.circuit import sympy import typing -__all__ = ['BRIDGE', 'BRIDGE_using_CX_0', 'BRIDGE_using_CX_1', 'C3X_normal_decomp', 'C4X_normal_decomp', 'CCX', 'CCX_modulo_phase_shift', 'CCX_normal_decomp', 'CH_using_CX', 'CRx_using_CX', 'CRx_using_TK2', 'CRy_using_CX', 'CRy_using_TK2', 'CRz_using_CX', 'CRz_using_TK2', 'CSWAP_using_CX', 'CSX_using_CX', 'CSXdg_using_CX', 'CU1_using_CX', 'CU1_using_TK2', 'CU3_using_CX', 'CV_using_CX', 'CVdg_using_CX', 'CX', 'CX_S_CX_reduced', 'CX_S_V_XC_reduced', 'CX_VS_CX_reduced', 'CX_V_CX_reduced', 'CX_V_S_XC_reduced', 'CX_XC_reduced', 'CX_using_ECR', 'CX_using_TK2', 'CX_using_XXPhase_0', 'CX_using_XXPhase_1', 'CX_using_ZZMax', 'CX_using_ZZPhase', 'CX_using_flipped_CX', 'CY_using_CX', 'CZ_using_CX', 'ECR_using_CX', 'ESWAP_using_CX', 'ESWAP_using_TK2', 'FSim_using_CX', 'FSim_using_TK2', 'H_CZ_H', 'ISWAP_using_CX', 'ISWAP_using_TK2', 'NPhasedX_using_PhasedX', 'PhasedISWAP_using_CX', 'PhasedISWAP_using_TK2', 'SWAP_using_CX_0', 'SWAP_using_CX_1', 'TK1_to_PhasedXRz', 'TK1_to_RzH', 'TK1_to_RzRx', 'TK1_to_RzSX', 'TK1_to_TK1', 'TK2_using_3xCX', 'TK2_using_CX', 'TK2_using_CX_and_swap', 'TK2_using_TK2_or_swap', 'TK2_using_ZZMax', 'TK2_using_ZZMax_and_swap', 'TK2_using_ZZPhase', 'TK2_using_ZZPhase_and_swap', 'TK2_using_normalised_TK2', 'X', 'X1_CX', 'XXPhase3_using_CX', 'XXPhase3_using_TK2', 'XXPhase_using_CX', 'XXPhase_using_TK2', 'YYPhase_using_CX', 'YYPhase_using_TK2', 'Z0_CX', 'ZZMax_using_CX', 'ZZPhase_using_CX', 'ZZPhase_using_TK2', 'approx_TK2_using_1xCX', 'approx_TK2_using_1xZZPhase', 'approx_TK2_using_2xCX', 'approx_TK2_using_2xZZPhase', 'ladder_down', 'ladder_down_2', 'ladder_up', 'two_Rz1'] +__all__ = ['BRIDGE', 'BRIDGE_using_CX_0', 'BRIDGE_using_CX_1', 'C3X_normal_decomp', 'C4X_normal_decomp', 'CCX', 'CCX_modulo_phase_shift', 'CCX_normal_decomp', 'CH_using_CX', 'CRx_using_CX', 'CRx_using_TK2', 'CRy_using_CX', 'CRy_using_TK2', 'CRz_using_CX', 'CRz_using_TK2', 'CSWAP_using_CX', 'CSX_using_CX', 'CSXdg_using_CX', 'CS_using_CX', 'CSdg_using_CX', 'CU1_using_CX', 'CU1_using_TK2', 'CU3_using_CX', 'CV_using_CX', 'CVdg_using_CX', 'CX', 'CX_S_CX_reduced', 'CX_S_V_XC_reduced', 'CX_VS_CX_reduced', 'CX_V_CX_reduced', 'CX_V_S_XC_reduced', 'CX_XC_reduced', 'CX_using_ECR', 'CX_using_TK2', 'CX_using_XXPhase_0', 'CX_using_XXPhase_1', 'CX_using_ZZMax', 'CX_using_ZZPhase', 'CX_using_flipped_CX', 'CY_using_CX', 'CZ_using_CX', 'ECR_using_CX', 'ESWAP_using_CX', 'ESWAP_using_TK2', 'FSim_using_CX', 'FSim_using_TK2', 'H_CZ_H', 'ISWAP_using_CX', 'ISWAP_using_TK2', 'NPhasedX_using_PhasedX', 'PhasedISWAP_using_CX', 'PhasedISWAP_using_TK2', 'SWAP_using_CX_0', 'SWAP_using_CX_1', 'TK1_to_PhasedXRz', 'TK1_to_RzH', 'TK1_to_RzRx', 'TK1_to_RzSX', 'TK1_to_TK1', 'TK2_using_3xCX', 'TK2_using_CX', 'TK2_using_CX_and_swap', 'TK2_using_TK2_or_swap', 'TK2_using_ZZMax', 'TK2_using_ZZMax_and_swap', 'TK2_using_ZZPhase', 'TK2_using_ZZPhase_and_swap', 'TK2_using_normalised_TK2', 'X', 'X1_CX', 'XXPhase3_using_CX', 'XXPhase3_using_TK2', 'XXPhase_using_CX', 'XXPhase_using_TK2', 'YYPhase_using_CX', 'YYPhase_using_TK2', 'Z0_CX', 'ZZMax_using_CX', 'ZZPhase_using_CX', 'ZZPhase_using_TK2', 'approx_TK2_using_1xCX', 'approx_TK2_using_1xZZPhase', 'approx_TK2_using_2xCX', 'approx_TK2_using_2xZZPhase', 'ladder_down', 'ladder_down_2', 'ladder_up', 'two_Rz1'] def BRIDGE() -> pytket._tket.circuit.Circuit: """ Just a BRIDGE[0,1,2] gate @@ -75,6 +75,14 @@ def CSXdg_using_CX() -> pytket._tket.circuit.Circuit: """ Equivalent to CSXdg, using CX and single-qubit gates """ +def CS_using_CX() -> pytket._tket.circuit.Circuit: + """ + Equivalent to CS, using CX and single-qubit gates + """ +def CSdg_using_CX() -> pytket._tket.circuit.Circuit: + """ + Equivalent to CSdg, using CX and single-qubit gates + """ def CU1_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: """ Equivalent to CU1, using CX and U1 gates @@ -389,6 +397,14 @@ def _CSXdg_using_CX() -> pytket._tket.circuit.Circuit: """ Equivalent to CSXdg, using CX and single-qubit gates """ +def _CS_using_CX() -> pytket._tket.circuit.Circuit: + """ + Equivalent to CS, using CX and single-qubit gates + """ +def _CSdg_using_CX() -> pytket._tket.circuit.Circuit: + """ + Equivalent to CSdg, using CX and single-qubit gates + """ def _CU1_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: """ Equivalent to CU1, using CX and U1 gates diff --git a/pytket/pytket/circuit_library/__init__.py b/pytket/pytket/circuit_library/__init__.py index a860d0f1a2..81868ba880 100644 --- a/pytket/pytket/circuit_library/__init__.py +++ b/pytket/pytket/circuit_library/__init__.py @@ -57,6 +57,8 @@ CVdg_using_CX, CSX_using_CX, CSXdg_using_CX, + CS_using_CX, + CSdg_using_CX, CSWAP_using_CX, ECR_using_CX, ZZMax_using_CX, diff --git a/pytket/pytket/qasm/includes/_hqslib1_decls.py b/pytket/pytket/qasm/includes/_hqslib1_decls.py index 1d777b45be..cc7eb9c69f 100644 --- a/pytket/pytket/qasm/includes/_hqslib1_decls.py +++ b/pytket/pytket/qasm/includes/_hqslib1_decls.py @@ -1,2 +1,2 @@ """DO NOT EDIT! GENERATED BY load_includes.py.""" -_INCLUDE_DECLS={'Rz': {'args': ['lam'], 'name': 'Rz'}, 'U1q': {'args': ['theta', 'phi'], 'name': 'U1q'}, 'ZZ': {'args': [], 'name': 'ZZ'}, 'RZZ': {'args': ['theta'], 'name': 'RZZ'}, 'Rxxyyzz': {'args': ['alpha', 'beta', 'gamma'], 'name': 'Rxxyyzz'}, 'Rxxyyzz_zphase': {'args': ['alpha', 'beta', 'gamma', 'z0', 'z1'], 'name': 'Rxxyyzz_zphase'}, 'U': {'args': ['theta', 'phi', 'lam'], 'name': 'U'}, 'x': {'args': [], 'name': 'x'}, 'y': {'args': [], 'name': 'y'}, 'z': {'args': [], 'name': 'z'}, 'CX': {'args': [], 'name': 'CX'}, 'cx': {'args': [], 'name': 'cx'}, 'h': {'args': [], 'name': 'h'}, 's': {'args': [], 'name': 's'}, 'sdg': {'args': [], 'name': 'sdg'}, 't': {'args': [], 'name': 't'}, 'tdg': {'args': [], 'name': 'tdg'}, 'rx': {'args': ['theta'], 'name': 'rx'}, 'ry': {'args': ['theta'], 'name': 'ry'}, 'rz': {'args': ['phi'], 'name': 'rz'}, 'cz': {'args': [], 'name': 'cz'}, 'cy': {'args': [], 'name': 'cy'}, 'ch': {'args': [], 'name': 'ch'}, 'ccx': {'args': [], 'name': 'ccx'}, 'crz': {'args': ['lam'], 'name': 'crz'}, 'cu1': {'args': ['lam'], 'name': 'cu1'}, 'cu3': {'args': ['theta', 'phi', 'lam'], 'name': 'cu3'}, 'csx': {'args': [], 'name': 'csx'}, 'cu': {'args': ['theta', 'phi', 'lam', 'gamma'], 'name': 'cu'}, 'u': {'args': ['theta', 'phi', 'lam'], 'name': 'u'}, 'u3': {'args': ['theta', 'phi', 'lam'], 'name': 'u3'}, 'u2': {'args': ['phi', 'lam'], 'name': 'u2'}, 'u1': {'args': ['lam'], 'name': 'u1'}, 'id': {'args': [], 'name': 'id'}, 'p': {'args': ['lam'], 'name': 'p'}, 'sx': {'args': [], 'name': 'sx'}, 'sxdg': {'args': [], 'name': 'sxdg'}, 'swap': {'args': [], 'name': 'swap'}, 'cswap': {'args': [], 'name': 'cswap'}, 'crx': {'args': ['lam'], 'name': 'crx'}, 'cry': {'args': ['lam'], 'name': 'cry'}, 'cp': {'args': ['lam'], 'name': 'cp'}, 'rxx': {'args': ['theta'], 'name': 'rxx'}, 'rzz': {'args': ['theta'], 'name': 'rzz'}, 'rccx': {'args': [], 'name': 'rccx'}, 'rc3x': {'args': [], 'name': 'rc3x'}, 'c3x': {'args': [], 'name': 'c3x'}, 'c3sqrtx': {'args': [], 'name': 'c3sqrtx'}, 'c4x': {'args': [], 'name': 'c4x'}} \ No newline at end of file +_INCLUDE_DECLS={'Rz': {'args': ['lam'], 'name': 'Rz'}, 'U1q': {'args': ['theta', 'phi'], 'name': 'U1q'}, 'ZZ': {'args': [], 'name': 'ZZ'}, 'RZZ': {'args': ['theta'], 'name': 'RZZ'}, 'Rxxyyzz': {'args': ['alpha', 'beta', 'gamma'], 'name': 'Rxxyyzz'}, 'Rxxyyzz_zphase': {'args': ['alpha', 'beta', 'gamma', 'z0', 'z1'], 'name': 'Rxxyyzz_zphase'}, 'U': {'args': ['theta', 'phi', 'lam'], 'name': 'U'}, 'x': {'args': [], 'name': 'x'}, 'y': {'args': [], 'name': 'y'}, 'z': {'args': [], 'name': 'z'}, 'CX': {'args': [], 'name': 'CX'}, 'cx': {'args': [], 'name': 'cx'}, 'h': {'args': [], 'name': 'h'}, 's': {'args': [], 'name': 's'}, 'sdg': {'args': [], 'name': 'sdg'}, 't': {'args': [], 'name': 't'}, 'tdg': {'args': [], 'name': 'tdg'}, 'rx': {'args': ['theta'], 'name': 'rx'}, 'ry': {'args': ['theta'], 'name': 'ry'}, 'rz': {'args': ['phi'], 'name': 'rz'}, 'cz': {'args': [], 'name': 'cz'}, 'cy': {'args': [], 'name': 'cy'}, 'ch': {'args': [], 'name': 'ch'}, 'ccx': {'args': [], 'name': 'ccx'}, 'crz': {'args': ['lam'], 'name': 'crz'}, 'cu1': {'args': ['lam'], 'name': 'cu1'}, 'cu3': {'args': ['theta', 'phi', 'lam'], 'name': 'cu3'}, 'csx': {'args': [], 'name': 'csx'}, 'cs': {'args': [], 'name': 'cs'}, 'csdg': {'args': [], 'name': 'csdg'}, 'cu': {'args': ['theta', 'phi', 'lam', 'gamma'], 'name': 'cu'}, 'u': {'args': ['theta', 'phi', 'lam'], 'name': 'u'}, 'u3': {'args': ['theta', 'phi', 'lam'], 'name': 'u3'}, 'u2': {'args': ['phi', 'lam'], 'name': 'u2'}, 'u1': {'args': ['lam'], 'name': 'u1'}, 'id': {'args': [], 'name': 'id'}, 'p': {'args': ['lam'], 'name': 'p'}, 'sx': {'args': [], 'name': 'sx'}, 'sxdg': {'args': [], 'name': 'sxdg'}, 'swap': {'args': [], 'name': 'swap'}, 'cswap': {'args': [], 'name': 'cswap'}, 'crx': {'args': ['lam'], 'name': 'crx'}, 'cry': {'args': ['lam'], 'name': 'cry'}, 'cp': {'args': ['lam'], 'name': 'cp'}, 'rxx': {'args': ['theta'], 'name': 'rxx'}, 'rzz': {'args': ['theta'], 'name': 'rzz'}, 'rccx': {'args': [], 'name': 'rccx'}, 'rc3x': {'args': [], 'name': 'rc3x'}, 'c3x': {'args': [], 'name': 'c3x'}, 'c3sqrtx': {'args': [], 'name': 'c3sqrtx'}, 'c4x': {'args': [], 'name': 'c4x'}} \ No newline at end of file diff --git a/pytket/pytket/qasm/includes/_hqslib1_defs.py b/pytket/pytket/qasm/includes/_hqslib1_defs.py index 002841368e..7569a2a7c2 100644 --- a/pytket/pytket/qasm/includes/_hqslib1_defs.py +++ b/pytket/pytket/qasm/includes/_hqslib1_defs.py @@ -1,2 +1,2 @@ """DO NOT EDIT! GENERATED BY load_includes.py.""" -_INCLUDE_DEFS={'Rz': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'Rz'}, 'U1q': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi'], 'name': 'U1q'}, 'ZZ': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ZZ'}, 'RZZ': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'RZZ'}, 'Rxxyyzz': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['alpha', 'beta', 'gamma'], 'name': 'Rxxyyzz'}, 'Rxxyyzz_zphase': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['alpha', 'beta', 'gamma', 'z0', 'z1'], 'name': 'Rxxyyzz_zphase'}, 'U': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'U'}, 'x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '804637b2-4919-4480-af9b-aecb36ad8a2c', 'params': ['1', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'x'}, 'y': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'e645a79f-1c54-44d4-a1cc-efb866e06753', 'params': ['1', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'y'}, 'z': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '47fe8e61-2687-4f8b-b6f8-77c058d1d2ef', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'z'}, 'CX': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'CX'}, 'cx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cx'}, 'h': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'h'}, 's': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2549b34-1443-4840-9ae0-08cddf5da3cf', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 's'}, 'sdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e5cedeea-39d3-4aa8-bc34-882da1180e80', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sdg'}, 't': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 't'}, 'tdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9a6c9b90-a32d-4fd8-b08e-e62b9613fd62', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'tdg'}, 'rx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '9ebe42c2-d6b4-472d-8987-74b62ededc93', 'params': ['theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'rx'}, 'ry': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3e0d748b-e958-4ca4-87df-30757ba2832f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'ry'}, 'rz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'd2ce87d4-53b2-4d4f-90e2-2916eb6a9700', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi'], 'name': 'rz'}, 'cz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '106f7eb1-8fc9-461d-93c7-a5f18792661a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6fa51be8-c097-4fdd-bc38-9b37d07cc5d8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '78ccf983-5783-4312-aaac-307bdf5749fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cz'}, 'cy': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e5cedeea-39d3-4aa8-bc34-882da1180e80', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': 'c5927af0-a608-4334-9b62-5c5a1c100eb9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '272a7dd5-bc3e-410d-9ca5-a22ee5a91040', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2549b34-1443-4840-9ae0-08cddf5da3cf', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'f57ee394-3c80-45c6-97a2-ac2d68c6b086', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cy'}, 'ch': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1d03f2ce-8f7a-4b35-9428-e748a158fd81', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e5cedeea-39d3-4aa8-bc34-882da1180e80', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '322fac58-6424-49d1-a6e5-a97adef9f455', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ac9dea22-d13a-48ee-93dc-3a3ce149ae19', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '314c8e67-af50-494d-aa56-685a1659dcb2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '1acc633b-80ca-4d62-a5b6-1d6a61191408', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7ef72353-f568-4e66-b898-720eed1cfbd7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2549b34-1443-4840-9ae0-08cddf5da3cf', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '43a945c4-dfb0-4576-b648-6bca46b8dad8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '8adade1d-f993-4c19-b570-3556507e4d42', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6527176e-67e8-43a8-8725-23d819e381c1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2549b34-1443-4840-9ae0-08cddf5da3cf', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'fca6ef42-fdf5-432c-9a67-c05db9371b60', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '804637b2-4919-4480-af9b-aecb36ad8a2c', 'params': ['1', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'x'}, 'id': '69674159-04ea-4215-933a-a2a355109383', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ch'}, 'ccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a286bc1c-d161-4b73-8e4e-7c6e974b87d5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '01947a9a-d44e-4b9e-84a3-aee923cc4cae', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9a6c9b90-a32d-4fd8-b08e-e62b9613fd62', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'da8d35a2-588c-442a-826f-abc9735fb2c5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2c4f8fef-4890-4310-bbc4-d6b7a3d7db5c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '8622d284-be23-411d-984f-40e995380c43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7da3f22d-996d-4017-be8c-285575ab78c1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'c3ae597b-c134-474f-995d-703cbd6607a9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9a6c9b90-a32d-4fd8-b08e-e62b9613fd62', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '2752620c-6b90-4e32-9a05-cf8d09ae6fe6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20645d4a-79af-4b38-b03f-c92cdfc26e43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c155a239-93cf-4f03-a04e-df0ede9dca2b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '7e3c9459-3570-47b4-9b46-77c6ebb418df', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'c006f880-4d9a-4d06-b179-31c8ed21db32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9a6c9b90-a32d-4fd8-b08e-e62b9613fd62', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'bf9cc852-56e7-4561-a4ac-2e9312e398f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '27a1cc97-6153-4264-82bf-2e45c300beaf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8a37e63a-cb1e-40d3-94b7-2a5097613f24', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'ccx'}, 'crz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '168031c8-7c7e-48a8-b971-6c25d7c3c962', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '94caaedc-3774-47a2-9b4d-1f3cac0b0076', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7229ff6b-59f5-4087-b43f-a2b7518027bf', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fe7748f8-830f-4f47-91a1-731596cab184', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'crz'}, 'cu1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cu1'}, 'cu3': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e2c9eacc-d8ac-42be-a4ce-404258960c72', 'params': ['(1/2)*(pi*lam - pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3f46f252-8d50-43ce-b466-20cdf1b296a9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '80601898-198f-43bf-8ee2-a6d7c9344e22', 'params': ['(-1/2)*(pi*lam + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'ec29f274-4b8f-42a6-8495-9ee834c10c6f', 'params': ['(-1/2)*theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f11e5a4a-d463-4811-8cdf-7cf9b7fedd94', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '6f8bee00-50a0-43cb-beec-f8cdd0363977', 'params': ['(1/2)*theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9fa46f96-c303-4833-9562-8eec4ed4fb29', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'cu3'}, 'csx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0e96a0db-51ec-4b8d-9180-81d1c9d97716', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '52c09fd3-c4cf-4a48-87ba-ddcec3379125', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b4f1abd9-2fb4-4ffe-a36f-b787bcd63eff', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csx'}, 'cu': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['gamma'], 'type': 'U1'}}, {'args': [['q', [1]]], 'op': {'params': ['(1/2)*(pi*lam - pi*phi)/pi'], 'type': 'U1'}}, {'args': [['q', [0]]], 'op': {'params': ['(1/2)*(pi*lam + pi*phi)/pi'], 'type': 'U1'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4c9b068e-210c-4f5f-b73a-e7f4f548b3e2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'params': ['(-1/2)*theta', '0', '(-1/2)*(pi*lam + pi*phi)/pi'], 'type': 'U3'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '833c35f2-ca55-4291-a433-cacac54e4b3e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'params': ['(1/2)*theta', 'phi', '0'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lam', 'gamma'], 'name': 'cu'}, 'u': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '54602d58-0000-4804-875e-5589be5e00ce', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'u'}, 'u3': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'u3'}, 'u2': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'ffec0ee1-18d1-49e0-b012-123960f267c1', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi', 'lam'], 'name': 'u2'}, 'u1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'u1'}, 'id': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'd5bc2560-3e0e-4d67-8e9d-a56ea9933124', 'params': ['0', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'id'}, 'p': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'p'}, 'sx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e5cedeea-39d3-4aa8-bc34-882da1180e80', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': 'ea5813dd-6b43-41be-a871-a3af2e1cbdd8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'dccc3cff-26c4-4369-84cb-288b47075c6a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e5cedeea-39d3-4aa8-bc34-882da1180e80', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': 'a21697c4-aed4-45c1-9ecb-38b1f6504cb0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sx'}, 'sxdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2549b34-1443-4840-9ae0-08cddf5da3cf', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '3e141d86-7ddf-42cd-87e0-3ea364be3e78', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd1c38ac8-61b1-471d-a314-1dadb1c75fa1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2549b34-1443-4840-9ae0-08cddf5da3cf', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '990663a4-527c-4837-a3e1-928fa92d8734', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sxdg'}, 'swap': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a67b8c20-4318-404e-a5e2-ef0847e26205', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a6a80791-1afe-4cd9-93bb-2fce65c4e346', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'de359c09-42c7-4755-aa0f-614298f40474', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'swap'}, 'cswap': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a8fa2e26-440c-4f7a-96e3-66b098688e7b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a286bc1c-d161-4b73-8e4e-7c6e974b87d5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '01947a9a-d44e-4b9e-84a3-aee923cc4cae', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9a6c9b90-a32d-4fd8-b08e-e62b9613fd62', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'da8d35a2-588c-442a-826f-abc9735fb2c5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2c4f8fef-4890-4310-bbc4-d6b7a3d7db5c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '8622d284-be23-411d-984f-40e995380c43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7da3f22d-996d-4017-be8c-285575ab78c1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'c3ae597b-c134-474f-995d-703cbd6607a9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9a6c9b90-a32d-4fd8-b08e-e62b9613fd62', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '2752620c-6b90-4e32-9a05-cf8d09ae6fe6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20645d4a-79af-4b38-b03f-c92cdfc26e43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c155a239-93cf-4f03-a04e-df0ede9dca2b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '7e3c9459-3570-47b4-9b46-77c6ebb418df', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '908183c2-c5ff-47d8-8adb-2f2377d99963', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'c006f880-4d9a-4d06-b179-31c8ed21db32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9a6c9b90-a32d-4fd8-b08e-e62b9613fd62', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'bf9cc852-56e7-4561-a4ac-2e9312e398f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '27a1cc97-6153-4264-82bf-2e45c300beaf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8a37e63a-cb1e-40d3-94b7-2a5097613f24', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'name': 'ccx'}, 'id': '53f62310-8aec-4193-956c-6f9eab33c7f1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a494945d-0542-4159-88ef-e62b013f5df0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'cswap'}, 'crx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'a07d5b8a-aa2f-4ef9-91f7-584a77909bd4', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '84319073-23d4-4fbc-a189-de78ebcf8712', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '5593e66f-d3ca-435a-9c5b-020740aba186', 'params': ['(-1/2)*lam', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'cb273997-c771-402f-8fbb-0aa02fa1a2a3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'f7f5e0b5-9cbf-4259-81a3-6ee10212c52f', 'params': ['(1/2)*lam', '-1/2', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'crx'}, 'cry': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3e0d748b-e958-4ca4-87df-30757ba2832f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': '06a992f3-116e-4f2a-a677-96ad2b27673e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c8f4e4f6-b518-4707-ab4c-c7a084dbb506', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3e0d748b-e958-4ca4-87df-30757ba2832f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': 'f9e5f4e8-4837-42ff-8480-0a4e44ee7243', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '693e47b3-16aa-490f-b504-c256f607def2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cry'}, 'cp': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '9088b4e7-ce90-4b1e-a306-fdae95f89bf7', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '17f9b940-39a3-4e05-860c-19c8f45cd13d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c3555f51-9986-479f-aa64-af35d236fd19', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4dc126b2-f1b3-4365-b36a-2fb760fa82a3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b55344df-092c-4a4d-a094-716503b46fb9', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cp'}, 'rxx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '238adba8-7c8b-4119-b7ba-a0c1e4fa22b1', 'params': ['1/2', 'theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '68da6b46-5a20-48ce-9795-532d4c6f3f08', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0dfad68f-31df-4516-ab85-00a7b28e62d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '5fe4a086-6cda-4b19-ac61-17a5669ed371', 'params': ['-theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '47cb0807-a6c4-44aa-8dbd-11e6e34ff293', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'ffec0ee1-18d1-49e0-b012-123960f267c1', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'd9fc1afc-90de-4c14-9144-5b16b9a7dc5d', 'params': ['-1', '(-pi*theta + pi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f445db3e-93ac-4ae9-9c75-0c6df87fcf01', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rxx'}, 'rzz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'RZZ'}, 'id': '103b52c2-d8a0-4291-95a5-01fa3a09c3ad', 'params': ['theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rzz'}, 'rccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'ffec0ee1-18d1-49e0-b012-123960f267c1', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '99a48371-63f8-46f2-9e0e-ab5c802c8373', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '27c77a61-f004-4303-89e1-a2ffcb340f77', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5202dd79-b4b9-4aeb-a07c-aa2bdd451b01', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'dd921c92-9f41-447e-9398-84b776dd5266', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0a367ddb-02ef-47f4-bf32-e37b61f14388', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '16005322-b885-40a3-aef6-dc5de94b1f18', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ca96e700-f7a3-4798-a847-82985b8f59d8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ce30a45a-cb90-47ae-acc8-f13f50cc3d50', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'ffec0ee1-18d1-49e0-b012-123960f267c1', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '60ab2648-0174-4665-a0d1-1ce254485f0d', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'rccx'}, 'rc3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'ffec0ee1-18d1-49e0-b012-123960f267c1', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'cd7191e8-6182-4944-b6c0-59bae97a35f0', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '04c05765-ad59-46f4-9ecf-6c34128453cc', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '13736aa2-1871-492c-b4db-e20c2fc798a8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'd16811b1-b82b-463b-a908-5bcc94d5c51f', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'ffec0ee1-18d1-49e0-b012-123960f267c1', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '81cf266c-36f0-411d-ae18-c13c6e1d0de3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0a7967bf-4fbf-44b8-b1e2-268245a30a23', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '30d3b616-9230-4cd0-aa11-8c72a153ce8a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dde36039-c527-4ef3-98ee-03237bbf69ff', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ce4a6929-8ce1-4632-89ef-42b4b1055a14', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8c8230d3-cb8a-4961-9b5e-549d71d8f147', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '6ab18f61-97c4-4cf7-8795-00c103a2d82b', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3630bc0d-c3a5-4c54-a0a1-7e23a2b6b168', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '723679be-c3d4-4e62-b140-7b0f9d03e987', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'ffec0ee1-18d1-49e0-b012-123960f267c1', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'dc73e20a-69a2-4307-856b-1c5e34350cfd', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '9a1a76c0-ff39-40b8-8bb0-0b66c33c7f44', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '32d72f59-2421-400c-af2b-8ce4501dce72', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '556003e7-be19-4fe5-b9a0-aea95972782f', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '91e295f9-15eb-40e5-b7d1-c7b4161a77e4', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd4d06cb2-2912-4cb8-b6a6-675bf12c1949', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'ffec0ee1-18d1-49e0-b012-123960f267c1', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '571efe2d-63b3-4906-b3c2-e63a3128f528', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'rc3x'}, 'c3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6cb11a33-6872-4063-bb4b-9ce26b780711', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'feac658d-fb92-4fa4-bd1c-8670e2fd9460', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '7932db81-9279-40da-b36c-3fd5aa701f64', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9b9b1c26-2c2c-4b98-8d83-0e53b270756d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a83cd048-c0c5-4fd5-9057-174a89800c92', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ad7b22fe-5a35-448f-a3ac-a10fb674604a', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '559c4b5b-f179-435f-8058-c1806d7af0e2', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'af7e6db3-c8e0-4294-9d69-b2b770f528fb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6f026361-64e6-4fed-94e0-f35f63931099', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f1ea75dc-e99d-4262-9585-a9876f02f197', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9276d7a8-7700-4f46-aefe-5bb813e0dd14', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '267327fc-1fab-4656-b91d-de8879863571', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '12aa671f-79b8-4081-b060-5ff0b82b76fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd2759198-4e90-4dd9-8cdd-6e5db558ef58', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf7a80e4-5ce6-4c5c-b2c9-a01d548dd2de', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f7745071-5e63-4b86-8572-1027137533e8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '74607a15-1e8c-4882-8bd9-11e15b1aa45f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '47daf29e-8be1-4593-ae49-82273965eb62', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '66396e80-d7e5-477f-bd74-993fc05d6052', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6823e8ae-bcfb-48fc-a551-4d82f23efcb7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'dbc5c7a6-6a43-4387-adee-f1f439b0c83d', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'db4204f1-c792-4e14-b708-b3f62bfae154', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '32836736-6e35-405d-8525-aefbac4ef387', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '36bf4f50-db36-4aaa-8f1e-10756ac2f615', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '32f93e1e-c28f-4bc8-8442-086e2c4dd05e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e4aee5b5-4ed9-47a8-a0c1-59d2cca16b60', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '66facc9f-6dd0-49fa-b956-61bd187e94e6', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '560356f6-4f90-4405-bd2d-31f018914751', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '92268e21-62a8-49fc-a0ac-172039ffda39', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8c36038a-c748-4a9c-9cd0-d162516b1986', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'cfffa1df-8b4e-45a3-add6-260f7e5c63bc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3x'}, 'c3sqrtx': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '25386586-65c1-4fba-9b7a-18f9543bc4b9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'b4837d5d-6918-4de0-9d32-721e93dd1181', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '80ecedb7-f88d-4ddd-96d3-aac0fa87f9c5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '45ec6c12-852d-47b3-ab3a-647117a6343c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'bc215fec-196d-4b46-944f-819b497ffcd6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'a48029e6-4a77-42b0-9c1a-a3629b22cbc3', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bbfd1e3a-a9c0-4190-8a0c-4daa599a7c7d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'df8aee2d-6e26-471c-8262-a41c9264d912', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3c68fc2d-f084-4024-82eb-635e9fe4c055', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '0577ce0d-a426-4e32-86eb-ae4ca33b6bfa', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9e77d5c9-fb80-4d70-9b0b-7e982213e03c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c43e9908-b84e-499d-b9e9-8701573ab67d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '17367235-01ec-487d-8860-0dbaff1f0f7b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '4f82c255-618e-4003-82de-64403ca9bb70', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e02ef273-353f-4f83-9420-55b4d04cead3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1ea96d2c-25cf-435b-9273-1e563fc82cb6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a4f0c166-ec25-48aa-adca-96ccba0ba018', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '50d22f44-16ca-4667-a186-8e09da28c419', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f9729644-396d-4c74-8ea0-376daaa948b7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0678d4b4-ebd9-4075-bd4d-50182093771f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd442e223-9e24-4ce6-a876-54b473c4b0d9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '011c59ed-c8cb-4d8e-a8c2-72a06c889b82', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '068573c5-17a0-46bb-89ea-2561b5e95be5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6aef87a9-3e78-43d1-ba5b-2cc37c1846ea', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a65fc07e-84bf-4e88-ba5c-de1db671c767', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'c5e52bd6-6e72-4138-8d84-1c5ac13628c4', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '01bf2d98-1f47-4346-aa2b-a25c8bce6854', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3sqrtx'}, 'c4x': {'definition': {'bits': [], 'commands': [{'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'bb692422-6aeb-48fd-bb5c-fc90e495462a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '235c7194-aae8-4a0f-af8b-58af1f854db9', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6cb11a33-6872-4063-bb4b-9ce26b780711', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'feac658d-fb92-4fa4-bd1c-8670e2fd9460', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '7932db81-9279-40da-b36c-3fd5aa701f64', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9b9b1c26-2c2c-4b98-8d83-0e53b270756d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a83cd048-c0c5-4fd5-9057-174a89800c92', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ad7b22fe-5a35-448f-a3ac-a10fb674604a', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '559c4b5b-f179-435f-8058-c1806d7af0e2', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'af7e6db3-c8e0-4294-9d69-b2b770f528fb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6f026361-64e6-4fed-94e0-f35f63931099', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f1ea75dc-e99d-4262-9585-a9876f02f197', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9276d7a8-7700-4f46-aefe-5bb813e0dd14', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '267327fc-1fab-4656-b91d-de8879863571', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '12aa671f-79b8-4081-b060-5ff0b82b76fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd2759198-4e90-4dd9-8cdd-6e5db558ef58', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf7a80e4-5ce6-4c5c-b2c9-a01d548dd2de', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f7745071-5e63-4b86-8572-1027137533e8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '74607a15-1e8c-4882-8bd9-11e15b1aa45f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '47daf29e-8be1-4593-ae49-82273965eb62', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '66396e80-d7e5-477f-bd74-993fc05d6052', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6823e8ae-bcfb-48fc-a551-4d82f23efcb7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'dbc5c7a6-6a43-4387-adee-f1f439b0c83d', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'db4204f1-c792-4e14-b708-b3f62bfae154', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '32836736-6e35-405d-8525-aefbac4ef387', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '36bf4f50-db36-4aaa-8f1e-10756ac2f615', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '32f93e1e-c28f-4bc8-8442-086e2c4dd05e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e4aee5b5-4ed9-47a8-a0c1-59d2cca16b60', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '66facc9f-6dd0-49fa-b956-61bd187e94e6', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '560356f6-4f90-4405-bd2d-31f018914751', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '92268e21-62a8-49fc-a0ac-172039ffda39', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8c36038a-c748-4a9c-9cd0-d162516b1986', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'cfffa1df-8b4e-45a3-add6-260f7e5c63bc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': 'bbf62cd7-e990-40b9-bcc0-8187fed91557', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '413249b1-e59d-49ee-8aed-b569da3b6ea3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f0a8506d-fcec-4b46-b80d-b97886b9889b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '2987270f-a66c-4fa8-9541-583d1add82e7', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6cb11a33-6872-4063-bb4b-9ce26b780711', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'feac658d-fb92-4fa4-bd1c-8670e2fd9460', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '7932db81-9279-40da-b36c-3fd5aa701f64', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9b9b1c26-2c2c-4b98-8d83-0e53b270756d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a83cd048-c0c5-4fd5-9057-174a89800c92', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ad7b22fe-5a35-448f-a3ac-a10fb674604a', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '559c4b5b-f179-435f-8058-c1806d7af0e2', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'af7e6db3-c8e0-4294-9d69-b2b770f528fb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6f026361-64e6-4fed-94e0-f35f63931099', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f1ea75dc-e99d-4262-9585-a9876f02f197', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9276d7a8-7700-4f46-aefe-5bb813e0dd14', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '267327fc-1fab-4656-b91d-de8879863571', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '12aa671f-79b8-4081-b060-5ff0b82b76fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd2759198-4e90-4dd9-8cdd-6e5db558ef58', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf7a80e4-5ce6-4c5c-b2c9-a01d548dd2de', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f7745071-5e63-4b86-8572-1027137533e8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '74607a15-1e8c-4882-8bd9-11e15b1aa45f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '47daf29e-8be1-4593-ae49-82273965eb62', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '66396e80-d7e5-477f-bd74-993fc05d6052', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6823e8ae-bcfb-48fc-a551-4d82f23efcb7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'dbc5c7a6-6a43-4387-adee-f1f439b0c83d', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'db4204f1-c792-4e14-b708-b3f62bfae154', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '32836736-6e35-405d-8525-aefbac4ef387', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '36bf4f50-db36-4aaa-8f1e-10756ac2f615', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '32f93e1e-c28f-4bc8-8442-086e2c4dd05e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e4aee5b5-4ed9-47a8-a0c1-59d2cca16b60', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '66facc9f-6dd0-49fa-b956-61bd187e94e6', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '560356f6-4f90-4405-bd2d-31f018914751', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '874d6808-1f4c-4885-99f6-e40c8ffa678d', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'a692f7f5-3433-4fdf-a4d4-ed50261c437f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9f0b4db5-b82f-407f-9407-6917b51eae06', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '23b19e6c-4d48-4f5f-bc21-6615f014a098', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '92268e21-62a8-49fc-a0ac-172039ffda39', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8c36038a-c748-4a9c-9cd0-d162516b1986', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'cfffa1df-8b4e-45a3-add6-260f7e5c63bc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': 'f3c03bd4-6157-41c7-b0b2-d61cf5d63547', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '94d5630a-8afd-4840-a625-9b4bd6cf363c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '25386586-65c1-4fba-9b7a-18f9543bc4b9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'b4837d5d-6918-4de0-9d32-721e93dd1181', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '80ecedb7-f88d-4ddd-96d3-aac0fa87f9c5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '45ec6c12-852d-47b3-ab3a-647117a6343c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'bc215fec-196d-4b46-944f-819b497ffcd6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'a48029e6-4a77-42b0-9c1a-a3629b22cbc3', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bbfd1e3a-a9c0-4190-8a0c-4daa599a7c7d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'df8aee2d-6e26-471c-8262-a41c9264d912', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3c68fc2d-f084-4024-82eb-635e9fe4c055', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '0577ce0d-a426-4e32-86eb-ae4ca33b6bfa', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9e77d5c9-fb80-4d70-9b0b-7e982213e03c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c43e9908-b84e-499d-b9e9-8701573ab67d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '17367235-01ec-487d-8860-0dbaff1f0f7b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '4f82c255-618e-4003-82de-64403ca9bb70', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e02ef273-353f-4f83-9420-55b4d04cead3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1ea96d2c-25cf-435b-9273-1e563fc82cb6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a4f0c166-ec25-48aa-adca-96ccba0ba018', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '50d22f44-16ca-4667-a186-8e09da28c419', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f9729644-396d-4c74-8ea0-376daaa948b7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0678d4b4-ebd9-4075-bd4d-50182093771f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd442e223-9e24-4ce6-a876-54b473c4b0d9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '011c59ed-c8cb-4d8e-a8c2-72a06c889b82', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '068573c5-17a0-46bb-89ea-2561b5e95be5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6aef87a9-3e78-43d1-ba5b-2cc37c1846ea', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a65fc07e-84bf-4e88-ba5c-de1db671c767', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4dc34d7a-ada3-4297-8135-87d941a7712e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dfc01e77-4cbc-4a9f-81ec-b12340fae2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '92dfe1ad-b657-44e7-a597-d77c7a1eb5ce', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'da55b1db-abb5-442c-a1ec-3f292ba6aaa4', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '56f9a815-b927-4f53-80df-f073a29cf1f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fec039bc-a48a-421d-b826-50fd3a1ff903', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'b456cb80-1ee0-4503-9241-35d33dbd20eb', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '88d87bd3-823a-479b-adb4-ed1d409e80a5', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a6f40bd6-98ce-4480-8d08-750e89f368d4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6e5ace6b-9a03-46c6-8582-0352752fb887', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '65b8e030-aade-4107-9f45-b6f9f3a4b230', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'c5e52bd6-6e72-4138-8d84-1c5ac13628c4', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '05c731fa-c0ea-4d21-8a27-cd36d62ea4af', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'edb43070-d1b4-4d72-8ea6-cecf0b42dcdd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '01bf2d98-1f47-4346-aa2b-a25c8bce6854', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3sqrtx'}, 'id': '56b460aa-ebcf-47ca-b166-fa3e70913b96', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'c4x'}} \ No newline at end of file +_INCLUDE_DEFS={'Rz': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'Rz'}, 'U1q': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi'], 'name': 'U1q'}, 'ZZ': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ZZ'}, 'RZZ': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'RZZ'}, 'Rxxyyzz': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['alpha', 'beta', 'gamma'], 'name': 'Rxxyyzz'}, 'Rxxyyzz_zphase': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['alpha', 'beta', 'gamma', 'z0', 'z1'], 'name': 'Rxxyyzz_zphase'}, 'U': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'U'}, 'x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'e0826dbc-e789-4108-9f91-ab4df07dc927', 'params': ['1', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'x'}, 'y': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'eade3946-3d27-4b87-a019-d54473c56a36', 'params': ['1', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'y'}, 'z': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '27ec013f-d9ad-4464-b30e-26e627c300ae', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'z'}, 'CX': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'CX'}, 'cx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cx'}, 'h': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'h'}, 's': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1907081d-4399-4575-9820-931f1f666849', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 's'}, 'sdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7ca0ddc3-63c7-46bd-ae70-448e9f72ea2a', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sdg'}, 't': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 't'}, 'tdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'c9d0ef90-9700-4e36-b131-b7b0bfa994c2', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'tdg'}, 'rx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '0cb57f5a-12ed-448f-9d48-5d945663df00', 'params': ['theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'rx'}, 'ry': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '2cdd8fe3-0c77-4f67-b7b6-6a04746bb01a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'ry'}, 'rz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '16b8dbda-d405-4d7e-9bd4-a80b12f82e4c', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi'], 'name': 'rz'}, 'cz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9c1e27f7-1ae0-4d0e-8633-61f26facc917', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1920d3db-798c-420b-96d9-735110294bed', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '63aca6ee-6578-4428-92c7-68e8181e7f32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cz'}, 'cy': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7ca0ddc3-63c7-46bd-ae70-448e9f72ea2a', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '2fb18990-90b7-490c-93e5-3d5317ccc13d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '00d9f13d-f15d-4a43-b1f0-d174b8d21961', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1907081d-4399-4575-9820-931f1f666849', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '86472a47-4ca5-405a-9c77-f73d1127af7e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cy'}, 'ch': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6af4dd50-43e0-41e2-a2bd-6f616bed35cb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7ca0ddc3-63c7-46bd-ae70-448e9f72ea2a', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': 'd2cfb8f7-0e85-43be-96a5-0404884bb66b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3947cc18-c15d-48d6-9597-f4fe7a92ac80', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'aff843d9-275e-4138-b4f3-43336050aa35', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '68c8c3a2-4aaa-4573-86a0-053192e1a642', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4fa8d216-1b63-41c8-b3c3-d0ff65b0dac1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1907081d-4399-4575-9820-931f1f666849', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'bcb83ad5-8ebb-4b61-bea4-8e56b23a2335', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'c09eacc1-5c1b-4c97-ab90-09aec9fe052e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'fb46f7c9-9252-45c7-9649-a1fa6eb494c5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1907081d-4399-4575-9820-931f1f666849', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'da5a59c9-fa0d-4d89-a471-4c538afba687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'e0826dbc-e789-4108-9f91-ab4df07dc927', 'params': ['1', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'x'}, 'id': '5d35722c-fd2b-46c4-a5f0-e4ab351d0024', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ch'}, 'ccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '978b2c5f-6928-49a8-876e-968d2c32073e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd67c6a5e-8952-4537-9c2f-9529178dae38', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'c9d0ef90-9700-4e36-b131-b7b0bfa994c2', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '4d6c50fc-cf9a-4efb-9cba-db17cade7c66', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '06e42912-d6c7-434e-8961-a75813a8aecc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'b8cf699b-2dca-474f-bc81-d1f7c120b8f5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '11bb8da5-10ce-43ea-8b37-2a94f5672341', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '195d7699-87c4-471f-83ba-63785520b2da', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'c9d0ef90-9700-4e36-b131-b7b0bfa994c2', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '8a233b44-e78b-4fa2-ac8b-99df5c25469f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'cd99b914-571a-42db-ad21-19967f162c44', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f1ebb5e6-d4e5-4659-a4d2-376273234134', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'b3957efc-5ef3-48e7-9d31-0d74e3a31c72', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'a2b7f7a5-bd88-4efb-81de-6790534640d9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'c9d0ef90-9700-4e36-b131-b7b0bfa994c2', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'b56ed370-58f9-4337-911a-50f2a670b343', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1115a66a-bbcb-4831-b8a1-60b1542ccb13', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ef08a809-d880-46c0-bf4f-e8db0e2ede62', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'ccx'}, 'crz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '094fa9f3-63e5-4182-83e4-0362922d0618', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ca82638e-13a6-455a-981b-57327e49140b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1544e478-d94d-47b9-91da-c2e51a89a915', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a2640698-169a-4130-9d23-f887e3fec1ad', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'crz'}, 'cu1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cu1'}, 'cu3': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '04c85790-a93b-4c63-b337-b961e378b219', 'params': ['(1/2)*(pi*lam - pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'be983c02-6d12-470f-8937-e3b152d8ad5a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3f498065-0147-4983-ae47-0877ab20ecae', 'params': ['(-1/2)*(pi*lam + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '1bc5683f-330f-4745-bfcc-2440eb2c5750', 'params': ['(-1/2)*theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd519af45-1dae-415c-93bd-361f6d957428', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96b2d82b-1d30-4f88-a2f5-1673a86a3cb6', 'params': ['(1/2)*theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2a2d5a4e-d639-4184-a65d-91548e02d433', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'cu3'}, 'csx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'be37469f-23e4-478b-9771-d0ba7f5dd93c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '0cc30e21-f9a2-402c-8a92-a9dc3b360011', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '624d2196-142f-466c-a957-fc1d7196c0cb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csx'}, 'cs': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'd09a2dc6-047f-4224-8ed4-59a4198f6689', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cs'}, 'csdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'fb408ce9-c395-4525-a23a-64314fc8b682', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csdg'}, 'cu': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['gamma'], 'type': 'U1'}}, {'args': [['q', [1]]], 'op': {'params': ['(1/2)*(pi*lam - pi*phi)/pi'], 'type': 'U1'}}, {'args': [['q', [0]]], 'op': {'params': ['(1/2)*(pi*lam + pi*phi)/pi'], 'type': 'U1'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd6e82542-a414-4d08-8930-ed99341860ae', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'params': ['(-1/2)*theta', '0', '(-1/2)*(pi*lam + pi*phi)/pi'], 'type': 'U3'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3b0a24bf-c43c-4549-be0c-291a857893d6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'params': ['(1/2)*theta', 'phi', '0'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lam', 'gamma'], 'name': 'cu'}, 'u': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '951e1d33-3b46-4ece-97ff-9cb899a7a52c', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'u'}, 'u3': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'u3'}, 'u2': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '45f0ebad-449b-4d40-825b-1258b12c7ab5', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi', 'lam'], 'name': 'u2'}, 'u1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'u1'}, 'id': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'cb5a2cd4-456e-4736-897b-2e1d9d98a062', 'params': ['0', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'id'}, 'p': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'p'}, 'sx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7ca0ddc3-63c7-46bd-ae70-448e9f72ea2a', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '8c55c7ad-f7f7-40b5-9d23-44d7ea7bce37', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '079f3ef7-f87d-4741-8478-d44a9dd2dde2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7ca0ddc3-63c7-46bd-ae70-448e9f72ea2a', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '3e4a638b-0c4c-449e-b6ea-b759cf2b7979', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sx'}, 'sxdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1907081d-4399-4575-9820-931f1f666849', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '38df31bc-769d-4131-9ab2-42ed686f0d40', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c59ecd83-b321-45d4-91d7-dddbd2f65653', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1907081d-4399-4575-9820-931f1f666849', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '4a2ef3a3-58d4-4fce-b99f-687a89df9b5c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sxdg'}, 'swap': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8e3f77be-7d8d-46b1-a884-701965f99a73', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0641d920-d8a5-459a-b231-246c5071aa90', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1b07e273-8892-4e9f-b25f-bc58c8fa65ae', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'swap'}, 'cswap': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '772e1653-e890-4f6b-bfcf-b86beaffe312', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '978b2c5f-6928-49a8-876e-968d2c32073e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd67c6a5e-8952-4537-9c2f-9529178dae38', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'c9d0ef90-9700-4e36-b131-b7b0bfa994c2', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '4d6c50fc-cf9a-4efb-9cba-db17cade7c66', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '06e42912-d6c7-434e-8961-a75813a8aecc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'b8cf699b-2dca-474f-bc81-d1f7c120b8f5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '11bb8da5-10ce-43ea-8b37-2a94f5672341', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '195d7699-87c4-471f-83ba-63785520b2da', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'c9d0ef90-9700-4e36-b131-b7b0bfa994c2', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '8a233b44-e78b-4fa2-ac8b-99df5c25469f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'cd99b914-571a-42db-ad21-19967f162c44', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f1ebb5e6-d4e5-4659-a4d2-376273234134', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'b3957efc-5ef3-48e7-9d31-0d74e3a31c72', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '4fe5183f-a1f5-477a-8b62-d62cb603706a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'a2b7f7a5-bd88-4efb-81de-6790534640d9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'c9d0ef90-9700-4e36-b131-b7b0bfa994c2', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'b56ed370-58f9-4337-911a-50f2a670b343', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1115a66a-bbcb-4831-b8a1-60b1542ccb13', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ef08a809-d880-46c0-bf4f-e8db0e2ede62', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'name': 'ccx'}, 'id': 'dbf895e8-6b98-4fd6-b0ee-fba53149683d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8dc0101e-0468-48ad-b931-e1aa14a7ea6c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'cswap'}, 'crx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'fccf3c27-5fe5-4a0e-96cc-7356dd20f94c', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '604408e3-1739-4947-b035-91bb28338d20', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '8c50566f-cefa-4613-8284-542afe38df56', 'params': ['(-1/2)*lam', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1b1926ff-93ae-4e9e-829e-a5dd6ad29ca1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a2ea29d4-ad9c-40a6-9dfa-00e30ed1a310', 'params': ['(1/2)*lam', '-1/2', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'crx'}, 'cry': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '2cdd8fe3-0c77-4f67-b7b6-6a04746bb01a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': 'd709b5e4-f1a2-48e1-bb66-ba79cb388339', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8c972f8f-73a2-4c88-af59-3f04ff44aed7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '2cdd8fe3-0c77-4f67-b7b6-6a04746bb01a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': 'a2e02890-e43b-4099-bcbb-86f858e20e8f', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '81487584-462c-4875-883b-5a34aa81b4a7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cry'}, 'cp': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f8dd55ba-eb6d-4bb3-b771-8e1b4d684139', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5709964c-9d31-464f-b616-60a52162ffe5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '42ef00c8-7fd6-40fa-9f97-786356a2002a', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7e4a099b-d306-4914-93f6-ae2b5fae49c4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8ac58b9a-ce95-4781-a013-5d28fb9036b8', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cp'}, 'rxx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '7e4e64c7-b593-4d7c-9bb4-3122ab463df2', 'params': ['1/2', 'theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9c065a87-6738-417a-bfe8-518f01476fcd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8c983c0c-1e50-4d64-becd-a3b331ff934f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8221b815-3f7a-4171-bd28-41bc0ad7157c', 'params': ['-theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c3efb33d-04c2-4ad6-b0ef-d13de7a1f003', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '45f0ebad-449b-4d40-825b-1258b12c7ab5', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '85985b8d-eeec-4284-9433-b9009182ac91', 'params': ['-1', '(-pi*theta + pi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '688217bb-2c80-4b62-9456-ecd48b4108c1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rxx'}, 'rzz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'RZZ'}, 'id': 'bab51cbc-061e-4c3d-8c2c-05bf3dbb6a83', 'params': ['theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rzz'}, 'rccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '45f0ebad-449b-4d40-825b-1258b12c7ab5', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '37b51371-64a9-4472-8519-a4beffe2f2de', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '873ab93a-6354-47e6-9133-329e58f92f06', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2e31bf80-55e5-4326-9bf6-1067826bdc45', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '85e0b0c0-a086-47a1-97d2-4ca64a46ef0b', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '686be065-062d-4038-92ed-71ff21be18ef', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'd7fb0ac1-e23c-4c36-8a61-8bbdd72f8adf', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e6f39fba-c42d-4a26-b07f-aa80928895a5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'b6748b42-4b71-43ca-9d51-3604613f044f', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '45f0ebad-449b-4d40-825b-1258b12c7ab5', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'bce4ddfb-3959-4063-bd55-da1bd431b4d5', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'rccx'}, 'rc3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '45f0ebad-449b-4d40-825b-1258b12c7ab5', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'b4f9a792-7dc1-4442-8552-103a08767da1', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'aeefd618-5287-438b-9789-175d15a761f6', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f06f7784-e0d2-4a11-983e-c84372e8b445', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8a426480-0e33-45fe-b2b0-7ccb49a17f43', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '45f0ebad-449b-4d40-825b-1258b12c7ab5', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'b983cc0d-da7f-428b-8e9b-ee1b1b05f03b', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1c53766b-be54-4c0d-8f33-31a43a5c0659', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '674e71ae-32d7-4e05-a292-f2f68577ba33', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b3a7724e-ad1b-4e88-b0c2-dd4e72800ea6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '288b897a-4df6-4abe-8641-1b9c4f2aba77', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dff27870-8459-4204-8c88-d955080488ca', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'aba772c6-1ed1-41e1-9d1d-37636ed4e877', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b3105546-511a-4d9a-8498-4c3043c31655', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'd4232e46-2b5e-496a-ab8b-06777f0a57bf', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '45f0ebad-449b-4d40-825b-1258b12c7ab5', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'f6a80145-bf3d-4540-b27a-e107d6b1704c', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ac3cf60c-56fc-444e-8d08-5aa361081852', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7da1e7e8-d82e-4331-8dee-bf2f8beeffd7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '24d3c289-a798-4576-b6a5-3fcfc57d140b', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4c5d49f7-44a9-48f9-a457-563dcff48e25', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'd8191994-8300-4302-a3bc-b557663d3064', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '45f0ebad-449b-4d40-825b-1258b12c7ab5', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '0109c17a-8bd4-4f28-af91-96a1d2d0968f', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'rc3x'}, 'c3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '47d3fa84-a0f3-487f-8005-ce1ca60e7422', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5a1f6301-7266-4e1f-91fe-d5971d8b3511', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'fcf40289-958f-4eef-8d7b-1a07c13eabcc', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'dc5f338a-bb32-494e-86dd-228204e62781', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bae8cae1-6c2e-45cc-a958-9eef9369da9c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b43435bb-b7d0-45ff-a1eb-1732980fe3df', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3821c8dd-22da-4df3-b9f4-ce106b10872a', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c72b932d-0e8d-413e-a20c-028e0259ea64', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fac8fedd-f010-49ea-89a8-ad6c3dd32f43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5955f1be-4dde-4e81-aa09-1c736dea7c6e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b05b75d2-d057-49f3-a8d6-504622488dee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '215d69dc-f624-42e9-a191-4e31974df9aa', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '26b65991-caca-429c-863e-5d2f9c015205', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '2c3ddaa5-ab2c-4673-832d-cdd07028ad95', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3cd3fdf3-47b3-4387-9d2c-d9d269d71d18', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'eab03cca-2f9c-4933-8e69-e14c1d03b79c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '659999d7-c80b-47d0-98cc-3dbbe21d33ae', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8bb24c8f-433f-44fe-b92a-913c334101f2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c6599f88-0dd9-4644-9006-c33aa5ae7c05', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c0932bb0-2b54-4185-8479-d50e1ff2e57a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f377e2b7-af53-4875-9b9b-e7846f0abf3f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ef45f9b1-9970-40fd-a9d2-8b704188ab3c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '21952067-0edd-4dda-8345-40c2fd27e2e2', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7de29a03-fa66-4c1a-8f65-3ea886cbc3db', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '12772b2e-f173-4f5c-a52b-166d660650a7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fbc30da6-261e-4ad6-94c9-9cfba7ad25f4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8740f259-9f19-47a0-92bf-2401f6ca557b', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '25a8bf8d-c6c3-4394-8916-06b9a9525dc8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '803b4852-0f3a-45e7-af01-d098a238da4e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '25d311fc-217d-4349-91ab-502bc324fc43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3ad4e064-3436-4af2-8480-d3b77f5df39d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3x'}, 'c3sqrtx': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6851cef6-9b27-463a-bc32-719ca74792ec', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'c6d8dc31-3063-4787-b2b5-a11df6ef24e1', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '048ab0a9-ad1c-4657-ab3d-08f503ff0a00', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1e038e30-d20a-4297-bb0e-0280618b5f42', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b5fdbd13-d51f-4815-b70a-28a87f8099aa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'b5de834f-83cf-465f-84e1-76b44bf876d8', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e10e0d1f-f7bd-4f0f-bf65-f6e018be13b4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'acafa3ad-db1a-4a01-b2c1-d0e7c1788a7a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd360d3cc-a0b2-4990-8f23-5e56f8bf3d71', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '0e9a6a50-80e2-467a-afd2-f5883cf1f99f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ac4e3022-f4af-4d1a-bd53-491335afa010', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1229ce6f-34eb-44ef-aade-f13231e065bb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0140703e-0772-43a0-9228-fa8336714163', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '69b7436d-8a00-49fe-a2cc-c4054dee9b51', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a542c9d2-da44-4492-a7d3-9a4da0df5535', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c2a3ba50-1252-4c1b-9fbe-b00b1f9bce02', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9b6da99a-fc78-4c07-9120-6ca84c012c20', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '7cd71b6c-a6bb-4120-bb21-bbc711654aaf', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b57afd63-76f3-4c0d-a2a6-fce133b3a7b2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '03f800c2-abc4-4868-bc6e-eaca9ed273ab', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '834cd725-2428-4e4d-b120-74d9c7561040', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'b9ce1b71-faff-445e-9383-49fc00d09772', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '37d8599b-726a-4d67-86fd-053481f9bdc9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1273b74d-f821-4af2-9372-1ad7da3ca631', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'dcc29c56-2e74-4f19-9ed2-7ba60182fd5f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '64143de1-4bf9-4b67-bc78-a89bb86a96ce', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c1d37937-c73c-45b0-99f1-32042286ea69', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3sqrtx'}, 'c4x': {'definition': {'bits': [], 'commands': [{'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7d7b54cb-815e-4e94-9e9e-19c112a7105c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '218dccf2-aa85-46cd-8f01-abb7794e6839', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '47d3fa84-a0f3-487f-8005-ce1ca60e7422', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5a1f6301-7266-4e1f-91fe-d5971d8b3511', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'fcf40289-958f-4eef-8d7b-1a07c13eabcc', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'dc5f338a-bb32-494e-86dd-228204e62781', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bae8cae1-6c2e-45cc-a958-9eef9369da9c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b43435bb-b7d0-45ff-a1eb-1732980fe3df', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3821c8dd-22da-4df3-b9f4-ce106b10872a', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c72b932d-0e8d-413e-a20c-028e0259ea64', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fac8fedd-f010-49ea-89a8-ad6c3dd32f43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5955f1be-4dde-4e81-aa09-1c736dea7c6e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b05b75d2-d057-49f3-a8d6-504622488dee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '215d69dc-f624-42e9-a191-4e31974df9aa', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '26b65991-caca-429c-863e-5d2f9c015205', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '2c3ddaa5-ab2c-4673-832d-cdd07028ad95', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3cd3fdf3-47b3-4387-9d2c-d9d269d71d18', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'eab03cca-2f9c-4933-8e69-e14c1d03b79c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '659999d7-c80b-47d0-98cc-3dbbe21d33ae', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8bb24c8f-433f-44fe-b92a-913c334101f2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c6599f88-0dd9-4644-9006-c33aa5ae7c05', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c0932bb0-2b54-4185-8479-d50e1ff2e57a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f377e2b7-af53-4875-9b9b-e7846f0abf3f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ef45f9b1-9970-40fd-a9d2-8b704188ab3c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '21952067-0edd-4dda-8345-40c2fd27e2e2', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7de29a03-fa66-4c1a-8f65-3ea886cbc3db', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '12772b2e-f173-4f5c-a52b-166d660650a7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fbc30da6-261e-4ad6-94c9-9cfba7ad25f4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8740f259-9f19-47a0-92bf-2401f6ca557b', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '25a8bf8d-c6c3-4394-8916-06b9a9525dc8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '803b4852-0f3a-45e7-af01-d098a238da4e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '25d311fc-217d-4349-91ab-502bc324fc43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3ad4e064-3436-4af2-8480-d3b77f5df39d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '47c50854-9d8f-4b22-9409-7ef7f8c82c1f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '56ece0ab-3b83-4743-93f4-e0b52c1b429c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'cc76b381-88da-4e50-a6c1-d6223b2e9056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '2ce33343-441b-4309-a87b-ae404218c4f1', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '47d3fa84-a0f3-487f-8005-ce1ca60e7422', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5a1f6301-7266-4e1f-91fe-d5971d8b3511', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'fcf40289-958f-4eef-8d7b-1a07c13eabcc', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'dc5f338a-bb32-494e-86dd-228204e62781', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bae8cae1-6c2e-45cc-a958-9eef9369da9c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b43435bb-b7d0-45ff-a1eb-1732980fe3df', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3821c8dd-22da-4df3-b9f4-ce106b10872a', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c72b932d-0e8d-413e-a20c-028e0259ea64', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fac8fedd-f010-49ea-89a8-ad6c3dd32f43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5955f1be-4dde-4e81-aa09-1c736dea7c6e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b05b75d2-d057-49f3-a8d6-504622488dee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '215d69dc-f624-42e9-a191-4e31974df9aa', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '26b65991-caca-429c-863e-5d2f9c015205', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '2c3ddaa5-ab2c-4673-832d-cdd07028ad95', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3cd3fdf3-47b3-4387-9d2c-d9d269d71d18', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'eab03cca-2f9c-4933-8e69-e14c1d03b79c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '659999d7-c80b-47d0-98cc-3dbbe21d33ae', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '8bb24c8f-433f-44fe-b92a-913c334101f2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c6599f88-0dd9-4644-9006-c33aa5ae7c05', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c0932bb0-2b54-4185-8479-d50e1ff2e57a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f377e2b7-af53-4875-9b9b-e7846f0abf3f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ef45f9b1-9970-40fd-a9d2-8b704188ab3c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '21952067-0edd-4dda-8345-40c2fd27e2e2', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7de29a03-fa66-4c1a-8f65-3ea886cbc3db', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '12772b2e-f173-4f5c-a52b-166d660650a7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fbc30da6-261e-4ad6-94c9-9cfba7ad25f4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8740f259-9f19-47a0-92bf-2401f6ca557b', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '25a8bf8d-c6c3-4394-8916-06b9a9525dc8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a86e0c29-4968-4dc8-9076-b90e1cfbba9c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '371ebfd0-b5a6-4a3c-b34f-fe3ccbf42b8a', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a0d51179-2db3-42a0-89b7-65c27cd4c9aa', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '81db4a05-632c-4c55-adc2-9c36e43bdb07', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '803b4852-0f3a-45e7-af01-d098a238da4e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '25d311fc-217d-4349-91ab-502bc324fc43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3ad4e064-3436-4af2-8480-d3b77f5df39d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '403e57a8-7cbd-479d-9444-282d7aa54fe7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '651ef69e-f909-447c-b065-885f98d3cf53', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6851cef6-9b27-463a-bc32-719ca74792ec', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'c6d8dc31-3063-4787-b2b5-a11df6ef24e1', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '048ab0a9-ad1c-4657-ab3d-08f503ff0a00', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1e038e30-d20a-4297-bb0e-0280618b5f42', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b5fdbd13-d51f-4815-b70a-28a87f8099aa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'b5de834f-83cf-465f-84e1-76b44bf876d8', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e10e0d1f-f7bd-4f0f-bf65-f6e018be13b4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'acafa3ad-db1a-4a01-b2c1-d0e7c1788a7a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd360d3cc-a0b2-4990-8f23-5e56f8bf3d71', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '0e9a6a50-80e2-467a-afd2-f5883cf1f99f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ac4e3022-f4af-4d1a-bd53-491335afa010', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1229ce6f-34eb-44ef-aade-f13231e065bb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0140703e-0772-43a0-9228-fa8336714163', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '69b7436d-8a00-49fe-a2cc-c4054dee9b51', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a542c9d2-da44-4492-a7d3-9a4da0df5535', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c2a3ba50-1252-4c1b-9fbe-b00b1f9bce02', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9b6da99a-fc78-4c07-9120-6ca84c012c20', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '7cd71b6c-a6bb-4120-bb21-bbc711654aaf', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b57afd63-76f3-4c0d-a2a6-fce133b3a7b2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '03f800c2-abc4-4868-bc6e-eaca9ed273ab', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '834cd725-2428-4e4d-b120-74d9c7561040', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'b9ce1b71-faff-445e-9383-49fc00d09772', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '37d8599b-726a-4d67-86fd-053481f9bdc9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1273b74d-f821-4af2-9372-1ad7da3ca631', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'dcc29c56-2e74-4f19-9ed2-7ba60182fd5f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0b39ed6d-274b-41df-9a1d-0b7f43659778', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf2eb9e3-7a53-401e-9876-7df343bd4e32', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c79832d-dc8f-4f10-aef8-b21f1fe8337e', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '4c3bd6ec-5d16-41ad-b49a-c0f94ac7a955', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '9206284c-0ea9-44bf-9f5c-811013ee347a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '8c63bdbb-a3b0-4620-bf58-647598e176cf', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f2fdefff-ad93-40a2-8c83-c91035dc8d1e', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '950b0caf-ce5e-42bd-9a00-c472764c16f3', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'ed9c9c27-36c3-471a-97c4-48f6302b695f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0c92189d-46ac-49be-b105-41b47ceeade1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf0ada0c-13c3-466b-951f-13dbfc491f48', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '64143de1-4bf9-4b67-bc78-a89bb86a96ce', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd2f7ea24-ef73-436e-9645-f20c672b8474', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec3ee54e-7173-4bae-b01e-d8912e2086f2', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c1d37937-c73c-45b0-99f1-32042286ea69', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3sqrtx'}, 'id': '896170cd-80c0-4e12-9d55-addc8ec8fb39', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'c4x'}} \ No newline at end of file diff --git a/pytket/pytket/qasm/includes/_hqslib1_dev_decls.py b/pytket/pytket/qasm/includes/_hqslib1_dev_decls.py index 47c0a74ff3..d6548e5c81 100644 --- a/pytket/pytket/qasm/includes/_hqslib1_dev_decls.py +++ b/pytket/pytket/qasm/includes/_hqslib1_dev_decls.py @@ -1,2 +1,2 @@ """DO NOT EDIT! GENERATED BY load_includes.py.""" -_INCLUDE_DECLS={'Rz': {'args': ['lam'], 'name': 'Rz'}, 'U1q': {'args': ['theta', 'phi'], 'name': 'U1q'}, 'ZZ': {'args': [], 'name': 'ZZ'}, 'RZZ': {'args': ['theta'], 'name': 'RZZ'}, 'Rxxyyzz': {'args': ['alpha', 'beta', 'gamma'], 'name': 'Rxxyyzz'}, 'Rxxyyzz_zphase': {'args': ['alpha', 'beta', 'gamma', 'z0', 'z1'], 'name': 'Rxxyyzz_zphase'}, 'U': {'args': ['theta', 'phi', 'lam'], 'name': 'U'}, 'x': {'args': [], 'name': 'x'}, 'y': {'args': [], 'name': 'y'}, 'z': {'args': [], 'name': 'z'}, 'CX': {'args': [], 'name': 'CX'}, 'cx': {'args': [], 'name': 'cx'}, 'h': {'args': [], 'name': 'h'}, 's': {'args': [], 'name': 's'}, 'sdg': {'args': [], 'name': 'sdg'}, 't': {'args': [], 'name': 't'}, 'tdg': {'args': [], 'name': 'tdg'}, 'rx': {'args': ['theta'], 'name': 'rx'}, 'ry': {'args': ['theta'], 'name': 'ry'}, 'rz': {'args': ['phi'], 'name': 'rz'}, 'cz': {'args': [], 'name': 'cz'}, 'cy': {'args': [], 'name': 'cy'}, 'ch': {'args': [], 'name': 'ch'}, 'ccx': {'args': [], 'name': 'ccx'}, 'crz': {'args': ['lam'], 'name': 'crz'}, 'cu1': {'args': ['lam'], 'name': 'cu1'}, 'cu3': {'args': ['theta', 'phi', 'lam'], 'name': 'cu3'}, 'csx': {'args': [], 'name': 'csx'}, 'cu': {'args': ['theta', 'phi', 'lam', 'gamma'], 'name': 'cu'}, 'u': {'args': ['theta', 'phi', 'lam'], 'name': 'u'}, 'u3': {'args': ['theta', 'phi', 'lam'], 'name': 'u3'}, 'u2': {'args': ['phi', 'lam'], 'name': 'u2'}, 'u1': {'args': ['lam'], 'name': 'u1'}, 'id': {'args': [], 'name': 'id'}, 'p': {'args': ['lam'], 'name': 'p'}, 'sx': {'args': [], 'name': 'sx'}, 'sxdg': {'args': [], 'name': 'sxdg'}, 'swap': {'args': [], 'name': 'swap'}, 'cswap': {'args': [], 'name': 'cswap'}, 'crx': {'args': ['lam'], 'name': 'crx'}, 'cry': {'args': ['lam'], 'name': 'cry'}, 'cp': {'args': ['lam'], 'name': 'cp'}, 'rxx': {'args': ['theta'], 'name': 'rxx'}, 'rzz': {'args': ['theta'], 'name': 'rzz'}, 'rccx': {'args': [], 'name': 'rccx'}, 'rc3x': {'args': [], 'name': 'rc3x'}, 'c3x': {'args': [], 'name': 'c3x'}, 'c3sqrtx': {'args': [], 'name': 'c3sqrtx'}, 'c4x': {'args': [], 'name': 'c4x'}, 'sleep': {'args': ['t'], 'name': 'sleep'}, 'order2': {'args': [], 'name': 'order2'}, 'order3': {'args': [], 'name': 'order3'}, 'order4': {'args': [], 'name': 'order4'}, 'order5': {'args': [], 'name': 'order5'}, 'order6': {'args': [], 'name': 'order6'}, 'order7': {'args': [], 'name': 'order7'}, 'order8': {'args': [], 'name': 'order8'}, 'order9': {'args': [], 'name': 'order9'}, 'order10': {'args': [], 'name': 'order10'}, 'order11': {'args': [], 'name': 'order11'}, 'order12': {'args': [], 'name': 'order12'}, 'order13': {'args': [], 'name': 'order13'}, 'order14': {'args': [], 'name': 'order14'}, 'order15': {'args': [], 'name': 'order15'}, 'order16': {'args': [], 'name': 'order16'}, 'order17': {'args': [], 'name': 'order17'}, 'order18': {'args': [], 'name': 'order18'}, 'order19': {'args': [], 'name': 'order19'}, 'order20': {'args': [], 'name': 'order20'}, 'group2': {'args': [], 'name': 'group2'}, 'group3': {'args': [], 'name': 'group3'}, 'group4': {'args': [], 'name': 'group4'}, 'group5': {'args': [], 'name': 'group5'}, 'group6': {'args': [], 'name': 'group6'}, 'group7': {'args': [], 'name': 'group7'}, 'group8': {'args': [], 'name': 'group8'}, 'group9': {'args': [], 'name': 'group9'}, 'group10': {'args': [], 'name': 'group10'}, 'group11': {'args': [], 'name': 'group11'}, 'group12': {'args': [], 'name': 'group12'}, 'group13': {'args': [], 'name': 'group13'}, 'group14': {'args': [], 'name': 'group14'}, 'group15': {'args': [], 'name': 'group15'}, 'group16': {'args': [], 'name': 'group16'}, 'group17': {'args': [], 'name': 'group17'}, 'group18': {'args': [], 'name': 'group18'}, 'group19': {'args': [], 'name': 'group19'}, 'group20': {'args': [], 'name': 'group20'}} \ No newline at end of file +_INCLUDE_DECLS={'Rz': {'args': ['lam'], 'name': 'Rz'}, 'U1q': {'args': ['theta', 'phi'], 'name': 'U1q'}, 'ZZ': {'args': [], 'name': 'ZZ'}, 'RZZ': {'args': ['theta'], 'name': 'RZZ'}, 'Rxxyyzz': {'args': ['alpha', 'beta', 'gamma'], 'name': 'Rxxyyzz'}, 'Rxxyyzz_zphase': {'args': ['alpha', 'beta', 'gamma', 'z0', 'z1'], 'name': 'Rxxyyzz_zphase'}, 'U': {'args': ['theta', 'phi', 'lam'], 'name': 'U'}, 'x': {'args': [], 'name': 'x'}, 'y': {'args': [], 'name': 'y'}, 'z': {'args': [], 'name': 'z'}, 'CX': {'args': [], 'name': 'CX'}, 'cx': {'args': [], 'name': 'cx'}, 'h': {'args': [], 'name': 'h'}, 's': {'args': [], 'name': 's'}, 'sdg': {'args': [], 'name': 'sdg'}, 't': {'args': [], 'name': 't'}, 'tdg': {'args': [], 'name': 'tdg'}, 'rx': {'args': ['theta'], 'name': 'rx'}, 'ry': {'args': ['theta'], 'name': 'ry'}, 'rz': {'args': ['phi'], 'name': 'rz'}, 'cz': {'args': [], 'name': 'cz'}, 'cy': {'args': [], 'name': 'cy'}, 'ch': {'args': [], 'name': 'ch'}, 'ccx': {'args': [], 'name': 'ccx'}, 'crz': {'args': ['lam'], 'name': 'crz'}, 'cu1': {'args': ['lam'], 'name': 'cu1'}, 'cu3': {'args': ['theta', 'phi', 'lam'], 'name': 'cu3'}, 'csx': {'args': [], 'name': 'csx'}, 'cs': {'args': [], 'name': 'cs'}, 'csdg': {'args': [], 'name': 'csdg'}, 'cu': {'args': ['theta', 'phi', 'lam', 'gamma'], 'name': 'cu'}, 'u': {'args': ['theta', 'phi', 'lam'], 'name': 'u'}, 'u3': {'args': ['theta', 'phi', 'lam'], 'name': 'u3'}, 'u2': {'args': ['phi', 'lam'], 'name': 'u2'}, 'u1': {'args': ['lam'], 'name': 'u1'}, 'id': {'args': [], 'name': 'id'}, 'p': {'args': ['lam'], 'name': 'p'}, 'sx': {'args': [], 'name': 'sx'}, 'sxdg': {'args': [], 'name': 'sxdg'}, 'swap': {'args': [], 'name': 'swap'}, 'cswap': {'args': [], 'name': 'cswap'}, 'crx': {'args': ['lam'], 'name': 'crx'}, 'cry': {'args': ['lam'], 'name': 'cry'}, 'cp': {'args': ['lam'], 'name': 'cp'}, 'rxx': {'args': ['theta'], 'name': 'rxx'}, 'rzz': {'args': ['theta'], 'name': 'rzz'}, 'rccx': {'args': [], 'name': 'rccx'}, 'rc3x': {'args': [], 'name': 'rc3x'}, 'c3x': {'args': [], 'name': 'c3x'}, 'c3sqrtx': {'args': [], 'name': 'c3sqrtx'}, 'c4x': {'args': [], 'name': 'c4x'}, 'sleep': {'args': ['t'], 'name': 'sleep'}, 'order2': {'args': [], 'name': 'order2'}, 'order3': {'args': [], 'name': 'order3'}, 'order4': {'args': [], 'name': 'order4'}, 'order5': {'args': [], 'name': 'order5'}, 'order6': {'args': [], 'name': 'order6'}, 'order7': {'args': [], 'name': 'order7'}, 'order8': {'args': [], 'name': 'order8'}, 'order9': {'args': [], 'name': 'order9'}, 'order10': {'args': [], 'name': 'order10'}, 'order11': {'args': [], 'name': 'order11'}, 'order12': {'args': [], 'name': 'order12'}, 'order13': {'args': [], 'name': 'order13'}, 'order14': {'args': [], 'name': 'order14'}, 'order15': {'args': [], 'name': 'order15'}, 'order16': {'args': [], 'name': 'order16'}, 'order17': {'args': [], 'name': 'order17'}, 'order18': {'args': [], 'name': 'order18'}, 'order19': {'args': [], 'name': 'order19'}, 'order20': {'args': [], 'name': 'order20'}, 'group2': {'args': [], 'name': 'group2'}, 'group3': {'args': [], 'name': 'group3'}, 'group4': {'args': [], 'name': 'group4'}, 'group5': {'args': [], 'name': 'group5'}, 'group6': {'args': [], 'name': 'group6'}, 'group7': {'args': [], 'name': 'group7'}, 'group8': {'args': [], 'name': 'group8'}, 'group9': {'args': [], 'name': 'group9'}, 'group10': {'args': [], 'name': 'group10'}, 'group11': {'args': [], 'name': 'group11'}, 'group12': {'args': [], 'name': 'group12'}, 'group13': {'args': [], 'name': 'group13'}, 'group14': {'args': [], 'name': 'group14'}, 'group15': {'args': [], 'name': 'group15'}, 'group16': {'args': [], 'name': 'group16'}, 'group17': {'args': [], 'name': 'group17'}, 'group18': {'args': [], 'name': 'group18'}, 'group19': {'args': [], 'name': 'group19'}, 'group20': {'args': [], 'name': 'group20'}} \ No newline at end of file diff --git a/pytket/pytket/qasm/includes/_hqslib1_dev_defs.py b/pytket/pytket/qasm/includes/_hqslib1_dev_defs.py index 0dfde2b365..107c71d29e 100644 --- a/pytket/pytket/qasm/includes/_hqslib1_dev_defs.py +++ b/pytket/pytket/qasm/includes/_hqslib1_dev_defs.py @@ -1,2 +1,2 @@ """DO NOT EDIT! GENERATED BY load_includes.py.""" -_INCLUDE_DEFS={'Rz': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'Rz'}, 'U1q': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi'], 'name': 'U1q'}, 'ZZ': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ZZ'}, 'RZZ': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'RZZ'}, 'Rxxyyzz': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['alpha', 'beta', 'gamma'], 'name': 'Rxxyyzz'}, 'Rxxyyzz_zphase': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['alpha', 'beta', 'gamma', 'z0', 'z1'], 'name': 'Rxxyyzz_zphase'}, 'U': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'U'}, 'x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '260b70c3-f3ee-4aac-910f-08ba4d0d5da3', 'params': ['1', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'x'}, 'y': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'ba1aa822-3e0c-42c2-a04e-75f1df548c98', 'params': ['1', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'y'}, 'z': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ae408fe4-82c8-452c-aeef-e76c8e70427f', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'z'}, 'CX': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'CX'}, 'cx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cx'}, 'h': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'h'}, 's': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5b454a67-0a4c-485f-9e74-c027e62a66ca', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 's'}, 'sdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0ebbee01-1e43-4be6-883e-f5d4dce24d35', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sdg'}, 't': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 't'}, 'tdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e0cf3b03-6645-4fc6-8d5a-99256b39a492', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'tdg'}, 'rx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '41284056-c76c-4ac7-8d3f-8e9dc593180e', 'params': ['theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'rx'}, 'ry': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '183f4683-bb07-4644-86d0-287eb250cc0c', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'ry'}, 'rz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0782c84d-cfac-4a25-84dd-7fac6682f5e9', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi'], 'name': 'rz'}, 'cz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '33aaf803-01a9-4448-a6b8-570d25dc15c6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3ef61201-8b2a-4cae-bc07-dabb866bcda5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '5fe5a172-dbfd-43d6-960f-7a733b8e3484', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cz'}, 'cy': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0ebbee01-1e43-4be6-883e-f5d4dce24d35', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '0ceb1212-d5a3-439f-9221-6feebe26f22a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3357fd1b-1725-4cf8-af47-a470ec760685', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5b454a67-0a4c-485f-9e74-c027e62a66ca', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'd6995f17-5253-44fe-96c4-66087f38973b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cy'}, 'ch': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'e3c658ad-599f-4448-9cef-7f30a415c99b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0ebbee01-1e43-4be6-883e-f5d4dce24d35', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '22b245b7-f071-43ce-a51c-a253c18ae73e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '10bd9d8a-0063-48e8-80cb-9ed311a81e8f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0fa7e485-0b35-4ac4-a128-ef8676a645a0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '4d43a4ce-47fa-49ce-ae31-e36a3c9cc054', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '08ddcea3-79e0-44be-8579-04e16258979e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5b454a67-0a4c-485f-9e74-c027e62a66ca', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'ad34f98e-b6ba-4cd1-9f35-b001f73e5566', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '7a645e53-cd7f-4092-b7a5-b10ab94e208e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '622c5784-c777-45b7-825b-3e92414c7381', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5b454a67-0a4c-485f-9e74-c027e62a66ca', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '7f2753cd-53d0-473d-945a-b2b1d6322798', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '260b70c3-f3ee-4aac-910f-08ba4d0d5da3', 'params': ['1', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'x'}, 'id': '867e2749-5b3d-4e04-8fa1-578687b18021', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ch'}, 'ccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '229860d4-5a85-4a06-abf5-ee791967a4f8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd75f2450-b9fa-4bbe-8d63-840aa47b3138', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e0cf3b03-6645-4fc6-8d5a-99256b39a492', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '2578704a-3dc7-40fb-a37a-0887a475b1c2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'aa8d6dd4-6bfd-4378-aa7a-d36408187476', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '25aae61e-4f33-4140-a3bd-2518754586ba', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '55301470-9311-441a-969e-758548c7d5cd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '011e29fd-ebf5-4d53-b3ca-462d35ba4e81', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e0cf3b03-6645-4fc6-8d5a-99256b39a492', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '2bc4171d-29bb-4010-9050-47fdefc9c682', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '67b17b58-a693-469b-89f3-29262e31d044', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9cd2f83c-1176-4300-92b0-f48013a7d033', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'a04ad70e-c12f-4c28-b3ea-3a9722538b61', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '8b274bb2-626b-4394-b491-8ad1c078e1bb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e0cf3b03-6645-4fc6-8d5a-99256b39a492', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'dc06748d-0277-4ce2-94d7-ea9634500d8b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '502f2615-10fc-4e13-8b7b-5c7cb5254a5d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '88fd2316-e6b6-4126-8043-616ab8760807', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'ccx'}, 'crz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '14115802-d0ab-4961-afd3-af92a96c389c', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'dcf6acd5-4058-43a9-a1a1-03811e6e616d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'd0a7802e-d129-4b70-8944-0181ced62153', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9c95a8bc-e671-4240-a1ef-107a6910c532', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'crz'}, 'cu1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cu1'}, 'cu3': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9216810b-8ced-4efd-9837-248ece5a23ed', 'params': ['(1/2)*(pi*lam - pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '241be495-f5aa-4f8a-86ef-0509d88847bb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '45026b6b-902b-4705-b587-76272e96afd2', 'params': ['(-1/2)*(pi*lam + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'd603cbcd-d4a4-4e89-9916-88e060e1d6c8', 'params': ['(-1/2)*theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20e6fef5-00e8-4225-90e8-51554bc4462d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '688befed-0ed5-47ef-b64a-b21298878829', 'params': ['(1/2)*theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b9ee692a-ccdf-4c16-aaf8-037483210767', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'cu3'}, 'csx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd9392ae0-9e83-4d14-b4e3-b08629aa2b6f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '08e2dcc9-6df4-4fb4-a394-879e428d0a36', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b020bd6a-9e33-4140-a407-29e4a4f2ad29', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csx'}, 'cu': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['gamma'], 'type': 'U1'}}, {'args': [['q', [1]]], 'op': {'params': ['(1/2)*(pi*lam - pi*phi)/pi'], 'type': 'U1'}}, {'args': [['q', [0]]], 'op': {'params': ['(1/2)*(pi*lam + pi*phi)/pi'], 'type': 'U1'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '660d811c-adf8-420a-b248-91f6a0809c59', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'params': ['(-1/2)*theta', '0', '(-1/2)*(pi*lam + pi*phi)/pi'], 'type': 'U3'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'db9a6ac1-f345-4ef4-9a51-5e4552071c7a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'params': ['(1/2)*theta', 'phi', '0'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lam', 'gamma'], 'name': 'cu'}, 'u': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '9b6ca287-4a56-4898-a39d-7fc3f8c38d61', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'u'}, 'u3': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'u3'}, 'u2': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a4abca0e-8886-4220-853f-16933ee45c95', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi', 'lam'], 'name': 'u2'}, 'u1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'u1'}, 'id': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a0473bf7-3f02-4963-a9a4-7128737b4138', 'params': ['0', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'id'}, 'p': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'p'}, 'sx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0ebbee01-1e43-4be6-883e-f5d4dce24d35', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '17003d95-841b-41ea-8539-d42cf3288c14', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3df940d8-5949-46af-b1d0-aface137586c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0ebbee01-1e43-4be6-883e-f5d4dce24d35', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '8f9c2d6c-1951-4e27-9191-242ee8199c58', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sx'}, 'sxdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5b454a67-0a4c-485f-9e74-c027e62a66ca', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '1da3a1de-6dd2-4864-ada1-a7d1bc9f4c8f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '01f75317-1c79-4a3c-8a95-bf4bd1adf531', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5b454a67-0a4c-485f-9e74-c027e62a66ca', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '8c4229ff-220f-446a-9dc8-0a2a364d9f20', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sxdg'}, 'swap': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b23dc85a-2426-40e7-a97e-0f1997af9cd6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2d032ef4-f1c7-4e06-93f2-9533a74f1e39', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '09a95d59-9b60-4c05-a5c7-13e9c0ac6769', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'swap'}, 'cswap': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b3b18c33-4f1d-49a3-8277-e866347383a6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '229860d4-5a85-4a06-abf5-ee791967a4f8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd75f2450-b9fa-4bbe-8d63-840aa47b3138', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e0cf3b03-6645-4fc6-8d5a-99256b39a492', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '2578704a-3dc7-40fb-a37a-0887a475b1c2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'aa8d6dd4-6bfd-4378-aa7a-d36408187476', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '25aae61e-4f33-4140-a3bd-2518754586ba', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '55301470-9311-441a-969e-758548c7d5cd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '011e29fd-ebf5-4d53-b3ca-462d35ba4e81', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e0cf3b03-6645-4fc6-8d5a-99256b39a492', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '2bc4171d-29bb-4010-9050-47fdefc9c682', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '67b17b58-a693-469b-89f3-29262e31d044', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9cd2f83c-1176-4300-92b0-f48013a7d033', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'a04ad70e-c12f-4c28-b3ea-3a9722538b61', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '12719a25-dec1-4f11-a92e-bcaa92f3b363', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '8b274bb2-626b-4394-b491-8ad1c078e1bb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e0cf3b03-6645-4fc6-8d5a-99256b39a492', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'dc06748d-0277-4ce2-94d7-ea9634500d8b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '502f2615-10fc-4e13-8b7b-5c7cb5254a5d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '88fd2316-e6b6-4126-8043-616ab8760807', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'name': 'ccx'}, 'id': 'c2d2ba8a-d418-4320-abc4-f9c6c96a1fd2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '26b50b48-36f1-4a60-84b1-24af9f40c0ff', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'cswap'}, 'crx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '17ea89b0-72b0-49f4-ae22-5deafd577b51', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a0201451-f016-4063-b092-89f271c2e520', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'f35214d3-350e-496d-b3da-740141bffb32', 'params': ['(-1/2)*lam', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c81bf3a2-bac9-466b-a138-918263b9e16d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '317134a8-2ef8-448c-84d3-32571b3b13ca', 'params': ['(1/2)*lam', '-1/2', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'crx'}, 'cry': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '183f4683-bb07-4644-86d0-287eb250cc0c', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': '0a621ae1-c593-458b-a9d8-dc5151bebe0b', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd5f6faf2-d27a-46bf-bf55-24b49de2bf94', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '183f4683-bb07-4644-86d0-287eb250cc0c', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': '1a16df0b-d891-4189-9803-93bcbd5ad403', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '86cdfb62-7073-47bf-907d-127aa3d1fdee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cry'}, 'cp': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '44da39db-4ebd-4f19-8f79-81835af572ee', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '830f9753-5e1e-4e24-9336-e11c6f07a4f7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'db6b6421-7ab1-424a-bf97-904f00970c2b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '64fb019d-2377-4aca-ab17-57207e07ff6d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '847b0b81-8267-4b2a-84b5-6167d921f9d4', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cp'}, 'rxx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'b68abcf7-64bb-4db4-b9fe-0858c0ad153f', 'params': ['1/2', 'theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1bd9adf0-35aa-4089-8975-0611c071eb4b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '58eeda8f-0641-40c3-ad42-389bba98738f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '9a682c03-6830-4897-81c4-95977858f3dd', 'params': ['-theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '33ca1d2e-0d16-44bc-9d6e-0a233a01a706', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a4abca0e-8886-4220-853f-16933ee45c95', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'b91618a2-4bc6-4076-b000-888230ece956', 'params': ['-1', '(-pi*theta + pi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '226e55ed-2c1e-425a-a1c4-ef5d8ffeab21', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rxx'}, 'rzz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'RZZ'}, 'id': '80a685e7-f74f-4295-830b-5755f9bb5e7e', 'params': ['theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rzz'}, 'rccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a4abca0e-8886-4220-853f-16933ee45c95', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '025e28df-8495-45cd-b054-d2fa60af3288', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '9fc6fa6a-d0a1-4d4f-b9b7-45ca774ae36f', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '59f7e6f5-851e-4dc2-8157-1831e4e89acf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '2b417482-3d7e-4c85-8295-84237a30c9fb', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd9d9ab6b-a017-47fa-b6ef-0e5c263faa1c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'd9c84740-4814-4a6e-954d-c18d68a68c8b', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f78c64bb-5cc0-40c0-947b-99b691f2abaa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '003e57d5-9e56-4da4-b2e3-e4da360d89b5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a4abca0e-8886-4220-853f-16933ee45c95', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '5a3e2c72-3e88-4343-bd0b-2ee396149921', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'rccx'}, 'rc3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a4abca0e-8886-4220-853f-16933ee45c95', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '679f57f9-ad61-42fd-9082-c9dae54adb1f', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'dd25362b-90de-425e-bf14-32fb5b067a8b', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '24a39b94-6055-4e57-8c79-23baa6138ed5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '18fe1c89-3717-416f-b714-d57b9bed2b41', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a4abca0e-8886-4220-853f-16933ee45c95', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'f91e7af0-bae9-485d-bf73-d12a4e9a2e33', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e87536fb-d12e-4a5e-8334-e5edd51bf959', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '03f61643-53ad-41dc-a9e0-bef81c1e04c9', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9211fd23-4dcc-445b-b5e8-ee9089dc3d2d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e42da395-8b89-4aaa-ac82-c154bbd94095', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd098dfdd-2f42-4ed2-a734-aca34681c646', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'b4ce83d9-3e1f-4309-8272-e20b76010720', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1d9dd439-4674-4c95-a31a-6678b856ff49', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e50a1765-3d8c-4168-b793-29899f54c142', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a4abca0e-8886-4220-853f-16933ee45c95', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ed6d679b-df13-49fe-9216-59d5b11988a8', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e0736c6a-326a-4ca9-83d7-4ea81a35dc73', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7c7492da-c3d5-4cea-abd6-eb9ec846a031', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '3cd26e4b-9b7f-4d49-b53c-be7dc4919d69', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '78014087-dbec-4871-9b0c-384d47f87388', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'ae138a16-bf99-4770-9148-c71f64a11de7', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'a4abca0e-8886-4220-853f-16933ee45c95', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'd9b4340b-0af7-45b1-99b2-ced224d5ad9b', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'rc3x'}, 'c3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c7ca2001-ce9c-451a-9c38-d4a5a1629232', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a936747a-8f01-4b32-a2dd-111e69d58180', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ae3dc1c7-c5f6-4e67-857b-bb660697f187', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '581b28b9-f7f7-4531-8672-ecb3e636c863', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '630a0298-5670-44a5-b21d-5ebc2f9c9134', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5040eb36-531a-428a-81d7-9eadcc4e41b5', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '576e076b-8d7c-49f0-b6be-79a45a46bfec', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'da312680-e5a1-4b7e-840b-9cd1d827ab7f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ec01ab10-f64f-4819-925a-ce88ea257255', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e0cd1749-7ea7-4faa-9ed8-c7e957ed0260', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5c1125a6-c69c-4563-95dd-697faaa6846c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c2e13dbc-490a-4230-b040-e5c42f4cca07', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2915562d-3984-4bfa-be0f-e479a969cc4d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f8951e4d-cfcd-476c-8342-7b2dea6e5b52', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fdcfd370-cb7f-4b7d-9b2b-6c7245f14689', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '50af31a3-54e6-45ba-8d2b-536c30e31f97', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b1afdf7f-c7df-4bff-92ca-851928fdcfd5', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '19d68a62-7a4b-494a-ba60-32b8fd4a80fc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4a7e64c4-ad69-4e38-a1ae-c199def5efee', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '957aec8f-5103-4521-a05d-42e72fe21eae', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '54a90117-2943-4f69-9395-a4387053feb5', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '139df754-d96b-4bd2-90a3-77bade703568', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd8994c71-db76-4dec-bfec-d5e1e61da743', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e71a2146-8bb8-498f-821d-c0da8643cc85', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ca0f7ec4-4276-4ad2-a67f-7c598874f89b', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62068a2e-56f8-4c39-9b8e-48040b56f4fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '060772ed-d059-4107-88ba-c0033e7df0c2', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bc2d7e79-71c3-4337-8588-92dff4a606ec', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3de5bc5f-4b91-4c7b-8298-c836e1be8079', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd2a19a72-c0a4-4d36-ab50-8ac3edc4b48e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3dfc46d2-bfa8-4b37-8142-aeff900fe511', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3x'}, 'c3sqrtx': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '401e4b5a-c1ab-486d-89c3-950670ce1ef5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '56aaed7a-5a3b-4de1-af4d-e00e7e098bc0', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '29d9f27a-e6cc-430a-9cab-7bf220a062c5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b15be819-4b39-4d70-b4ea-4c6449b7ab54', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'bac90784-4fe3-4b67-9e61-76b9252cef4c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '37016eca-7040-4a09-b373-f13897377efb', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1d6507a1-d0a4-4897-8b74-5399896908ee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '177bbc08-e86f-45be-b4bc-cfe3360c879c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ef39f3bf-abd4-4e6a-9027-c782ba3d7698', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '7bdfccc7-1704-412b-b341-ab683f7ea466', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9dc9804a-c588-40fc-8721-4e5d13b68776', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '208f1213-f813-4df7-b798-81d2274a4616', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd11480d8-a60b-4a3d-8e3b-ef649f7dc218', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '6ea898c8-eac4-41f0-ba27-d4324fc7ee87', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '606a6e8f-575c-4e67-b481-17358404d2ca', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '4a2b6e11-b787-4984-ba3f-caf736d0b8d3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '5939ebfb-4b09-4e3d-b1d6-e7b48b5cf55c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '2560dccf-7a13-454e-b069-90f790d79ba7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f51211fa-176f-4de8-b076-403730d2a515', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '42322f92-f676-4bdc-91a5-1ecd54c53eff', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6f8eeda4-8614-4900-b97d-ca6bdb98a273', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '1b519793-4e05-4549-b416-64137d0ced88', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'cdef67d1-f100-4573-9b8f-7d544759a948', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '24ef4d44-38d0-4819-ab82-dcf5ed928c04', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '008d2e3f-38a9-4154-b49a-412598a31250', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'de70d4b0-8de3-4a5c-b627-c98f8f81aaba', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6ad9861f-3cba-45f6-86dd-d725259fe88f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3sqrtx'}, 'c4x': {'definition': {'bits': [], 'commands': [{'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7f0e07d5-c4c8-42a0-a5bb-a3b2db604f35', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '9114000f-94e4-4de4-96ca-16ad55521b02', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c7ca2001-ce9c-451a-9c38-d4a5a1629232', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a936747a-8f01-4b32-a2dd-111e69d58180', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ae3dc1c7-c5f6-4e67-857b-bb660697f187', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '581b28b9-f7f7-4531-8672-ecb3e636c863', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '630a0298-5670-44a5-b21d-5ebc2f9c9134', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5040eb36-531a-428a-81d7-9eadcc4e41b5', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '576e076b-8d7c-49f0-b6be-79a45a46bfec', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'da312680-e5a1-4b7e-840b-9cd1d827ab7f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ec01ab10-f64f-4819-925a-ce88ea257255', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e0cd1749-7ea7-4faa-9ed8-c7e957ed0260', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5c1125a6-c69c-4563-95dd-697faaa6846c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c2e13dbc-490a-4230-b040-e5c42f4cca07', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2915562d-3984-4bfa-be0f-e479a969cc4d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f8951e4d-cfcd-476c-8342-7b2dea6e5b52', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fdcfd370-cb7f-4b7d-9b2b-6c7245f14689', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '50af31a3-54e6-45ba-8d2b-536c30e31f97', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b1afdf7f-c7df-4bff-92ca-851928fdcfd5', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '19d68a62-7a4b-494a-ba60-32b8fd4a80fc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4a7e64c4-ad69-4e38-a1ae-c199def5efee', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '957aec8f-5103-4521-a05d-42e72fe21eae', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '54a90117-2943-4f69-9395-a4387053feb5', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '139df754-d96b-4bd2-90a3-77bade703568', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd8994c71-db76-4dec-bfec-d5e1e61da743', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e71a2146-8bb8-498f-821d-c0da8643cc85', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ca0f7ec4-4276-4ad2-a67f-7c598874f89b', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62068a2e-56f8-4c39-9b8e-48040b56f4fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '060772ed-d059-4107-88ba-c0033e7df0c2', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bc2d7e79-71c3-4337-8588-92dff4a606ec', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3de5bc5f-4b91-4c7b-8298-c836e1be8079', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd2a19a72-c0a4-4d36-ab50-8ac3edc4b48e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3dfc46d2-bfa8-4b37-8142-aeff900fe511', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '1793fe5f-54f5-44d8-bcaf-a59ad8c09f52', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '240b6078-498d-461f-bbb6-26f2fa93d614', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '17804167-28f7-4c19-b858-932ea21aab9b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'ff086532-67e5-44db-9bbf-3feffe875964', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c7ca2001-ce9c-451a-9c38-d4a5a1629232', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a936747a-8f01-4b32-a2dd-111e69d58180', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ae3dc1c7-c5f6-4e67-857b-bb660697f187', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '581b28b9-f7f7-4531-8672-ecb3e636c863', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '630a0298-5670-44a5-b21d-5ebc2f9c9134', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5040eb36-531a-428a-81d7-9eadcc4e41b5', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '576e076b-8d7c-49f0-b6be-79a45a46bfec', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'da312680-e5a1-4b7e-840b-9cd1d827ab7f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ec01ab10-f64f-4819-925a-ce88ea257255', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e0cd1749-7ea7-4faa-9ed8-c7e957ed0260', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5c1125a6-c69c-4563-95dd-697faaa6846c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c2e13dbc-490a-4230-b040-e5c42f4cca07', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2915562d-3984-4bfa-be0f-e479a969cc4d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f8951e4d-cfcd-476c-8342-7b2dea6e5b52', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fdcfd370-cb7f-4b7d-9b2b-6c7245f14689', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '50af31a3-54e6-45ba-8d2b-536c30e31f97', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b1afdf7f-c7df-4bff-92ca-851928fdcfd5', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '19d68a62-7a4b-494a-ba60-32b8fd4a80fc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4a7e64c4-ad69-4e38-a1ae-c199def5efee', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '957aec8f-5103-4521-a05d-42e72fe21eae', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '54a90117-2943-4f69-9395-a4387053feb5', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '139df754-d96b-4bd2-90a3-77bade703568', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd8994c71-db76-4dec-bfec-d5e1e61da743', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e71a2146-8bb8-498f-821d-c0da8643cc85', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ca0f7ec4-4276-4ad2-a67f-7c598874f89b', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62068a2e-56f8-4c39-9b8e-48040b56f4fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '060772ed-d059-4107-88ba-c0033e7df0c2', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bc2d7e79-71c3-4337-8588-92dff4a606ec', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b27225a4-0a2a-4dd3-be9f-b4f5e243ba3a', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '96a14d75-c367-4d5b-9f32-5e5b3fb9ee6d', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'fafc0116-1113-4727-870a-35e54794b6ef', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'cf923da0-1820-4244-bff7-072619f82224', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3de5bc5f-4b91-4c7b-8298-c836e1be8079', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd2a19a72-c0a4-4d36-ab50-8ac3edc4b48e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3dfc46d2-bfa8-4b37-8142-aeff900fe511', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '0741af3b-ab85-4728-9edf-c44e3f11e533', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '93b356ae-3048-4ea1-974c-bb3a6ac6b8cf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '401e4b5a-c1ab-486d-89c3-950670ce1ef5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '56aaed7a-5a3b-4de1-af4d-e00e7e098bc0', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '29d9f27a-e6cc-430a-9cab-7bf220a062c5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b15be819-4b39-4d70-b4ea-4c6449b7ab54', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'bac90784-4fe3-4b67-9e61-76b9252cef4c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '37016eca-7040-4a09-b373-f13897377efb', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1d6507a1-d0a4-4897-8b74-5399896908ee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '177bbc08-e86f-45be-b4bc-cfe3360c879c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ef39f3bf-abd4-4e6a-9027-c782ba3d7698', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '7bdfccc7-1704-412b-b341-ab683f7ea466', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9dc9804a-c588-40fc-8721-4e5d13b68776', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '208f1213-f813-4df7-b798-81d2274a4616', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd11480d8-a60b-4a3d-8e3b-ef649f7dc218', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '6ea898c8-eac4-41f0-ba27-d4324fc7ee87', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '606a6e8f-575c-4e67-b481-17358404d2ca', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '4a2b6e11-b787-4984-ba3f-caf736d0b8d3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '5939ebfb-4b09-4e3d-b1d6-e7b48b5cf55c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '2560dccf-7a13-454e-b069-90f790d79ba7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f51211fa-176f-4de8-b076-403730d2a515', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '42322f92-f676-4bdc-91a5-1ecd54c53eff', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6f8eeda4-8614-4900-b97d-ca6bdb98a273', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '1b519793-4e05-4549-b416-64137d0ced88', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'cdef67d1-f100-4573-9b8f-7d544759a948', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '24ef4d44-38d0-4819-ab82-dcf5ed928c04', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '008d2e3f-38a9-4154-b49a-412598a31250', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'cf1a75b9-4df5-4bf4-8fbe-76d9bcb64da1', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03610047-7d53-408f-8927-47139fc1c0fd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '216bf143-d701-4f89-b219-90ee1cce3f6b', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '881f50f3-0c0b-4a92-b4c1-729a07dd357f', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': 'ed2d1be1-4cc1-481c-afcc-5f28440d872f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ac6932f9-c7ca-4028-bb24-20408227b9d7', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '17d79467-b56d-4bde-8d4d-0702ff071664', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2be28389-e691-46da-82c9-cbc462ff00b6', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'a1f43a2f-a866-4b28-b789-fc01f7e5e056', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a169fde-962c-48d8-9bdd-ef4aad79a687', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '5d9996f3-7700-40ea-a18b-b99d7264c470', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'de70d4b0-8de3-4a5c-b627-c98f8f81aaba', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bab56fe8-efc6-4d1a-8182-efa27cf77b42', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '7a9e3e67-41ec-43c1-bf48-2b32294abdf0', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6ad9861f-3cba-45f6-86dd-d725259fe88f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3sqrtx'}, 'id': '8c559afc-1192-42ae-ae81-1a3572c6a6e6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'c4x'}, 'sleep': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['t'], 'name': 'sleep'}, 'order2': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'order2'}, 'order3': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'order3'}, 'order4': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'order4'}, 'order5': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'order5'}, 'order6': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]]]}, 'args': [], 'name': 'order6'}, 'order7': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]]]}, 'args': [], 'name': 'order7'}, 'order8': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]]]}, 'args': [], 'name': 'order8'}, 'order9': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]]]}, 'args': [], 'name': 'order9'}, 'order10': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]]]}, 'args': [], 'name': 'order10'}, 'order11': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]]]}, 'args': [], 'name': 'order11'}, 'order12': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]]]}, 'args': [], 'name': 'order12'}, 'order13': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]]]}, 'args': [], 'name': 'order13'}, 'order14': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]]]}, 'args': [], 'name': 'order14'}, 'order15': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]]]}, 'args': [], 'name': 'order15'}, 'order16': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]]]}, 'args': [], 'name': 'order16'}, 'order17': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]]]}, 'args': [], 'name': 'order17'}, 'order18': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]]]}, 'args': [], 'name': 'order18'}, 'order19': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]], [['q', [18]], ['q', [18]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]], ['q', [18]]]}, 'args': [], 'name': 'order19'}, 'order20': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]], [['q', [18]], ['q', [18]]], [['q', [19]], ['q', [19]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]], ['q', [18]], ['q', [19]]]}, 'args': [], 'name': 'order20'}, 'group2': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'group2'}, 'group3': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'group3'}, 'group4': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'group4'}, 'group5': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'group5'}, 'group6': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]]]}, 'args': [], 'name': 'group6'}, 'group7': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]]]}, 'args': [], 'name': 'group7'}, 'group8': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]]]}, 'args': [], 'name': 'group8'}, 'group9': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]]]}, 'args': [], 'name': 'group9'}, 'group10': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]]]}, 'args': [], 'name': 'group10'}, 'group11': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]]]}, 'args': [], 'name': 'group11'}, 'group12': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]]]}, 'args': [], 'name': 'group12'}, 'group13': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]]]}, 'args': [], 'name': 'group13'}, 'group14': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]]]}, 'args': [], 'name': 'group14'}, 'group15': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]]]}, 'args': [], 'name': 'group15'}, 'group16': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]]]}, 'args': [], 'name': 'group16'}, 'group17': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]]]}, 'args': [], 'name': 'group17'}, 'group18': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]]]}, 'args': [], 'name': 'group18'}, 'group19': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]], [['q', [18]], ['q', [18]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]], ['q', [18]]]}, 'args': [], 'name': 'group19'}, 'group20': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]], [['q', [18]], ['q', [18]]], [['q', [19]], ['q', [19]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]], ['q', [18]], ['q', [19]]]}, 'args': [], 'name': 'group20'}} \ No newline at end of file +_INCLUDE_DEFS={'Rz': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'Rz'}, 'U1q': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi'], 'name': 'U1q'}, 'ZZ': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ZZ'}, 'RZZ': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'RZZ'}, 'Rxxyyzz': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['alpha', 'beta', 'gamma'], 'name': 'Rxxyyzz'}, 'Rxxyyzz_zphase': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['alpha', 'beta', 'gamma', 'z0', 'z1'], 'name': 'Rxxyyzz_zphase'}, 'U': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'U'}, 'x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '544f5d3b-56e6-49b9-9f16-cdc5f7111315', 'params': ['1', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'x'}, 'y': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '618fb1ad-06da-4651-a208-f5c14a8c9923', 'params': ['1', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'y'}, 'z': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1e7d52ba-9962-446f-a0cc-f6d8809af987', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'z'}, 'CX': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'CX'}, 'cx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cx'}, 'h': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'h'}, 's': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b111c102-f486-422e-a199-f2f834f151e1', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 's'}, 'sdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2fa1dc9-e9d6-4661-abc8-623a2f3bc027', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sdg'}, 't': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 't'}, 'tdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e3f6f1c7-8dfc-4e35-b008-3aed29f2f79a', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'tdg'}, 'rx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '1c828883-3df3-472f-a24a-ef3beba6bb34', 'params': ['theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'rx'}, 'ry': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '1454893e-332f-4ae6-a84f-e5ff8db9900f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'ry'}, 'rz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a134c5dc-184f-48c4-acdc-ec7a21a11d7b', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi'], 'name': 'rz'}, 'cz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '14ee2baf-70ba-49dd-82fd-31a524b3e2a7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '08ccac08-28a9-4536-b55f-19e26ef7c714', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '67b5a6f0-83ee-4bfb-a408-290035f945ce', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cz'}, 'cy': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2fa1dc9-e9d6-4661-abc8-623a2f3bc027', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': 'bff2c1a2-980d-4cf4-ba6c-a59dcfbde13c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '05809442-8352-46ed-961e-557876154ea9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b111c102-f486-422e-a199-f2f834f151e1', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '12871e1a-ab93-4ef1-a6f5-e1a81709de25', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cy'}, 'ch': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0ad184a3-9d95-4ec9-b6e6-e8b25f059b3e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2fa1dc9-e9d6-4661-abc8-623a2f3bc027', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '9998af21-1718-48e3-9096-de15017831db', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e9a02b2f-ec8b-4ef1-9ee4-aaad50cf0698', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '2e8477ac-8f6f-4bc5-a9cf-810f725f3dfa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '8f9daf23-481e-4358-b8e3-3d9552461413', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1a881320-8a8f-47ce-9b6f-8a20c2581517', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b111c102-f486-422e-a199-f2f834f151e1', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '47ad5cd0-cdd9-469c-85c0-86a676459342', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '7208ccfd-df54-43aa-9ec3-00f95d44a84e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '4352ae9e-e3ec-476f-bce2-14f395e688f1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b111c102-f486-422e-a199-f2f834f151e1', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'c0c70a4c-44e1-4440-b22b-8b53702d4d39', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '544f5d3b-56e6-49b9-9f16-cdc5f7111315', 'params': ['1', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'x'}, 'id': 'd3d717e5-b893-4b9a-bbc9-b63c5815950d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ch'}, 'ccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '487e7d53-5b87-47cb-889c-3b9683537a43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '40355e70-ad2d-49b5-99c4-d1c14a0e0185', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e3f6f1c7-8dfc-4e35-b008-3aed29f2f79a', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '50d8a26f-253e-4f56-879b-083ddc3f8964', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '396a5bfb-412d-4aa0-bf64-0068db4d3485', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '0d18ae84-8c52-4040-b978-f468fa604f38', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0bc28c4e-374d-4d19-b01f-6ca92c984471', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '6fb99fb4-b30e-4ec9-9864-ccbc84a47179', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e3f6f1c7-8dfc-4e35-b008-3aed29f2f79a', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '9674a755-ee76-40cc-83cb-e2f2f940e111', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9f363eee-b940-4285-88dd-b0762bd584d7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5e04a3d6-09f9-4805-ae8f-092e073af5ef', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'be110259-fff7-4850-8cb6-b982d20cfdc4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '3b0f7fce-b6ac-41e7-bd2d-65f2afc78ee4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e3f6f1c7-8dfc-4e35-b008-3aed29f2f79a', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '20c7e5ad-69c8-434d-b874-3044e428ecfb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f92d04fd-4014-496a-b727-26b0c13d97fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62e0d9c9-0b90-487d-ad06-af3247fb4b87', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'ccx'}, 'crz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '07e0c138-e3ac-41ab-bcd5-257281bb6e3e', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7a52d0b2-8fb2-4691-81c6-c617847b59fe', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '1808e046-8642-4735-93ef-a6958981f278', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6ec330d8-5e53-4546-951a-a57378318c5d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'crz'}, 'cu1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cu1'}, 'cu3': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ec65b6df-6328-452f-8c12-2cdfc515c5b7', 'params': ['(1/2)*(pi*lam - pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '33b4cf8b-2707-465c-9e2a-fb4b39b5acf4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '6786c00d-d94e-41fc-b1b2-3e49fe394cd9', 'params': ['(-1/2)*(pi*lam + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'fd1dec60-dd55-48fd-a57b-9f9e02b05d9b', 'params': ['(-1/2)*theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bfead0fc-0431-4555-8e55-62cdf38a7547', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '1260c5a9-8c22-485c-b3e1-8b47e444b343', 'params': ['(1/2)*theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '29ee46e3-58cc-4785-bc21-b6f3a37dab23', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'cu3'}, 'csx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '18f91a71-70a7-4025-8b42-204843915fea', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'ee399797-3e80-41a0-a4fe-ee3fd0ebf346', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'afe3e19c-a691-4b0e-b1fa-2000079f8c88', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csx'}, 'cs': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '60eb849e-7673-4708-8676-e6b967d8831a', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cs'}, 'csdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '201dcc08-a9e0-47e5-843a-316fffa1d08c', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csdg'}, 'cu': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['gamma'], 'type': 'U1'}}, {'args': [['q', [1]]], 'op': {'params': ['(1/2)*(pi*lam - pi*phi)/pi'], 'type': 'U1'}}, {'args': [['q', [0]]], 'op': {'params': ['(1/2)*(pi*lam + pi*phi)/pi'], 'type': 'U1'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '092f468c-e9b0-478c-a326-09e0fde942cb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'params': ['(-1/2)*theta', '0', '(-1/2)*(pi*lam + pi*phi)/pi'], 'type': 'U3'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a7230752-9fec-4844-9e74-dce32d8b3c4d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'params': ['(1/2)*theta', 'phi', '0'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lam', 'gamma'], 'name': 'cu'}, 'u': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': '408a8577-7ad6-4eb8-8a22-a496d325c77b', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'u'}, 'u3': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lam'], 'name': 'u3'}, 'u2': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '885cde27-8ac4-4393-88a8-fc5486c0999c', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi', 'lam'], 'name': 'u2'}, 'u1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'u1'}, 'id': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '8e4a0467-09c2-4b16-8c05-4840adc039b2', 'params': ['0', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'id'}, 'p': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lam'], 'name': 'p'}, 'sx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2fa1dc9-e9d6-4661-abc8-623a2f3bc027', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '27959a7d-6a27-485f-93e2-acd0637109de', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ab4d6c81-16a3-48ce-bc97-4ea340987f31', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'a2fa1dc9-e9d6-4661-abc8-623a2f3bc027', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '5b3f2359-cb24-44d9-9e70-58180b4f8dc7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sx'}, 'sxdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b111c102-f486-422e-a199-f2f834f151e1', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'f504d84a-c867-4af9-917e-ee8367792241', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd14b3286-4022-4c15-8ca3-e353ee299ed8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'b111c102-f486-422e-a199-f2f834f151e1', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '1f8fb261-8aa9-459f-84e0-6dcf7c9fadf6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sxdg'}, 'swap': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f919027c-6473-491f-82da-1e2338ec189a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '01dec84c-2cca-4c19-8058-145dffcd44a3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '22998fe5-3a82-4d07-80f0-5cbc12155963', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'swap'}, 'cswap': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '060cef7a-02b4-49e7-acc6-af0d3d601589', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '487e7d53-5b87-47cb-889c-3b9683537a43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '40355e70-ad2d-49b5-99c4-d1c14a0e0185', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e3f6f1c7-8dfc-4e35-b008-3aed29f2f79a', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '50d8a26f-253e-4f56-879b-083ddc3f8964', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '396a5bfb-412d-4aa0-bf64-0068db4d3485', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '0d18ae84-8c52-4040-b978-f468fa604f38', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0bc28c4e-374d-4d19-b01f-6ca92c984471', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '6fb99fb4-b30e-4ec9-9864-ccbc84a47179', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e3f6f1c7-8dfc-4e35-b008-3aed29f2f79a', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '9674a755-ee76-40cc-83cb-e2f2f940e111', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9f363eee-b940-4285-88dd-b0762bd584d7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5e04a3d6-09f9-4805-ae8f-092e073af5ef', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'be110259-fff7-4850-8cb6-b982d20cfdc4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'ba40215f-8996-42c0-9636-e2db39b02325', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '3b0f7fce-b6ac-41e7-bd2d-65f2afc78ee4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'e3f6f1c7-8dfc-4e35-b008-3aed29f2f79a', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '20c7e5ad-69c8-434d-b874-3044e428ecfb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f92d04fd-4014-496a-b727-26b0c13d97fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62e0d9c9-0b90-487d-ad06-af3247fb4b87', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'name': 'ccx'}, 'id': '8d8dd91b-19db-4027-b3d5-93f0f632a522', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b659e7fb-5e50-43e2-aa2c-204e17201b6e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'cswap'}, 'crx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '021a2779-7c9b-4c45-a4b0-e61d79e1d2e3', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a797282a-e2a0-412b-abd9-687e159a0bed', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '7f8a916d-17b7-449f-89d3-f9281f2cb374', 'params': ['(-1/2)*lam', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7245ef67-4db4-4876-a65e-ebb21703a8ef', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '8b9140d6-dc32-426f-a595-222e36bda1f4', 'params': ['(1/2)*lam', '-1/2', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'crx'}, 'cry': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '1454893e-332f-4ae6-a84f-e5ff8db9900f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': 'b86fa7b5-38b8-49b5-ba7d-84885e36258b', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd4d306e9-0c46-4139-895d-720a1bf67caf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '1454893e-332f-4ae6-a84f-e5ff8db9900f', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': '2ad3e12b-0136-418d-a2a4-664968a6a38a', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '878b33f8-6ee6-4b34-90f8-5d497a37dfc6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cry'}, 'cp': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '499cda59-5dfd-4029-afda-bd625c679a40', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '94d928df-0131-423a-95ca-426f556a6f99', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '7c6efecb-44a4-44bb-b186-836b2825ba83', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'de7c0c38-a5c4-4a5b-b4c9-3cfc39756438', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '42888f07-4724-45d8-ba28-b71a27dcbd7c', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lam'], 'name': 'cp'}, 'rxx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'b8f36b99-4b0e-43b9-8e4d-b573e7964deb', 'params': ['1/2', 'theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '06d05a68-187c-4a2e-9c93-779b1deb0bc6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '42a9949e-4442-47ba-b1f6-4c8dd352dd51', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '65c428f3-49b7-44bd-9ae7-ffb787e4472b', 'params': ['-theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e71a47af-2392-4f47-8471-ed40a1b37bcb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '885cde27-8ac4-4393-88a8-fc5486c0999c', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'b755cd11-f589-4c1d-b318-d410c087877c', 'params': ['-1', '(-pi*theta + pi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '436c0960-2519-450d-b5df-1ada0c308c78', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rxx'}, 'rzz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'RZZ'}, 'id': 'b58fc15b-b860-46b5-8ed1-6979d318529f', 'params': ['theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rzz'}, 'rccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '885cde27-8ac4-4393-88a8-fc5486c0999c', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '196f6e52-83ef-4990-8a41-edc4bfe528f4', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '70a33f98-32d6-4137-a8f5-ebfc1099d7b6', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '82597974-2304-4f07-b965-17a5ad3e6e37', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'c45b7d97-97e4-4b3d-a19b-6b8fbfa940ee', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '08cf06e4-04e4-4313-bb4c-86e1ad8bd39d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '33dd10c1-f6cd-4401-9a64-e5aa778c1c88', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '97c37435-04eb-4af8-ab33-2983d3ba3689', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8fdbed3f-afd1-47cb-9aaf-38ce1a55ccf7', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '885cde27-8ac4-4393-88a8-fc5486c0999c', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '3faaeb91-2379-4620-a668-5dcc2c326c5d', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'rccx'}, 'rc3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '885cde27-8ac4-4393-88a8-fc5486c0999c', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ddd79b3a-b163-4555-9290-9513cf590414', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '34de17b4-9c3d-46e1-9fc9-a530de0d2c84', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ba15a793-5beb-428a-a8c8-b66a87d8512b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'bdbfa28c-258d-4df4-9fbd-831369f90c0a', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '885cde27-8ac4-4393-88a8-fc5486c0999c', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'af557281-4b8a-4265-9d3b-ca36d8dc7e67', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f7bbe94f-2148-4a8c-a402-ea2d7ba64f3b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7ffed66-eaf5-412c-8814-f2cd20ba6f3f', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62a9b90f-c92b-43e7-b5e9-dc2be19f0e59', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ae8a78c5-f9f2-42fc-831b-0dfaec765a04', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '085a35cc-c215-4448-a7cb-7a9f98ef5146', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'c5273124-111e-4262-94bc-cf866feaa45b', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd8d122ba-554c-4eb4-81ec-04fbd0c3ed43', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'bbefb3df-e390-4761-98b1-8c19bea73117', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '885cde27-8ac4-4393-88a8-fc5486c0999c', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '0d8637a3-97c6-413c-8b80-5eba73320862', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4f1fad10-2d56-4c33-9d91-97ca5ffa44d6', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae5a90c8-6609-4887-8ea3-8b1cf38d256b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '52821555-2f4b-4987-8814-5c79c4974b1c', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'cf48f8de-86cc-4c5e-b9e3-a697552d20a5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'a044982f-5905-40c4-8ce6-65c45d3adb5f', 'params': ['theta', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '885cde27-8ac4-4393-88a8-fc5486c0999c', 'params': ['1/2', 'phi', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ee4f2812-9264-4e1a-9f0d-f7d6433b2797', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'rc3x'}, 'c3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f9d2e149-927c-456c-a816-cd03d5805dd6', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0258e931-144d-4db2-a34a-7e745a4e3874', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a396acc0-6e9a-438d-862f-7c6f0a00aaef', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '89a033a6-7eee-4b96-ba15-b366c98e1871', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '47cece49-ac91-405a-916c-c86988c5a0aa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '26dbc4f5-f0cb-4d07-84d2-ab0c1c814d15', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '45ec246c-7e9c-4ecc-945d-5cef18b1bf76', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae8f2493-f451-4c60-9920-c066a4acedcb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20563985-7f5f-4615-a4d0-3983236ad858', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '28a9ba25-16c1-4e2d-b451-f3a7d17809d1', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd65e17a3-552e-4933-8779-94461ecc0bce', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e8d93dcd-dc97-46a3-b172-ff3aa6ff4c10', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f4b4b385-7be8-433c-9b6a-79434221398d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6be5d026-5a1e-49e0-865a-66b39f2e0b0b', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ac0f766e-51cf-47fd-8eae-0fdcc45c6baa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f7fac3af-bbc7-402e-9f5e-34315c3099b9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6099689a-7b75-4fd9-adf7-2b8ac4a588ed', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6984c1ec-91d8-42e5-a64b-783689054a1c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4e9a5322-4bb4-48ee-8785-d122496b0645', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62cb5e74-d88e-4ada-80a8-2a7cba1878a7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '02545210-0de6-4284-851b-837ecde9e5a0', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ef62b891-eaa8-4655-8258-a9a361fc2486', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b37c0687-396d-4e42-816e-f16ca82ec743', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd2e0a4c2-5e7f-4c93-a689-e4f2dc356c0d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '776402e8-fe82-44c4-9946-5863bb47a124', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f503bab7-ded4-4197-9b64-14c1f0eeec58', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'eb0c5172-a80d-44b3-ad23-fcbc0e64915f', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '67b2be85-3735-42bf-87c5-9fb68f704c94', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8d8ddeb4-268f-4cc1-a29b-bb728c7213be', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '415fa094-007d-4df8-9ee0-ba36d174659a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ef1bbf9d-1c67-49a8-b6be-e9e97257b239', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3x'}, 'c3sqrtx': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '73efd673-26ac-4c59-9a04-c809ae0b03c2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '766ba423-73db-498b-a155-c1a26e0d9a1d', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5e3bb64c-50d4-4db3-ae25-69de25ed8c59', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1b2afb50-1015-4f3e-bd09-e99f3a0bb1ed', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f8edd213-cc72-4ace-81e1-7fb650e0e52e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'a3487fd7-9e50-46b1-9be4-96bd998f1a4b', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7a28b943-3d84-4b58-83fe-6165a91e0be2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7dee34ec-cbce-4051-b6c5-8a09d2635065', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'fd3fa6ff-06be-42f4-8829-64538215b79d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '3d987b8b-b1fa-4198-9c29-327eb0d52015', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '84b15c53-cd31-4d0f-b888-4a855b763098', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1cc287a9-5cea-4b33-8c98-e0562b0af19f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '170ea485-cb90-46b0-85d6-d6f304dfac79', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '9364637f-40c5-4d56-995e-718d571f32cd', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e0d6db94-962c-441b-88c8-ba29e5455d8b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c546286d-e6e4-4bcb-b5dc-51d80bb40666', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'eb7c3684-c37f-420d-9b6d-9c9208a9b4a4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '3605ba9c-4650-4a34-bf73-a6ece9869488', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '992a808a-53d5-4c59-a7e8-91554954c923', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd6b5949f-a2e5-49a7-861c-8971068ea005', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b218dffd-30fe-4c6e-873a-7d1b1356ba7f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '5c317a3a-8a66-4736-91cd-d0f7defeebc1', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6ce6c60d-acf6-42d4-bc4b-bce0ae6c71e6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f9bac3b9-cf5d-4d25-9382-a57dda2beedc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9b4797cc-0c1b-4d0d-8d78-40c47b4d1031', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'c705c4c3-7119-4c35-b72b-fb51cc57a754', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '29a67f06-e81f-4a78-9de4-271e830ae44a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3sqrtx'}, 'c4x': {'definition': {'bits': [], 'commands': [{'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'bcdb9d61-c929-42fe-999e-36c49821abd3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '845173d0-5691-483d-bb6d-be786a98eb93', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f9d2e149-927c-456c-a816-cd03d5805dd6', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0258e931-144d-4db2-a34a-7e745a4e3874', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a396acc0-6e9a-438d-862f-7c6f0a00aaef', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '89a033a6-7eee-4b96-ba15-b366c98e1871', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '47cece49-ac91-405a-916c-c86988c5a0aa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '26dbc4f5-f0cb-4d07-84d2-ab0c1c814d15', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '45ec246c-7e9c-4ecc-945d-5cef18b1bf76', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae8f2493-f451-4c60-9920-c066a4acedcb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20563985-7f5f-4615-a4d0-3983236ad858', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '28a9ba25-16c1-4e2d-b451-f3a7d17809d1', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd65e17a3-552e-4933-8779-94461ecc0bce', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e8d93dcd-dc97-46a3-b172-ff3aa6ff4c10', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f4b4b385-7be8-433c-9b6a-79434221398d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6be5d026-5a1e-49e0-865a-66b39f2e0b0b', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ac0f766e-51cf-47fd-8eae-0fdcc45c6baa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f7fac3af-bbc7-402e-9f5e-34315c3099b9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6099689a-7b75-4fd9-adf7-2b8ac4a588ed', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6984c1ec-91d8-42e5-a64b-783689054a1c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4e9a5322-4bb4-48ee-8785-d122496b0645', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62cb5e74-d88e-4ada-80a8-2a7cba1878a7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '02545210-0de6-4284-851b-837ecde9e5a0', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ef62b891-eaa8-4655-8258-a9a361fc2486', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b37c0687-396d-4e42-816e-f16ca82ec743', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd2e0a4c2-5e7f-4c93-a689-e4f2dc356c0d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '776402e8-fe82-44c4-9946-5863bb47a124', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f503bab7-ded4-4197-9b64-14c1f0eeec58', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'eb0c5172-a80d-44b3-ad23-fcbc0e64915f', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '67b2be85-3735-42bf-87c5-9fb68f704c94', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8d8ddeb4-268f-4cc1-a29b-bb728c7213be', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '415fa094-007d-4df8-9ee0-ba36d174659a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ef1bbf9d-1c67-49a8-b6be-e9e97257b239', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '4f532802-e731-43a7-b6b0-b9f9e8593d3a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ce8fc0b7-99e5-4f60-8363-3fc621ec4f8d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f12e055d-7143-4303-b066-c606c9ea9b9f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '8f9dfe39-d59b-4b71-b8b1-7bee944f2509', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f9d2e149-927c-456c-a816-cd03d5805dd6', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0258e931-144d-4db2-a34a-7e745a4e3874', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a396acc0-6e9a-438d-862f-7c6f0a00aaef', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '89a033a6-7eee-4b96-ba15-b366c98e1871', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '47cece49-ac91-405a-916c-c86988c5a0aa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '26dbc4f5-f0cb-4d07-84d2-ab0c1c814d15', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '45ec246c-7e9c-4ecc-945d-5cef18b1bf76', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae8f2493-f451-4c60-9920-c066a4acedcb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20563985-7f5f-4615-a4d0-3983236ad858', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '28a9ba25-16c1-4e2d-b451-f3a7d17809d1', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd65e17a3-552e-4933-8779-94461ecc0bce', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e8d93dcd-dc97-46a3-b172-ff3aa6ff4c10', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f4b4b385-7be8-433c-9b6a-79434221398d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6be5d026-5a1e-49e0-865a-66b39f2e0b0b', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ac0f766e-51cf-47fd-8eae-0fdcc45c6baa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f7fac3af-bbc7-402e-9f5e-34315c3099b9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6099689a-7b75-4fd9-adf7-2b8ac4a588ed', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6984c1ec-91d8-42e5-a64b-783689054a1c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4e9a5322-4bb4-48ee-8785-d122496b0645', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '62cb5e74-d88e-4ada-80a8-2a7cba1878a7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '02545210-0de6-4284-851b-837ecde9e5a0', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ef62b891-eaa8-4655-8258-a9a361fc2486', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b37c0687-396d-4e42-816e-f16ca82ec743', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd2e0a4c2-5e7f-4c93-a689-e4f2dc356c0d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '776402e8-fe82-44c4-9946-5863bb47a124', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f503bab7-ded4-4197-9b64-14c1f0eeec58', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'eb0c5172-a80d-44b3-ad23-fcbc0e64915f', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '67b2be85-3735-42bf-87c5-9fb68f704c94', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f9be2237-6c4d-497d-a80b-d34f13e993b4', 'params': ['lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'f685be9d-6ff9-4df5-9f9b-d5ff842d07c0', 'params': ['theta', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '28300dfa-ccca-4385-b94f-590d02a567c1', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U'}, 'id': 'be65cd9b-9616-46bf-bb4d-f603aa1c898a', 'params': ['0', '0', 'lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8d8ddeb4-268f-4cc1-a29b-bb728c7213be', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '415fa094-007d-4df8-9ee0-ba36d174659a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ef1bbf9d-1c67-49a8-b6be-e9e97257b239', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '06af8ed3-ec84-46a1-8fed-7723b9b0f7b4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'be9ff483-0722-43bf-a94e-1822106700ec', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '73efd673-26ac-4c59-9a04-c809ae0b03c2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '766ba423-73db-498b-a155-c1a26e0d9a1d', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5e3bb64c-50d4-4db3-ae25-69de25ed8c59', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1b2afb50-1015-4f3e-bd09-e99f3a0bb1ed', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f8edd213-cc72-4ace-81e1-7fb650e0e52e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'a3487fd7-9e50-46b1-9be4-96bd998f1a4b', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7a28b943-3d84-4b58-83fe-6165a91e0be2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7dee34ec-cbce-4051-b6c5-8a09d2635065', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'fd3fa6ff-06be-42f4-8829-64538215b79d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '3d987b8b-b1fa-4198-9c29-327eb0d52015', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '84b15c53-cd31-4d0f-b888-4a855b763098', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1cc287a9-5cea-4b33-8c98-e0562b0af19f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '170ea485-cb90-46b0-85d6-d6f304dfac79', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '9364637f-40c5-4d56-995e-718d571f32cd', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e0d6db94-962c-441b-88c8-ba29e5455d8b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c546286d-e6e4-4bcb-b5dc-51d80bb40666', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'eb7c3684-c37f-420d-9b6d-9c9208a9b4a4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '3605ba9c-4650-4a34-bf73-a6ece9869488', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '992a808a-53d5-4c59-a7e8-91554954c923', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd6b5949f-a2e5-49a7-861c-8971068ea005', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b218dffd-30fe-4c6e-873a-7d1b1356ba7f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '5c317a3a-8a66-4736-91cd-d0f7defeebc1', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6ce6c60d-acf6-42d4-bc4b-bce0ae6c71e6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f9bac3b9-cf5d-4d25-9382-a57dda2beedc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9b4797cc-0c1b-4d0d-8d78-40c47b4d1031', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '2e951ded-b9f4-4b16-ba1e-88e3541d2123', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b596ca7-1180-436e-99ea-278b1e98982c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '0a92dd66-ec07-4bc2-96ac-5ca799332807', 'params': ['(-1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': 'bdf32f3f-4f4a-4550-88f3-faf77c85b00e', 'params': ['-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'ZZ'}, 'id': '787433b3-eb01-4aa9-8bc6-99621ee11802', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'f210d0cc-369b-476e-b811-1c1741c6cbdd', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '3c9ac74c-cfb1-4c7f-b14b-1a38436e7426', 'params': ['1/2', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '93b8c624-b844-4af1-8cd1-9eb9552673ac', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'CX'}, 'id': 'f22ecbea-3366-43d6-b392-cb1040967990', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '450df334-6231-4834-bc1d-c2e7bfe3c13b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': '9ffc2c95-2bb0-4cc7-8228-cbc78605ddf2', 'params': ['(1/2)*lam'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'c705c4c3-7119-4c35-b72b-fb51cc57a754', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'U1q'}, 'id': '7e5c7706-170a-46ff-b97c-3fae03c2f96c', 'params': ['1/2', '-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lam'], 'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'Rz'}, 'id': 'bb8cf9d5-be71-42df-a75b-0a212731ba4d', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '29a67f06-e81f-4a78-9de4-271e830ae44a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3sqrtx'}, 'id': 'a56e8748-cd41-4b1f-bf52-5f2b7fa55c4e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'c4x'}, 'sleep': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['t'], 'name': 'sleep'}, 'order2': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'order2'}, 'order3': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'order3'}, 'order4': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'order4'}, 'order5': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'order5'}, 'order6': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]]]}, 'args': [], 'name': 'order6'}, 'order7': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]]]}, 'args': [], 'name': 'order7'}, 'order8': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]]]}, 'args': [], 'name': 'order8'}, 'order9': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]]]}, 'args': [], 'name': 'order9'}, 'order10': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]]]}, 'args': [], 'name': 'order10'}, 'order11': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]]]}, 'args': [], 'name': 'order11'}, 'order12': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]]]}, 'args': [], 'name': 'order12'}, 'order13': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]]]}, 'args': [], 'name': 'order13'}, 'order14': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]]]}, 'args': [], 'name': 'order14'}, 'order15': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]]]}, 'args': [], 'name': 'order15'}, 'order16': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]]]}, 'args': [], 'name': 'order16'}, 'order17': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]]]}, 'args': [], 'name': 'order17'}, 'order18': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]]]}, 'args': [], 'name': 'order18'}, 'order19': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]], [['q', [18]], ['q', [18]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]], ['q', [18]]]}, 'args': [], 'name': 'order19'}, 'order20': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]], [['q', [18]], ['q', [18]]], [['q', [19]], ['q', [19]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]], ['q', [18]], ['q', [19]]]}, 'args': [], 'name': 'order20'}, 'group2': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'group2'}, 'group3': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'group3'}, 'group4': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'group4'}, 'group5': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'group5'}, 'group6': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]]]}, 'args': [], 'name': 'group6'}, 'group7': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]]]}, 'args': [], 'name': 'group7'}, 'group8': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]]]}, 'args': [], 'name': 'group8'}, 'group9': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]]]}, 'args': [], 'name': 'group9'}, 'group10': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]]]}, 'args': [], 'name': 'group10'}, 'group11': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]]]}, 'args': [], 'name': 'group11'}, 'group12': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]]]}, 'args': [], 'name': 'group12'}, 'group13': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]]]}, 'args': [], 'name': 'group13'}, 'group14': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]]]}, 'args': [], 'name': 'group14'}, 'group15': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]]]}, 'args': [], 'name': 'group15'}, 'group16': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]]]}, 'args': [], 'name': 'group16'}, 'group17': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]]]}, 'args': [], 'name': 'group17'}, 'group18': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]]]}, 'args': [], 'name': 'group18'}, 'group19': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]], [['q', [18]], ['q', [18]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]], ['q', [18]]]}, 'args': [], 'name': 'group19'}, 'group20': {'definition': {'bits': [], 'commands': [], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]], [['q', [5]], ['q', [5]]], [['q', [6]], ['q', [6]]], [['q', [7]], ['q', [7]]], [['q', [8]], ['q', [8]]], [['q', [9]], ['q', [9]]], [['q', [10]], ['q', [10]]], [['q', [11]], ['q', [11]]], [['q', [12]], ['q', [12]]], [['q', [13]], ['q', [13]]], [['q', [14]], ['q', [14]]], [['q', [15]], ['q', [15]]], [['q', [16]], ['q', [16]]], [['q', [17]], ['q', [17]]], [['q', [18]], ['q', [18]]], [['q', [19]], ['q', [19]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]], ['q', [5]], ['q', [6]], ['q', [7]], ['q', [8]], ['q', [9]], ['q', [10]], ['q', [11]], ['q', [12]], ['q', [13]], ['q', [14]], ['q', [15]], ['q', [16]], ['q', [17]], ['q', [18]], ['q', [19]]]}, 'args': [], 'name': 'group20'}} \ No newline at end of file diff --git a/pytket/pytket/qasm/includes/_qelib1_decls.py b/pytket/pytket/qasm/includes/_qelib1_decls.py index c24184f9cb..1bd1396dd1 100644 --- a/pytket/pytket/qasm/includes/_qelib1_decls.py +++ b/pytket/pytket/qasm/includes/_qelib1_decls.py @@ -1,2 +1,2 @@ """DO NOT EDIT! GENERATED BY load_includes.py.""" -_INCLUDE_DECLS={'u3': {'args': ['theta', 'phi', 'lamb'], 'name': 'u3'}, 'u2': {'args': ['phi', 'lamb'], 'name': 'u2'}, 'u1': {'args': ['lamb'], 'name': 'u1'}, 'cx': {'args': [], 'name': 'cx'}, 'id': {'args': [], 'name': 'id'}, 'u0': {'args': ['gamma'], 'name': 'u0'}, 'u': {'args': ['theta', 'phi', 'lamb'], 'name': 'u'}, 'p': {'args': ['lamb'], 'name': 'p'}, 'x': {'args': [], 'name': 'x'}, 'y': {'args': [], 'name': 'y'}, 'z': {'args': [], 'name': 'z'}, 'h': {'args': [], 'name': 'h'}, 's': {'args': [], 'name': 's'}, 'sdg': {'args': [], 'name': 'sdg'}, 't': {'args': [], 'name': 't'}, 'tdg': {'args': [], 'name': 'tdg'}, 'rx': {'args': ['theta'], 'name': 'rx'}, 'ry': {'args': ['theta'], 'name': 'ry'}, 'rz': {'args': ['phi'], 'name': 'rz'}, 'sx': {'args': [], 'name': 'sx'}, 'sxdg': {'args': [], 'name': 'sxdg'}, 'cz': {'args': [], 'name': 'cz'}, 'cy': {'args': [], 'name': 'cy'}, 'swap': {'args': [], 'name': 'swap'}, 'ch': {'args': [], 'name': 'ch'}, 'ccx': {'args': [], 'name': 'ccx'}, 'cswap': {'args': [], 'name': 'cswap'}, 'crx': {'args': ['lamb'], 'name': 'crx'}, 'cry': {'args': ['lamb'], 'name': 'cry'}, 'crz': {'args': ['lamb'], 'name': 'crz'}, 'cu1': {'args': ['lamb'], 'name': 'cu1'}, 'cp': {'args': ['lamb'], 'name': 'cp'}, 'cu3': {'args': ['theta', 'phi', 'lamb'], 'name': 'cu3'}, 'csx': {'args': [], 'name': 'csx'}, 'cu': {'args': ['theta', 'phi', 'lamb', 'gamma'], 'name': 'cu'}, 'rxx': {'args': ['theta'], 'name': 'rxx'}, 'rzz': {'args': ['theta'], 'name': 'rzz'}, 'rccx': {'args': [], 'name': 'rccx'}, 'rc3x': {'args': [], 'name': 'rc3x'}, 'c3x': {'args': [], 'name': 'c3x'}, 'c3sqrtx': {'args': [], 'name': 'c3sqrtx'}, 'c4x': {'args': [], 'name': 'c4x'}} \ No newline at end of file +_INCLUDE_DECLS={'u3': {'args': ['theta', 'phi', 'lamb'], 'name': 'u3'}, 'u2': {'args': ['phi', 'lamb'], 'name': 'u2'}, 'u1': {'args': ['lamb'], 'name': 'u1'}, 'cx': {'args': [], 'name': 'cx'}, 'id': {'args': [], 'name': 'id'}, 'u0': {'args': ['gamma'], 'name': 'u0'}, 'u': {'args': ['theta', 'phi', 'lamb'], 'name': 'u'}, 'p': {'args': ['lamb'], 'name': 'p'}, 'x': {'args': [], 'name': 'x'}, 'y': {'args': [], 'name': 'y'}, 'z': {'args': [], 'name': 'z'}, 'h': {'args': [], 'name': 'h'}, 's': {'args': [], 'name': 's'}, 'sdg': {'args': [], 'name': 'sdg'}, 't': {'args': [], 'name': 't'}, 'tdg': {'args': [], 'name': 'tdg'}, 'rx': {'args': ['theta'], 'name': 'rx'}, 'ry': {'args': ['theta'], 'name': 'ry'}, 'rz': {'args': ['phi'], 'name': 'rz'}, 'sx': {'args': [], 'name': 'sx'}, 'sxdg': {'args': [], 'name': 'sxdg'}, 'cz': {'args': [], 'name': 'cz'}, 'cy': {'args': [], 'name': 'cy'}, 'swap': {'args': [], 'name': 'swap'}, 'ch': {'args': [], 'name': 'ch'}, 'ccx': {'args': [], 'name': 'ccx'}, 'cswap': {'args': [], 'name': 'cswap'}, 'crx': {'args': ['lamb'], 'name': 'crx'}, 'cry': {'args': ['lamb'], 'name': 'cry'}, 'crz': {'args': ['lamb'], 'name': 'crz'}, 'cu1': {'args': ['lamb'], 'name': 'cu1'}, 'cp': {'args': ['lamb'], 'name': 'cp'}, 'cu3': {'args': ['theta', 'phi', 'lamb'], 'name': 'cu3'}, 'csx': {'args': [], 'name': 'csx'}, 'cs': {'args': [], 'name': 'cs'}, 'csdg': {'args': [], 'name': 'csdg'}, 'cu': {'args': ['theta', 'phi', 'lamb', 'gamma'], 'name': 'cu'}, 'rxx': {'args': ['theta'], 'name': 'rxx'}, 'rzz': {'args': ['theta'], 'name': 'rzz'}, 'rccx': {'args': [], 'name': 'rccx'}, 'rc3x': {'args': [], 'name': 'rc3x'}, 'c3x': {'args': [], 'name': 'c3x'}, 'c3sqrtx': {'args': [], 'name': 'c3sqrtx'}, 'c4x': {'args': [], 'name': 'c4x'}} \ No newline at end of file diff --git a/pytket/pytket/qasm/includes/_qelib1_defs.py b/pytket/pytket/qasm/includes/_qelib1_defs.py index 8a9fcf9552..f56eef653b 100644 --- a/pytket/pytket/qasm/includes/_qelib1_defs.py +++ b/pytket/pytket/qasm/includes/_qelib1_defs.py @@ -1,2 +1,2 @@ """DO NOT EDIT! GENERATED BY load_includes.py.""" -_INCLUDE_DEFS={'u3': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lamb'], 'name': 'u3'}, 'u2': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi', 'lamb'], 'name': 'u2'}, 'u1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lamb'], 'name': 'u1'}, 'cx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cx'}, 'id': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', '0'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'id'}, 'u0': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', '0'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['gamma'], 'name': 'u0'}, 'u': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lamb'], 'name': 'u'}, 'p': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lamb'], 'name': 'p'}, 'x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'f82d780e-9798-4013-b833-9c2ec89f216f', 'params': ['1', '0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'x'}, 'y': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '99839e69-76be-4d33-ab81-9c3e1ac693d5', 'params': ['1', '1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'y'}, 'z': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4edcd249-c42c-4a45-a3e1-08c284536edd', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'z'}, 'h': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'h'}, 's': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '2fa1db57-37ee-4b96-8b98-3a6cf3da6600', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 's'}, 'sdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '12df2466-a569-4571-8474-665ba52f7703', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sdg'}, 't': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 't'}, 'tdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e5e36392-dd76-4ec4-ad89-dd44f6b805e5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'tdg'}, 'rx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'df8e4683-958b-4025-84fd-07635531ada9', 'params': ['theta', '-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'rx'}, 'ry': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '4ca6821a-91a8-49a9-9288-5279f554900a', 'params': ['theta', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'ry'}, 'rz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '808c1cee-0398-48e9-bcdf-f3a48025392b', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi'], 'name': 'rz'}, 'sx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '12df2466-a569-4571-8474-665ba52f7703', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '75739985-ee63-4e03-bd37-38fbcf4775c8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '603827dd-a3f7-44e9-a69e-e8a6c34c6d17', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '12df2466-a569-4571-8474-665ba52f7703', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': 'e17a409c-192e-4b6e-bab9-5e4661f21e80', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sx'}, 'sxdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '2fa1db57-37ee-4b96-8b98-3a6cf3da6600', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'ab49fdcc-c761-47b0-9145-4fd1104f7428', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '44a44a27-e237-44d1-aa77-50a260050eda', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '2fa1db57-37ee-4b96-8b98-3a6cf3da6600', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'c569e6dd-0289-4c37-927d-ad0e30147e99', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sxdg'}, 'cz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '8584f2b8-1397-426c-97e6-064ba8a684ba', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '03773862-a8b6-4cb2-95a6-8c4712096d1a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'cce96dfd-54ee-43ec-bede-0a948fb1dc6c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cz'}, 'cy': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '12df2466-a569-4571-8474-665ba52f7703', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '1e60a5c7-1713-4a61-a529-481c706d9578', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd3ee9fd8-b197-4204-8dd3-7a1e948aaf3e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '2fa1db57-37ee-4b96-8b98-3a6cf3da6600', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '03fa04bb-688d-47ca-b1e7-9e17fd9be3ef', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cy'}, 'swap': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0311fd42-6de0-4e44-b31e-e93dbc69a4a6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '72f8c47e-6689-49cb-8d1b-c2903c23320b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bee31c7b-17b7-45d0-9632-901eb63efa4f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'swap'}, 'ch': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '390e6ffa-dcb0-411b-9677-befb1dcf64c4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '12df2466-a569-4571-8474-665ba52f7703', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '0463fccc-e8a9-4994-b0cb-7e940b7d591c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7cd3df0a-bd48-4493-a601-3663ab1f8ac8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'aabb3a1b-b7a2-4334-86ce-11c15d7633b3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '776ee3d9-24bc-46de-9d7e-7cf38dfec96d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd0fcea18-e358-4080-a91e-91c0be02934f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '2fa1db57-37ee-4b96-8b98-3a6cf3da6600', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '90650624-b302-4245-973c-33f4133b1c1b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '9f8251be-1a96-433a-993c-29a2ec92bcc2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '72c6c4e0-c97c-4a33-b649-299765504b62', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '2fa1db57-37ee-4b96-8b98-3a6cf3da6600', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'bef91573-c980-4338-ae7f-f2d83d2297ba', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'f82d780e-9798-4013-b833-9c2ec89f216f', 'params': ['1', '0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'x'}, 'id': '5a8cfa6f-00fe-4590-8049-280b6f924416', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ch'}, 'ccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'df9abca8-90b9-4794-8cec-9ee6027a660c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '870e3813-72aa-490e-a4c1-972ff5f33910', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e5e36392-dd76-4ec4-ad89-dd44f6b805e5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'caba7c12-9f63-48f3-993a-af16f1596c4c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5f1d8ec9-0c14-491a-a57d-1a5b37c225fc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '708c5dc9-878f-4d51-ab2b-12d56a53f30e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '869ceb79-0957-4919-a18d-d96baf80ffc9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'b719645c-9a45-4883-a59a-b2c6bfaa099c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e5e36392-dd76-4ec4-ad89-dd44f6b805e5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '859dbb3b-8aea-4279-8bee-891acd94224d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2d053268-4071-4104-98d7-ad15a60bcd81', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '93f4d65a-9e88-4eda-8e1a-7a54f9d4b672', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '5a7055ca-70fe-44a6-9da8-3ae66c484369', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '14be9f64-1321-4deb-9160-4f82877242a9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e5e36392-dd76-4ec4-ad89-dd44f6b805e5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'b66c3a74-8042-48b2-b23b-80fbc57373f0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7eb5861b-30ab-45b8-8a88-36eb28205bfe', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6f15f1ce-4b2f-4eb3-aa22-d4a8ecb33f2b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'ccx'}, 'cswap': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '24afc8fb-54eb-4147-8599-78b2d2daeb5f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'df9abca8-90b9-4794-8cec-9ee6027a660c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '870e3813-72aa-490e-a4c1-972ff5f33910', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e5e36392-dd76-4ec4-ad89-dd44f6b805e5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'caba7c12-9f63-48f3-993a-af16f1596c4c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5f1d8ec9-0c14-491a-a57d-1a5b37c225fc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '708c5dc9-878f-4d51-ab2b-12d56a53f30e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '869ceb79-0957-4919-a18d-d96baf80ffc9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'b719645c-9a45-4883-a59a-b2c6bfaa099c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e5e36392-dd76-4ec4-ad89-dd44f6b805e5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '859dbb3b-8aea-4279-8bee-891acd94224d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2d053268-4071-4104-98d7-ad15a60bcd81', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '93f4d65a-9e88-4eda-8e1a-7a54f9d4b672', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '5a7055ca-70fe-44a6-9da8-3ae66c484369', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '8cd6b95d-08b8-46ec-beb9-5c4b8ff7e193', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '14be9f64-1321-4deb-9160-4f82877242a9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e5e36392-dd76-4ec4-ad89-dd44f6b805e5', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'b66c3a74-8042-48b2-b23b-80fbc57373f0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7eb5861b-30ab-45b8-8a88-36eb28205bfe', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6f15f1ce-4b2f-4eb3-aa22-d4a8ecb33f2b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'name': 'ccx'}, 'id': '5b8abecf-ec39-45c8-a7ce-2633d467544d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e41744ff-5b04-4e0f-8357-764ed1504ba5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'cswap'}, 'crx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7f9e8a55-c071-4192-826b-ceca88a32edd', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ab251ff3-2156-477c-aff1-6f8531d54c7c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'e7e22e43-cc3e-4f48-9e23-76a556c42be0', 'params': ['(-1/2)*lamb', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a137052d-0506-48df-936a-815de94717a4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '011abe66-a92b-4d4c-9b30-9743263cf922', 'params': ['(1/2)*lamb', '-1/2', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'crx'}, 'cry': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '4ca6821a-91a8-49a9-9288-5279f554900a', 'params': ['theta', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': '9fecaf9e-59fc-4a43-87c4-30b8a96185fd', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3533cb20-2ed0-4583-8ec1-6e06a9505d7c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '4ca6821a-91a8-49a9-9288-5279f554900a', 'params': ['theta', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': '9a56b287-9f8f-43de-ae88-7dce84f4b20b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '72fa49e6-0175-4117-ad95-7ea7f2bdc1e2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'cry'}, 'crz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['phi'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '808c1cee-0398-48e9-bcdf-f3a48025392b', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'rz'}, 'id': 'fc68af4d-bf2f-4163-b546-5a9f2672eba0', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '61fef60c-0095-4677-97c7-04e7a1b2019f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['phi'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '808c1cee-0398-48e9-bcdf-f3a48025392b', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'rz'}, 'id': 'd39015c5-7ccf-4a52-825a-e9dc34375b88', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1173f746-ec89-4a8b-be3d-72520df2dfd6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'crz'}, 'cu1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'cu1'}, 'cp': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '1a75ffbd-e756-4309-bfc3-19e82c96d37f', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6051a426-40e9-40df-bf63-daa9cfc2fdee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'cc21519f-c0d6-4047-bcd0-de61e1c40cf9', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'cf162a35-6c3d-431d-b6fe-9bdd831fb7d7', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a908bd7a-fcf5-4ad9-ac1d-70f788975cc7', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'cp'}, 'cu3': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ed847822-8b8e-4762-a7ac-f746134c21d2', 'params': ['(1/2)*(pi*lamb + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15f06338-cb7e-4952-8b76-aa5361842508', 'params': ['(1/2)*(pi*lamb - pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '922eb60a-9d0e-43ec-94f2-4bc18e9650da', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '44532870-6a05-48a9-8da4-ab6915100c58', 'params': ['(-1/2)*theta', '0', '(-1/2)*(pi*lamb + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7b3b701b-8252-464d-a98c-154596a85dcf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'f80e767f-7ac2-4e3e-89e5-25c688f45a7a', 'params': ['(1/2)*theta', 'phi', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lamb'], 'name': 'cu3'}, 'csx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '581d50aa-a6e7-430b-badf-e7e3365a1221', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'd329b235-4248-4b7f-877e-c4e2ea824319', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a921aedd-ee27-4fc0-bdee-4b9b70411baa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csx'}, 'cu': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '85434ba9-dde0-4699-a221-0f59962ebd82', 'params': ['gamma'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '1aea13e8-a252-465f-983c-8c7b64c876f2', 'params': ['(1/2)*(pi*lamb - pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '367bd311-db32-4edf-87fc-71007881ec16', 'params': ['(1/2)*(pi*lamb + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e061fc9a-9c2d-41d1-b5d1-9034133da813', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u'}, 'id': 'a98ead1b-ebfe-4446-affd-f1759df1d2aa', 'params': ['(-1/2)*theta', '0', '(-1/2)*(pi*lamb + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '482fedbe-96c6-4482-ab90-4d60a2894cb4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u'}, 'id': 'dee312ab-e780-4e35-b592-674b9c4aecb1', 'params': ['(1/2)*theta', 'phi', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lamb', 'gamma'], 'name': 'cu'}, 'rxx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '8395b63e-d171-4e88-87db-8aeebae1a798', 'params': ['1/2', 'theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'd404228d-9344-44de-a25c-51ecca2d00aa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e88c9725-c829-4cfd-8727-4b23bacb7927', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7932610-4893-484c-8640-b75be88f5189', 'params': ['-theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '25c3178c-1efa-4dca-8e88-57ad4e24a502', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '608cb12e-86dc-497b-91ab-400cdb86d5af', 'params': ['-1', '(-pi*theta + pi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '09f47c15-b11c-4644-bb09-dd762660b5ba', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rxx'}, 'rzz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'acf2dccd-694c-459d-ba6f-7fd8b6b3e17c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'b54f0f4c-5dfa-4435-bce8-cd5d84b3d247', 'params': ['theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b2dc002a-5702-4410-8a92-8acb6650a0df', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rzz'}, 'rccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '9d287522-f0fa-4eb6-bc54-1083224b32ec', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e843e723-ca37-4ee0-a4f2-39f22233fabc', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4f3b97ec-c492-4c40-b208-9ab1f5065daf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '81215a69-bfa7-420f-98e2-05dcfc070aed', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6394aee4-4a9c-44db-92ad-966368ae7565', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'd8d95a85-f100-40e7-b9bc-d1c6b18db552', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '414b1a00-cb5b-4c91-a15a-19992e1736e1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '944548bc-7f2e-4c24-87b1-44c9f6e84b12', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '668e3d80-8fa5-4646-890f-c694e66f22ef', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'rccx'}, 'rc3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ab905b66-cf2a-41c8-ba22-87d945623311', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '05e3f4fb-5236-4a99-a03a-7dbfc56bfbf3', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ff4d3bc2-f7b9-4a5e-b76a-aa115c30ca0f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '456a9eba-4a52-4289-a40d-b75c7cd7bd9d', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '858cf35b-1f9d-40f4-b9ef-f1534cf48908', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2368db09-5c79-4b0f-ac8b-4ec1cc64f432', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '3d30a444-f3ae-4b65-89fa-458d23131b21', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1c4ae4f7-f08b-4d02-a649-6a4e62b44062', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'c34d0481-128e-4d8a-bb32-71f6f3ded257', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2af41c0c-c19f-4b32-bf36-112ebc66218f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '5cb69c0c-f731-4146-8c91-d7a7b4725c61', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '88e5ac33-d9a3-4d42-a736-83d06ffa4e21', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'd400b419-e9dd-4adf-8b7f-11cae3d956b9', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'acdaea00-9163-4973-8983-c7afc8d0bb0a', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '1a6a326a-6419-485d-9388-5ccb60a4996a', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e0936a32-acaa-449b-946b-d0d9d13a061a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'd0097bb9-5518-4897-9fdf-f8eacae41c52', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'a36d685c-17c5-40b7-ad72-b55e9caec2a8', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'rc3x'}, 'c3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '921e6abc-4d72-4ae2-920b-710fc2b013ce', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '1c917b09-7fed-41fa-87a1-3e2a95321004', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '376ac3e8-2922-4671-bd06-081e210db752', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '144b057d-ed73-41a0-8a44-3d3f86e9f2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f664d594-5e69-4667-bd84-1ec60d446534', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8ccabfd1-6e6b-4ff4-b8ff-3fc915466392', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '2218a26c-f165-478a-9fdc-6b663a5733aa', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '92aa0a86-c4fd-4482-8b27-c34d63db509c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd48ecdb7-48ad-4678-9c49-13b07464442c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0a3b2e01-70f3-4f0f-9176-633844f306d4', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e7140729-56db-4a04-9723-b70a13227046', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '33c59350-0721-4c0c-8336-29d9a8225120', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5b47b3f0-debb-4320-96fe-58cc7ca5b357', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '1aa8010f-ea91-4983-a87c-458d11d5ff8d', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a2276bd4-d864-4550-99d7-75ce9cf4595b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b676486-c969-442b-b849-ce129767727f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '669bd23f-1bf4-4931-b4d9-b98d3615fa1c', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20f04b51-044c-4919-ab89-14d448332694', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'dd7705d2-6787-4558-ac85-795679dfc8cd', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '75b9756d-ec99-42b8-beb4-a94b7f059f1a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e2110049-c6ca-4a96-9534-9951f2db31e6', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '41224b80-442c-4de8-85db-21859f723622', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3459933d-7f58-421b-9933-8b8765813751', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bba1571d-4aac-471a-b784-a00e1196525e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4d945c9b-6959-49c4-9aff-fb09ec297a57', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '29de5123-f4ab-4e0c-bb4b-5b00637a609f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0eec7d95-1698-4053-a482-89fb73e39151', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '241b26d8-2569-4c7b-b2e1-eccd2e9eba80', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b48cc9f6-0ee8-48e0-978b-d11b36be81fe', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '541a6afe-bfc0-4299-bcee-94d533a661fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9dff8a75-bb82-4bff-bdc9-874e36e096bc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3x'}, 'c3sqrtx': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0a7d70cd-466f-470c-9629-e97308e7428b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '4a75e8fa-79c6-4407-852a-20750e623d2f', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b8b78e61-b81d-4ff6-abb5-0e352d856800', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '544ee823-b3f2-4a0f-b290-3c6f7f3af852', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '42942659-4c9c-4b72-bc32-f4246cbac76a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '34e525cc-e66d-4faf-bd88-63452bb15eea', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '039fbcfa-45e4-4f86-acbc-4b8e03e57c7c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '4974f036-102e-445d-a2ba-0da5c6605d60', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '314570a4-d039-45b4-a33f-c2b05d34153a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'aff05355-6b23-4fc7-94ff-51d6c0b043da', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f2f54742-98b0-4666-aa83-63dbc10ca296', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '76bc16be-57da-49ba-9200-dc99a451f309', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'cb7fd185-3f1b-4ac6-a01c-7ab0a80ef886', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '731e9499-c7ed-4258-938f-fb9e4509a2fe', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5c42fc2d-1fd3-4b7a-81d0-202f6ac26ecc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '4cfbeb72-0b69-4f89-a679-518267752c23', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '115da913-8e82-413c-9141-98d181223eaf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '3205ac0f-ac11-487f-bd8f-12e4ce17071d', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4fdba983-ce8c-4d45-b1be-c0c816358686', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ad65b11d-9885-46ce-a168-bd777b96ecb9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7356dbfb-d034-4889-a106-238cc47b1862', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'be1627ee-fb6d-4b08-9483-dd972df1d0d7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '30fa8d5d-9567-451f-a50b-f2c76716c104', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f30dc496-57ec-4dfe-82c1-69f31a2dfe67', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '37a794f3-363f-4deb-b316-f98f784bdd70', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'e8b73e3d-1d3b-4fa1-9999-8f30cb4434cd', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '166ea871-98ee-48dc-b155-5e5856890353', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3sqrtx'}, 'c4x': {'definition': {'bits': [], 'commands': [{'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '453b0d8e-35cb-4a1c-bb03-8dc8b01ea08a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '296702cd-d538-4f95-ae6f-33c791afd4aa', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '921e6abc-4d72-4ae2-920b-710fc2b013ce', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '1c917b09-7fed-41fa-87a1-3e2a95321004', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '376ac3e8-2922-4671-bd06-081e210db752', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '144b057d-ed73-41a0-8a44-3d3f86e9f2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f664d594-5e69-4667-bd84-1ec60d446534', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8ccabfd1-6e6b-4ff4-b8ff-3fc915466392', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '2218a26c-f165-478a-9fdc-6b663a5733aa', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '92aa0a86-c4fd-4482-8b27-c34d63db509c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd48ecdb7-48ad-4678-9c49-13b07464442c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0a3b2e01-70f3-4f0f-9176-633844f306d4', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e7140729-56db-4a04-9723-b70a13227046', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '33c59350-0721-4c0c-8336-29d9a8225120', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5b47b3f0-debb-4320-96fe-58cc7ca5b357', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '1aa8010f-ea91-4983-a87c-458d11d5ff8d', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a2276bd4-d864-4550-99d7-75ce9cf4595b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b676486-c969-442b-b849-ce129767727f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '669bd23f-1bf4-4931-b4d9-b98d3615fa1c', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20f04b51-044c-4919-ab89-14d448332694', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'dd7705d2-6787-4558-ac85-795679dfc8cd', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '75b9756d-ec99-42b8-beb4-a94b7f059f1a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e2110049-c6ca-4a96-9534-9951f2db31e6', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '41224b80-442c-4de8-85db-21859f723622', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3459933d-7f58-421b-9933-8b8765813751', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bba1571d-4aac-471a-b784-a00e1196525e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4d945c9b-6959-49c4-9aff-fb09ec297a57', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '29de5123-f4ab-4e0c-bb4b-5b00637a609f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0eec7d95-1698-4053-a482-89fb73e39151', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '241b26d8-2569-4c7b-b2e1-eccd2e9eba80', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b48cc9f6-0ee8-48e0-978b-d11b36be81fe', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '541a6afe-bfc0-4299-bcee-94d533a661fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9dff8a75-bb82-4bff-bdc9-874e36e096bc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '9f6faca2-03c7-4e04-af13-25dfac3c9c0b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f5dca1fd-3009-496f-98bd-8cca1804e99a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '6268e020-c655-4f80-8c1a-594bc3403220', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'bdd307f4-2935-4a71-b78e-8350e550db1d', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '921e6abc-4d72-4ae2-920b-710fc2b013ce', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '1c917b09-7fed-41fa-87a1-3e2a95321004', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '376ac3e8-2922-4671-bd06-081e210db752', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '144b057d-ed73-41a0-8a44-3d3f86e9f2e3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f664d594-5e69-4667-bd84-1ec60d446534', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '8ccabfd1-6e6b-4ff4-b8ff-3fc915466392', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '2218a26c-f165-478a-9fdc-6b663a5733aa', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '92aa0a86-c4fd-4482-8b27-c34d63db509c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd48ecdb7-48ad-4678-9c49-13b07464442c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0a3b2e01-70f3-4f0f-9176-633844f306d4', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e7140729-56db-4a04-9723-b70a13227046', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '33c59350-0721-4c0c-8336-29d9a8225120', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5b47b3f0-debb-4320-96fe-58cc7ca5b357', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '1aa8010f-ea91-4983-a87c-458d11d5ff8d', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a2276bd4-d864-4550-99d7-75ce9cf4595b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4b676486-c969-442b-b849-ce129767727f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '669bd23f-1bf4-4931-b4d9-b98d3615fa1c', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '20f04b51-044c-4919-ab89-14d448332694', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'dd7705d2-6787-4558-ac85-795679dfc8cd', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '75b9756d-ec99-42b8-beb4-a94b7f059f1a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'e2110049-c6ca-4a96-9534-9951f2db31e6', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '41224b80-442c-4de8-85db-21859f723622', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '3459933d-7f58-421b-9933-8b8765813751', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bba1571d-4aac-471a-b784-a00e1196525e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4d945c9b-6959-49c4-9aff-fb09ec297a57', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '29de5123-f4ab-4e0c-bb4b-5b00637a609f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '0eec7d95-1698-4053-a482-89fb73e39151', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '241b26d8-2569-4c7b-b2e1-eccd2e9eba80', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'b48cc9f6-0ee8-48e0-978b-d11b36be81fe', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '541a6afe-bfc0-4299-bcee-94d533a661fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9dff8a75-bb82-4bff-bdc9-874e36e096bc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '48426f80-feda-436c-9a19-fca8fb05c0fc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '36f3f99f-198b-4740-bbe7-30e546fba06a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '0a7d70cd-466f-470c-9629-e97308e7428b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '4a75e8fa-79c6-4407-852a-20750e623d2f', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b8b78e61-b81d-4ff6-abb5-0e352d856800', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '544ee823-b3f2-4a0f-b290-3c6f7f3af852', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '42942659-4c9c-4b72-bc32-f4246cbac76a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '34e525cc-e66d-4faf-bd88-63452bb15eea', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '039fbcfa-45e4-4f86-acbc-4b8e03e57c7c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '4974f036-102e-445d-a2ba-0da5c6605d60', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '314570a4-d039-45b4-a33f-c2b05d34153a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'aff05355-6b23-4fc7-94ff-51d6c0b043da', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f2f54742-98b0-4666-aa83-63dbc10ca296', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '76bc16be-57da-49ba-9200-dc99a451f309', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'cb7fd185-3f1b-4ac6-a01c-7ab0a80ef886', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '731e9499-c7ed-4258-938f-fb9e4509a2fe', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5c42fc2d-1fd3-4b7a-81d0-202f6ac26ecc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '4cfbeb72-0b69-4f89-a679-518267752c23', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '115da913-8e82-413c-9141-98d181223eaf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '3205ac0f-ac11-487f-bd8f-12e4ce17071d', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4fdba983-ce8c-4d45-b1be-c0c816358686', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'ad65b11d-9885-46ce-a168-bd777b96ecb9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7356dbfb-d034-4889-a106-238cc47b1862', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'be1627ee-fb6d-4b08-9483-dd972df1d0d7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '30fa8d5d-9567-451f-a50b-f2c76716c104', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'f30dc496-57ec-4dfe-82c1-69f31a2dfe67', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '37a794f3-363f-4deb-b316-f98f784bdd70', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '7de8be13-9d11-4c54-9d06-d5d5ffc0ec98', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea0f8ab1-c25c-4048-a5a9-e99bcd7bedee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f1dfa7bb-d11d-4515-a159-85db01bcad1b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '579104f5-9396-4868-99cd-69d9e8b2b2c0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'df8817a8-5d82-4a66-b0d3-3da05b25ea15', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'e8b73e3d-1d3b-4fa1-9999-8f30cb4434cd', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '70f16880-9c26-4a46-b790-7288e3c18306', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '166ea871-98ee-48dc-b155-5e5856890353', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3sqrtx'}, 'id': 'e11a0b68-3791-48cc-981d-954ffc84376f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'c4x'}} \ No newline at end of file +_INCLUDE_DEFS={'u3': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lamb'], 'name': 'u3'}, 'u2': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi', 'lamb'], 'name': 'u2'}, 'u1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lamb'], 'name': 'u1'}, 'cx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cx'}, 'id': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', '0'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'id'}, 'u0': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', '0'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['gamma'], 'name': 'u0'}, 'u': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta', 'phi', 'lamb'], 'name': 'u'}, 'p': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['lamb'], 'name': 'p'}, 'x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '2cfa0523-f40a-4516-a3d7-f883ac0d4b86', 'params': ['1', '0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'x'}, 'y': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '98152960-4927-4240-a33e-5ce16dcbb433', 'params': ['1', '1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'y'}, 'z': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '74ad08ee-0f1b-4ab9-b253-f18ab844b38a', 'params': ['1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'z'}, 'h': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'h'}, 's': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4be269fb-6fe8-4eb3-b192-983cca5eafb3', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 's'}, 'sdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'bd00f59a-3793-4b49-a5ff-517c12c0652c', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sdg'}, 't': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 't'}, 'tdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7b8d83c-1fa5-4e29-93a6-489a2a5dd1a3', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'tdg'}, 'rx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '54c48979-c806-40ec-b8d4-4358e8a0d072', 'params': ['theta', '-1/2', '1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'rx'}, 'ry': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '396e0f25-ff5f-43bd-bfc9-1ee831385e3d', 'params': ['theta', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['theta'], 'name': 'ry'}, 'rz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '819e3335-29cd-4146-a6a0-493eecde6b4b', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': ['phi'], 'name': 'rz'}, 'sx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'bd00f59a-3793-4b49-a5ff-517c12c0652c', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '5519229c-18a6-4a44-9298-50bed29c9c72', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '823f011a-1558-44bd-88bd-0578f5da4b9f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'bd00f59a-3793-4b49-a5ff-517c12c0652c', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '0962f716-8541-449a-8494-033bbb8c3eb1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sx'}, 'sxdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4be269fb-6fe8-4eb3-b192-983cca5eafb3', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': 'de116b50-f47e-4695-8432-6f0b85e036b3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a67adaff-ad42-4030-b733-96d3a83d76bb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4be269fb-6fe8-4eb3-b192-983cca5eafb3', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '556556c7-a70e-446c-a6b5-f2b52f807c4b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'args': [], 'name': 'sxdg'}, 'cz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '00c79519-cabf-4968-88fb-75de44d657ec', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '374acae1-5d4c-4001-9cd3-8ad90925061e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'a0747706-90cc-45d4-b594-9314e9243937', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cz'}, 'cy': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'bd00f59a-3793-4b49-a5ff-517c12c0652c', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '7827e0fc-72c4-41bf-8763-cd1bbbbd0e72', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e12428b2-c7fe-4c98-b625-07183b5b3bc9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4be269fb-6fe8-4eb3-b192-983cca5eafb3', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '71143f8b-5d78-41a2-a299-9c4361670642', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cy'}, 'swap': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2f1e26bd-ae18-433b-ab52-089b94bea0c5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fb34f012-6733-4264-b409-c986db3ab001', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '87f29fee-b544-4af6-8ac3-d58bf68c6f12', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'swap'}, 'ch': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b9e819ca-de8d-42ba-9cb0-86d80241de8b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'bd00f59a-3793-4b49-a5ff-517c12c0652c', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'sdg'}, 'id': '51026748-4b3f-46d5-9d61-cf207ec76eae', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '77b51f0a-5680-4ba7-8732-a213ffc790fe', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'b27e3cf8-f9ba-4ac9-96f0-9b6519dd71e5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '5004fb84-3c18-4371-981a-236895852d53', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '77e41df8-5b42-4cc6-8a6f-4f343ea8b3e9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4be269fb-6fe8-4eb3-b192-983cca5eafb3', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '34501f39-3ab6-4d74-afd4-7b5c3844ff55', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '9b59ee02-46fd-4b58-9717-a4c7baff9b52', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '77265e89-2a56-44f7-96ce-7a7b0f488d45', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '4be269fb-6fe8-4eb3-b192-983cca5eafb3', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 's'}, 'id': '3708c26d-7ce6-43c1-8985-a5b28b4944d6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '2cfa0523-f40a-4516-a3d7-f883ac0d4b86', 'params': ['1', '0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'x'}, 'id': 'd5766af0-1b36-4ea3-9fe4-c1563e661644', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'ch'}, 'ccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '841179f0-c8f0-4879-85db-fa580f525983', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '195829ca-8416-43ca-908c-bb1e4bfbf44c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7b8d83c-1fa5-4e29-93a6-489a2a5dd1a3', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'db1c531c-8980-4fc9-a219-7a6b478f6563', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4146fb7f-9f60-422e-a8ea-0828965a7b72', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '8f55ed56-e3fd-4612-be85-103fb009f33c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '66820fec-185e-49bc-b813-9f303247753d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '323ed360-5eec-4190-8280-27413cbac951', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7b8d83c-1fa5-4e29-93a6-489a2a5dd1a3', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '93a2f6bc-496f-4fdb-9316-2e2ee8555512', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '49acc9bc-6ef0-4568-89ed-0e1e1c0d7735', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3433d5bb-37ea-4df5-9eae-e395630626bf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '2aad3514-0f73-4f3f-8ec1-d355186bfb1f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'e7ab9d70-b9a0-4a97-a42a-10fe6a757a73', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7b8d83c-1fa5-4e29-93a6-489a2a5dd1a3', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'caff3276-b712-4105-b0ca-3657da135736', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '69b840cd-993c-41d1-8eb0-ca05b4e47bea', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0f57e0ef-4e07-4ef5-8d3f-bc1a64cd3a34', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'ccx'}, 'cswap': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '25fac20a-12d4-4779-bf4c-c65d9ae45f3a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '841179f0-c8f0-4879-85db-fa580f525983', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '195829ca-8416-43ca-908c-bb1e4bfbf44c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7b8d83c-1fa5-4e29-93a6-489a2a5dd1a3', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'db1c531c-8980-4fc9-a219-7a6b478f6563', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4146fb7f-9f60-422e-a8ea-0828965a7b72', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '8f55ed56-e3fd-4612-be85-103fb009f33c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '66820fec-185e-49bc-b813-9f303247753d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '323ed360-5eec-4190-8280-27413cbac951', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7b8d83c-1fa5-4e29-93a6-489a2a5dd1a3', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': '93a2f6bc-496f-4fdb-9316-2e2ee8555512', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '49acc9bc-6ef0-4568-89ed-0e1e1c0d7735', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3433d5bb-37ea-4df5-9eae-e395630626bf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': '2aad3514-0f73-4f3f-8ec1-d355186bfb1f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '15e52e79-bafd-4ee9-93ad-0ae2ce28d032', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 't'}, 'id': 'e7ab9d70-b9a0-4a97-a42a-10fe6a757a73', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f7b8d83c-1fa5-4e29-93a6-489a2a5dd1a3', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'tdg'}, 'id': 'caff3276-b712-4105-b0ca-3657da135736', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '69b840cd-993c-41d1-8eb0-ca05b4e47bea', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '0f57e0ef-4e07-4ef5-8d3f-bc1a64cd3a34', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'name': 'ccx'}, 'id': 'a3ce4463-bf7c-45f5-a536-28da600b6bcd', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ce26bc2d-b0dc-482e-ba1c-685b311a0a83', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'cswap'}, 'crx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '03c18a62-c01b-4eee-870a-e8db7821c4ad', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'd84eefce-1205-4079-a8aa-3cb43f524fa9', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '02886971-90af-403a-9b5b-f056ab396405', 'params': ['(-1/2)*lamb', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '3be07dd3-d94f-44a2-80cb-646d3adafc7d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '550de273-f85d-431b-acb0-1a6329e6b6fc', 'params': ['(1/2)*lamb', '-1/2', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'crx'}, 'cry': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '396e0f25-ff5f-43bd-bfc9-1ee831385e3d', 'params': ['theta', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': '65d0f86d-0a19-4019-9a93-b51e48dc4067', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9700982b-7230-48c7-b6fe-a0bc9f92fe4a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '396e0f25-ff5f-43bd-bfc9-1ee831385e3d', 'params': ['theta', '0', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'ry'}, 'id': '5f00e2b4-4d93-46aa-8acc-dc368a426d8b', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b0aaa762-aa04-4f75-b1ca-ec069f76f1a0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'cry'}, 'crz': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['phi'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '819e3335-29cd-4146-a6a0-493eecde6b4b', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'rz'}, 'id': 'd31c02c1-f463-4337-825b-ade0b0bd7a60', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '5ed0d3d4-b845-4f50-929b-292a7f6cbc96', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['phi'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '819e3335-29cd-4146-a6a0-493eecde6b4b', 'params': ['phi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'rz'}, 'id': '7f494398-d754-49fd-9796-ac42d5c20c99', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '12fe7322-5e2e-4617-aa24-e89593633f10', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'crz'}, 'cu1': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'cu1'}, 'cp': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '359935a3-6cab-4a3c-a44d-338160b0442d', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1c8fd6fd-845a-423b-936c-dce16a430922', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5f280f08-0f3c-4ef1-adc1-e32e2690dcd3', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2acdb082-436f-441b-8f17-ed26e51accb0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '35ac78f5-d5d1-4d41-87ee-fd338283ed95', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['lamb'], 'name': 'cp'}, 'cu3': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '9a7ecc21-5930-42b3-a9ee-a6b1d64b48a4', 'params': ['(1/2)*(pi*lamb + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '73abf28e-18f8-4d54-908f-aa317546ea3c', 'params': ['(1/2)*(pi*lamb - pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2c95bd4f-cbea-4e32-acd5-64d227f124cb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': '2080b7b8-3f0a-4bf0-aef6-34077357df53', 'params': ['(-1/2)*theta', '0', '(-1/2)*(pi*lamb + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '36a429a2-fd83-4671-b8cd-9fa43df93fa2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'c7b43621-62af-4d31-85e6-553cf789d2ea', 'params': ['(1/2)*theta', 'phi', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lamb'], 'name': 'cu3'}, 'csx': {'definition': {'bits': [], 'commands': [{'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '4cf7abcc-c3ba-47c9-b752-a8a41c3aeb33', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'b91457d1-4b9f-4740-950d-aeb1caa8324a', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '518b19b1-a5bd-4478-9f51-c26ba6dca92d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csx'}, 'cs': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '4ba13eb5-4262-4c42-9d5a-f855904a8082', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'cs'}, 'csdg': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '85322eaa-afd8-464a-8698-3717b0132540', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': [], 'name': 'csdg'}, 'cu': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '709da721-fd7f-4ff6-84ec-2141971f2303', 'params': ['gamma'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a4821a48-7609-49ce-966c-a2c95bcc2041', 'params': ['(1/2)*(pi*lamb - pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'edcb7c17-92de-41d0-a5ce-fb1eeb32ac68', 'params': ['(1/2)*(pi*lamb + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e1172f5b-cf45-4140-8572-911a2d27c5ce', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u'}, 'id': 'a3e4d7f3-e7eb-49d1-b291-e1f922d3c38a', 'params': ['(-1/2)*theta', '0', '(-1/2)*(pi*lamb + pi*phi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ea787c8c-07fd-4665-9797-378909955740', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u'}, 'id': '0ae039d1-1be8-43c7-8fbc-508099e2282f', 'params': ['(1/2)*theta', 'phi', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta', 'phi', 'lamb', 'gamma'], 'name': 'cu'}, 'rxx': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['theta', 'phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['theta', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u3'}, 'id': 'f7bfd085-fec6-49a3-9ccb-7b371e359c24', 'params': ['1/2', 'theta', '0'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'e68f660b-28c7-4915-ae0d-aec00264dbbb', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9d19f1bb-4d14-4a89-9ad2-53ec5cd15f2f', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '080a6bae-204a-433c-920b-d59fdbc33be9', 'params': ['-theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '79df9b70-812f-41f9-9aee-0b60510a553a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ea305e57-35b0-447b-b12a-eeea3a75cb26', 'params': ['-1', '(-pi*theta + pi)/pi'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '40539a3b-7c04-4b92-9eb8-06420effd2c2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rxx'}, 'rzz': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9d25e983-8cb7-4e83-be85-87df681eb11e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '1200eba6-0ff7-4e80-bc65-5367c63055c0', 'params': ['theta'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '9ab34cb1-958d-4eff-a792-a922a36dc1a6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'args': ['theta'], 'name': 'rzz'}, 'rccx': {'definition': {'bits': [], 'commands': [{'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'd52849a9-2b48-48c3-8559-c58e700d7b4c', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '22ef1fc1-bdc7-452d-bc05-e92c92c5656f', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2a4b672a-3e29-437b-af54-1003f3baedac', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '056b12de-78fc-47bf-b9d8-3a9bb509e0db', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '7a133392-4c95-4cfb-8dfb-9c97bdabcfbf', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'd8e20b1d-4426-4d2d-baba-8ed52bf47148', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '583b89b2-a5f2-4c9b-a6ca-4625d1e51166', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '6aabdcb1-85a8-4d44-9017-a2673a2dc66f', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '3fef903e-ff53-48da-91eb-2cc33c2d62f6', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]]]}, 'args': [], 'name': 'rccx'}, 'rc3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '0e6f8353-2ac3-4d62-bda6-c20230df1102', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ebfa821d-b0dd-4036-a0c0-666fb89a3a2f', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c6942f3a-e464-4270-8a87-bea95a6af7fa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '6b648946-6931-4092-a2cc-048a262762ac', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '3f2ae678-e322-4ace-aa49-001a562c56aa', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fe05d977-c260-4d7b-a5c7-ea18e6c37511', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'f6842995-7075-4ad7-8071-e865a35ba3ad', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'e3db0057-62cf-409a-8014-f43697676e48', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '9d55a7f3-2cf3-4125-8cdd-8d416321136d', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '076d8bf2-a623-4dd0-96c5-b52b13e7fc7c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '1b04398c-183c-498d-b031-618371277e39', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '26528b6a-cd37-4dc8-b54e-87071dc92ca0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '50155d4a-7456-4069-bf39-7a29eefeeb53', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '3368f306-73b6-424a-bbd1-ce2408646fb3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'cc128768-92e9-4540-a4c9-2b3f56c406dc', 'params': ['1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'bf6b9e19-3019-43d5-bdfa-ddefa9655a03', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'c1fca543-be47-425c-a043-801e9095e55b', 'params': ['-1/4'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': '89045d95-6208-48e8-a107-3a1cf5b46bb5', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'rc3x'}, 'c3x': {'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'cd82c83c-3055-4032-a81c-05fcdc5121c1', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6133c266-b94d-4223-8efe-a9fc35f9f879', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '249f33bf-82fa-46f3-95db-2a87eab3c122', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3599a73f-1e38-48c6-9da9-b31347170114', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1d742090-a105-488f-b880-11e728d35817', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a95acd4a-342e-42ff-a39d-9a84dba509c4', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f1b4696a-c8c9-4319-95f7-3d57c3c79962', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '02394604-e038-499c-9914-f7d0abdabeaa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2048a985-4530-47d3-a88e-caca6457d5d0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4c5012b3-7f60-44cf-872b-e66bdcad321f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ddb95e9d-54bc-4036-90f0-5f595f89d1ce', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '016db449-8d38-4a71-ac8d-725474a2a330', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '081e6820-a476-499d-a56e-baf515ff2ea5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '24b1bbf4-da01-4dfb-8a07-1d667f67339e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '55decee2-8808-493c-b176-f1d262e7eafc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '77302681-9f68-4e07-9a82-a08e4a1b0ed1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ae7d5e1a-4e65-4f49-b771-d3e14299e743', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f4ac773d-2d78-49c0-bbe1-b1e502dfa238', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c196e0f6-86c5-4235-a73d-c623311a998e', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fc543db1-7a32-488e-a22c-77389f1921a5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '76b76ce7-d603-4420-9123-ccc59f5267f7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fe89a446-ecfe-4516-9def-3f3c5210507a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5732a2fa-8118-4a33-b12f-c8cf6b354945', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a05df1f7-cc9a-442a-adca-eef85af1e6a4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '164e2abb-8d27-4f6f-ac87-08390820de61', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ed9a79de-0662-444d-890a-be454a06bfac', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd5c4d9ca-ce43-4c7e-8019-518fc7723fbf', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4bef0c72-b0bb-4070-80af-80764743b9d1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '33d5706a-0c2c-4b85-ac9e-4a7ea031a0cd', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '997066ae-1bbd-4811-a972-0d8da8909131', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '223667b2-8d46-44c4-b4bb-d446a81e5b0b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3x'}, 'c3sqrtx': {'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3765fef2-2f16-4e12-aa74-fabbd87ff360', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '894e5a07-0ea8-4341-a144-6bafc973c30d', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6eaa0865-4b6d-4431-b6eb-1f44a823f772', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'de3ee67d-40d4-48d7-8a64-9f54d4314137', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'e1839a8c-8b83-416e-8679-a74c7daf042b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'ba033867-adb4-441e-8778-73474ef225f6', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '91664acb-9df7-479b-adc4-94ff2519e52d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '2f96060a-9df2-414f-adbf-9499d512c170', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9481ad79-62a4-45bf-b87d-58459866b1c4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'c6daaff0-7bb2-4e62-9679-615f984577c8', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ec758859-4110-4e79-bfbb-b010af0f5fc6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9e4e0f22-739b-46fd-9001-b12baa06ea9c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'aa76690e-d942-4bcc-b7de-c79f12e69223', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '73aba6a7-6e52-4a59-94cd-a168c1fe2199', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b82716ee-5a00-40a1-a9be-d0ec033cada2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '93a19bd7-98de-4b62-8458-3188c9c16eee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c8241a61-b679-443c-9426-d75b88000ac8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'af269176-617c-4fe1-80db-72d3b30c629c', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ed3489ea-639c-4e6d-bf54-6e96a9f6f71e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'de121b88-f585-4454-94a8-b79b176f5436', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3e17d548-f457-4b26-8d83-3017cce23320', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'f9f4fb77-f6dc-47bb-adec-ded024ae22e9', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c5b6b46b-a4b8-4184-be2c-1bb095884be2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1bccca89-97d9-4c00-b7fe-df670c4e0641', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c526897f-9af0-4e92-80ce-afd174cd484b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '2736cbf8-3411-444c-9aee-3c9a746b421e', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '5b2fe195-c91e-48f3-ae1b-48a36de20fab', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'args': [], 'name': 'c3sqrtx'}, 'c4x': {'definition': {'bits': [], 'commands': [{'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '89102cdb-83cb-4af1-a469-8e8e8bda6888', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '50a16d0b-296e-47fa-9be5-5eb7cbab47ad', 'params': ['1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'cd82c83c-3055-4032-a81c-05fcdc5121c1', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6133c266-b94d-4223-8efe-a9fc35f9f879', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '249f33bf-82fa-46f3-95db-2a87eab3c122', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3599a73f-1e38-48c6-9da9-b31347170114', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1d742090-a105-488f-b880-11e728d35817', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a95acd4a-342e-42ff-a39d-9a84dba509c4', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f1b4696a-c8c9-4319-95f7-3d57c3c79962', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '02394604-e038-499c-9914-f7d0abdabeaa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2048a985-4530-47d3-a88e-caca6457d5d0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4c5012b3-7f60-44cf-872b-e66bdcad321f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ddb95e9d-54bc-4036-90f0-5f595f89d1ce', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '016db449-8d38-4a71-ac8d-725474a2a330', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '081e6820-a476-499d-a56e-baf515ff2ea5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '24b1bbf4-da01-4dfb-8a07-1d667f67339e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '55decee2-8808-493c-b176-f1d262e7eafc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '77302681-9f68-4e07-9a82-a08e4a1b0ed1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ae7d5e1a-4e65-4f49-b771-d3e14299e743', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f4ac773d-2d78-49c0-bbe1-b1e502dfa238', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c196e0f6-86c5-4235-a73d-c623311a998e', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fc543db1-7a32-488e-a22c-77389f1921a5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '76b76ce7-d603-4420-9123-ccc59f5267f7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fe89a446-ecfe-4516-9def-3f3c5210507a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5732a2fa-8118-4a33-b12f-c8cf6b354945', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a05df1f7-cc9a-442a-adca-eef85af1e6a4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '164e2abb-8d27-4f6f-ac87-08390820de61', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ed9a79de-0662-444d-890a-be454a06bfac', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd5c4d9ca-ce43-4c7e-8019-518fc7723fbf', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4bef0c72-b0bb-4070-80af-80764743b9d1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '33d5706a-0c2c-4b85-ac9e-4a7ea031a0cd', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '997066ae-1bbd-4811-a972-0d8da8909131', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '223667b2-8d46-44c4-b4bb-d446a81e5b0b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': 'd89010ad-f0cf-4479-84c5-eb6f91f4b30b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'bfd28afb-3b72-4837-8a4b-4d9f39b3090e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '7ee4206e-2b65-4a04-bf80-7244a37fad88', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]], ['q', [4]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '58341871-7012-4bf9-95f9-f1390bf7c011', 'params': ['-1/2'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'cd82c83c-3055-4032-a81c-05fcdc5121c1', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '6133c266-b94d-4223-8efe-a9fc35f9f879', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '249f33bf-82fa-46f3-95db-2a87eab3c122', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3599a73f-1e38-48c6-9da9-b31347170114', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '1d742090-a105-488f-b880-11e728d35817', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'a95acd4a-342e-42ff-a39d-9a84dba509c4', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'f1b4696a-c8c9-4319-95f7-3d57c3c79962', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '02394604-e038-499c-9914-f7d0abdabeaa', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '2048a985-4530-47d3-a88e-caca6457d5d0', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '4c5012b3-7f60-44cf-872b-e66bdcad321f', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ddb95e9d-54bc-4036-90f0-5f595f89d1ce', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '016db449-8d38-4a71-ac8d-725474a2a330', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '081e6820-a476-499d-a56e-baf515ff2ea5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '24b1bbf4-da01-4dfb-8a07-1d667f67339e', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '55decee2-8808-493c-b176-f1d262e7eafc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '77302681-9f68-4e07-9a82-a08e4a1b0ed1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'ae7d5e1a-4e65-4f49-b771-d3e14299e743', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'f4ac773d-2d78-49c0-bbe1-b1e502dfa238', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'c196e0f6-86c5-4235-a73d-c623311a998e', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fc543db1-7a32-488e-a22c-77389f1921a5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '76b76ce7-d603-4420-9123-ccc59f5267f7', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'fe89a446-ecfe-4516-9def-3f3c5210507a', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '5732a2fa-8118-4a33-b12f-c8cf6b354945', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'a05df1f7-cc9a-442a-adca-eef85af1e6a4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '164e2abb-8d27-4f6f-ac87-08390820de61', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ed9a79de-0662-444d-890a-be454a06bfac', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': 'd5c4d9ca-ce43-4c7e-8019-518fc7723fbf', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '4bef0c72-b0bb-4070-80af-80764743b9d1', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'p'}, 'id': '33d5706a-0c2c-4b85-ac9e-4a7ea031a0cd', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '997066ae-1bbd-4811-a972-0d8da8909131', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '223667b2-8d46-44c4-b4bb-d446a81e5b0b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3x'}, 'id': '7cd85c93-82d2-4d03-baa9-40ff44ca07dc', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '2032d8c6-9f50-4ee3-bacc-f0e7b337afa5', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [4]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3765fef2-2f16-4e12-aa74-fabbd87ff360', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '894e5a07-0ea8-4341-a144-6bafc973c30d', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '6eaa0865-4b6d-4431-b6eb-1f44a823f772', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'de3ee67d-40d4-48d7-8a64-9f54d4314137', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'e1839a8c-8b83-416e-8679-a74c7daf042b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'ba033867-adb4-441e-8778-73474ef225f6', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': '91664acb-9df7-479b-adc4-94ff2519e52d', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '2f96060a-9df2-414f-adbf-9499d512c170', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9481ad79-62a4-45bf-b87d-58459866b1c4', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'c6daaff0-7bb2-4e62-9679-615f984577c8', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ec758859-4110-4e79-bfbb-b010af0f5fc6', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '9e4e0f22-739b-46fd-9001-b12baa06ea9c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'aa76690e-d942-4bcc-b7de-c79f12e69223', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '73aba6a7-6e52-4a59-94cd-a168c1fe2199', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'b82716ee-5a00-40a1-a9be-d0ec033cada2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '93a19bd7-98de-4b62-8458-3188c9c16eee', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c8241a61-b679-443c-9426-d75b88000ac8', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'af269176-617c-4fe1-80db-72d3b30c629c', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ed3489ea-639c-4e6d-bf54-6e96a9f6f71e', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'de121b88-f585-4454-94a8-b79b176f5436', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '3e17d548-f457-4b26-8d83-3017cce23320', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': 'f9f4fb77-f6dc-47bb-adec-ded024ae22e9', 'params': ['-1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [2]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c5b6b46b-a4b8-4184-be2c-1bb095884be2', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '1bccca89-97d9-4c00-b7fe-df670c4e0641', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': 'c526897f-9af0-4e92-80ce-afd174cd484b', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [2]], ['q', [3]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'e2f8c71b-83e5-4afd-b623-432430e9252c', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'c2fcbe60-5e26-434d-8b46-cad716a8f71c', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': 'ca1558a6-f448-4f67-ac4e-8639249e8b74', 'params': ['(-1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [0]], ['q', [1]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]], ['q', [1]]], 'op': {'type': 'CX'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cx'}, 'id': 'ae36d497-61f3-4014-aa0e-204fcbc26cc3', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [1]]], 'op': {'box': {'gate': {'args': ['lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['0', '0', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u1'}, 'id': '0c0ad0ab-738d-4b90-b49d-ffbb66d596d3', 'params': ['(1/2)*lamb'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]]]}, 'name': 'cu1'}, 'id': '2736cbf8-3411-444c-9aee-3c9a746b421e', 'params': ['1/8'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}, {'args': [['q', [3]]], 'op': {'box': {'gate': {'args': [], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'box': {'gate': {'args': ['phi', 'lamb'], 'definition': {'bits': [], 'commands': [{'args': [['q', [0]]], 'op': {'params': ['1/2', 'phi', 'lamb'], 'type': 'U3'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'u2'}, 'id': 'ad223db4-2dbc-452c-917e-43d5ed735fe3', 'params': ['0', '1'], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]]], 'phase': '0.0', 'qubits': [['q', [0]]]}, 'name': 'h'}, 'id': '5b2fe195-c91e-48f3-ae1b-48a36de20fab', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]]]}, 'name': 'c3sqrtx'}, 'id': 'f31ef8ed-b5d7-4506-9983-565dc864bd55', 'params': [], 'type': 'CustomGate'}, 'type': 'CustomGate'}}], 'created_qubits': [], 'discarded_qubits': [], 'implicit_permutation': [[['q', [0]], ['q', [0]]], [['q', [1]], ['q', [1]]], [['q', [2]], ['q', [2]]], [['q', [3]], ['q', [3]]], [['q', [4]], ['q', [4]]]], 'phase': '0.0', 'qubits': [['q', [0]], ['q', [1]], ['q', [2]], ['q', [3]], ['q', [4]]]}, 'args': [], 'name': 'c4x'}} \ No newline at end of file diff --git a/pytket/pytket/qasm/includes/hqslib1.inc b/pytket/pytket/qasm/includes/hqslib1.inc index 1305629254..85d586d4ce 100644 --- a/pytket/pytket/qasm/includes/hqslib1.inc +++ b/pytket/pytket/qasm/includes/hqslib1.inc @@ -186,6 +186,10 @@ gate cu3(theta, phi, lam) c, t } // controlled-sqrt(X) gate csx a,b { h b; cu1(pi/2) a,b; h b; } +// controlled-S +gate cs a,b {cu1(pi/2) a,b;} +// controlled-conjugate S +gate csdg a,b {cu1(-pi/2) a,b;} // controlled-U gate gate cu(theta,phi,lam,gamma) c, t { p(gamma) c; diff --git a/pytket/pytket/qasm/includes/hqslib1_dev.inc b/pytket/pytket/qasm/includes/hqslib1_dev.inc index 7965b39048..ec4617b63e 100644 --- a/pytket/pytket/qasm/includes/hqslib1_dev.inc +++ b/pytket/pytket/qasm/includes/hqslib1_dev.inc @@ -186,6 +186,10 @@ gate cu3(theta, phi, lam) c, t } // controlled-sqrt(X) gate csx a,b { h b; cu1(pi/2) a,b; h b; } +// controlled-S +gate cs a,b {cu1(pi/2) a,b;} +// controlled-conjugate S +gate csdg a,b {cu1(-pi/2) a,b;} // controlled-U gate gate cu(theta,phi,lam,gamma) c, t { p(gamma) c; diff --git a/pytket/pytket/qasm/includes/qelib1.inc b/pytket/pytket/qasm/includes/qelib1.inc index 53e7bbef82..22a022186f 100644 --- a/pytket/pytket/qasm/includes/qelib1.inc +++ b/pytket/pytket/qasm/includes/qelib1.inc @@ -170,6 +170,10 @@ gate csx a, b { cu1(pi / 2) a, b; h b; } +// controlled-S +gate cs a,b {cu1(pi/2) a,b;} +// controlled-conjugate S +gate csdg a,b {cu1(-pi/2) a,b;} // controlled-U gate gate cu(theta, phi, lamb, gamma) c, t { p(gamma) c; diff --git a/pytket/pytket/qasm/qasm.py b/pytket/pytket/qasm/qasm.py index 8496b6e076..7f1f0df2da 100644 --- a/pytket/pytket/qasm/qasm.py +++ b/pytket/pytket/qasm/qasm.py @@ -132,6 +132,8 @@ class QASMUnsupportedError(Exception): "cy": OpType.CY, "ch": OpType.CH, "csx": OpType.CSX, + "cs": OpType.CS, + "csdg": OpType.CSdg, "ccx": OpType.CCX, "c3x": OpType.CnX, "c4x": OpType.CnX, diff --git a/pytket/tests/circuit_test.py b/pytket/tests/circuit_test.py index 68b1674b67..f28970d688 100644 --- a/pytket/tests/circuit_test.py +++ b/pytket/tests/circuit_test.py @@ -203,13 +203,15 @@ def test_circuit_gen() -> None: c.FSim(0.2, 0.4, 0, 1) c.Sycamore(1, 2) c.ISWAPMax(2, 3) + c.CS(0, 2) + c.CSdg(1, 2) assert c.n_qubits == 4 - assert c._n_vertices() == 45 - assert c.n_gates == 29 + assert c._n_vertices() == 47 + assert c.n_gates == 31 commands = c.get_commands() - assert len(commands) == 29 + assert len(commands) == 31 assert str(commands[0]) == "X q[0];" assert str(commands[2]) == "CX q[2], q[0];" assert str(commands[4]) == "CRz(0.5) q[0], q[3];" @@ -237,6 +239,8 @@ def test_circuit_gen() -> None: assert str(commands[26]) == "FSim(0.2, 0.4) q[0], q[1];" assert str(commands[27]) == "Sycamore q[1], q[2];" assert str(commands[28]) == "ISWAPMax q[2], q[3];" + assert str(commands[29]) == "CS q[0], q[2];" + assert str(commands[30]) == "CSdg q[1], q[2];" assert commands[14].qubits == [Qubit(3)] assert commands[14].bits == [Bit(3)] @@ -784,6 +788,12 @@ def test_str() -> None: c = Circuit(2).CSXdg(0, 1) op = c.get_commands()[0].op assert op.__str__() == "CSXdg" + c = Circuit(2).CS(0, 1) + op = c.get_commands()[0].op + assert op.__str__() == "CS" + c = Circuit(2).CSdg(0, 1) + op = c.get_commands()[0].op + assert op.__str__() == "CSdg" c = Circuit(1).SX(0) op = c.get_commands()[0].op assert op.__str__() == "SX" @@ -1053,6 +1063,11 @@ def test_op_dagger_transpose() -> None: sxdg = Op.create(OpType.SXdg) assert sx.dagger == sxdg assert sx.transpose == sx + cs = Op.create(OpType.CS) + csdg = Op.create(OpType.CSdg) + assert cs.dagger == csdg + assert cs.transpose == cs + assert csdg.transpose == csdg def test_clifford_checking() -> None: diff --git a/pytket/tests/utils_test.py b/pytket/tests/utils_test.py index 2d999ed1e8..a3366f85f7 100644 --- a/pytket/tests/utils_test.py +++ b/pytket/tests/utils_test.py @@ -565,6 +565,8 @@ def unitary_circuits(draw: Callable[[SearchStrategy[Any]], Any]) -> Circuit: OpType.CVdg, OpType.CSX, OpType.CSXdg, + OpType.CS, + OpType.CSdg, OpType.SWAP, OpType.ISWAPMax, OpType.Sycamore, diff --git a/tket/conanfile.py b/tket/conanfile.py index 6811687523..33e83395b6 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.60" + version = "1.2.61" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" diff --git a/tket/include/tket/Circuit/CircPool.hpp b/tket/include/tket/Circuit/CircPool.hpp index d74abdae20..9b7840850c 100644 --- a/tket/include/tket/Circuit/CircPool.hpp +++ b/tket/include/tket/Circuit/CircPool.hpp @@ -181,6 +181,12 @@ const Circuit &CSX_using_CX(); /** Equivalent to CSXdg, using CX and single-qubit gates */ const Circuit &CSXdg_using_CX(); +/** Equivalent to CS, using CX and single-qubit gates */ +const Circuit &CS_using_CX(); + +/** Equivalent to CSdg, using CX and single-qubit gates */ +const Circuit &CSdg_using_CX(); + /** Equivalent to CSWAP, using CX and single-qubit gates */ const Circuit &CSWAP_using_CX(); diff --git a/tket/include/tket/Gate/GateUnitaryMatrixImplementations.hpp b/tket/include/tket/Gate/GateUnitaryMatrixImplementations.hpp index 10d13c6f44..e2a10c869d 100644 --- a/tket/include/tket/Gate/GateUnitaryMatrixImplementations.hpp +++ b/tket/include/tket/Gate/GateUnitaryMatrixImplementations.hpp @@ -60,6 +60,8 @@ struct GateUnitaryMatrixImplementations { static const Eigen::Matrix2cd& SXdg(); static const Eigen::Matrix4cd& CSX(); static const Eigen::Matrix4cd& CSXdg(); + static const Eigen::Matrix4cd& CS(); + static const Eigen::Matrix4cd& CSdg(); static Eigen::Matrix2cd Rx(double value); static Eigen::Matrix2cd Ry(double value); diff --git a/tket/include/tket/OpType/OpType.hpp b/tket/include/tket/OpType/OpType.hpp index 2998a685d3..833aacd31d 100644 --- a/tket/include/tket/OpType/OpType.hpp +++ b/tket/include/tket/OpType/OpType.hpp @@ -339,6 +339,32 @@ enum class OpType { */ CSXdg, + /** + * Controlled \ref OpType::S + * + * \f$ \left[ \begin{array}{cccc} + * 1 & 0 & 0 & 0 \\ + * 0 & 1 & 0 & 0 \\ + * 0 & 0 & 1 & 0 \\ + * 0 & 0 & 0 & i + * \end{array} \right] = + * \mathrm{CU1}(\frac12) \f$ + */ + CS, + + /** + * Controlled \ref OpType::Sdg + * + * \f$ \left[ \begin{array}{cccc} + * 1 & 0 & 0 & 0 \\ + * 0 & 1 & 0 & 0 \\ + * 0 & 0 & 1 & 0 \\ + * 0 & 0 & 0 & -i + * \end{array} \right] = + * \mathrm{CU1}(-\frac12) \f$ + */ + CSdg, + /** * Controlled \ref OpType::Rz * diff --git a/tket/src/Circuit/CircPool.cpp b/tket/src/Circuit/CircPool.cpp index 40e78584fb..91d7a3945e 100644 --- a/tket/src/Circuit/CircPool.cpp +++ b/tket/src/Circuit/CircPool.cpp @@ -623,6 +623,18 @@ const Circuit &CSXdg_using_CX() { return *C; } +const Circuit &CS_using_CX() { + static std::unique_ptr C = + std::make_unique([]() { return CU1_using_CX(0.5); }()); + return *C; +} + +const Circuit &CSdg_using_CX() { + static std::unique_ptr C = + std::make_unique([]() { return CU1_using_CX(-0.5); }()); + return *C; +} + const Circuit &CSWAP_using_CX() { static std::unique_ptr C = std::make_unique([]() { Circuit c(3); diff --git a/tket/src/Circuit/CircUtils.cpp b/tket/src/Circuit/CircUtils.cpp index 5effd076ad..07f9bb9dec 100644 --- a/tket/src/Circuit/CircUtils.cpp +++ b/tket/src/Circuit/CircUtils.cpp @@ -562,6 +562,10 @@ Circuit with_CX(Gate_ptr op) { return CircPool::CSX_using_CX(); case OpType::CSXdg: return CircPool::CSXdg_using_CX(); + case OpType::CS: + return CircPool::CS_using_CX(); + case OpType::CSdg: + return CircPool::CSdg_using_CX(); case OpType::CRz: return CircPool::CRz_using_CX(params[0]); case OpType::CRx: @@ -831,6 +835,10 @@ static Eigen::Matrix2cd get_target_op_matrix(const Op_ptr &op) { return Gate(OpType::SX, {}, 1).get_unitary(); case OpType::CSXdg: return Gate(OpType::SXdg, {}, 1).get_unitary(); + case OpType::CS: + return Gate(OpType::S, {}, 1).get_unitary(); + case OpType::CSdg: + return Gate(OpType::Sdg, {}, 1).get_unitary(); case OpType::CV: return Gate(OpType::V, {}, 1).get_unitary(); case OpType::CVdg: diff --git a/tket/src/Circuit/latex_drawing.cpp b/tket/src/Circuit/latex_drawing.cpp index 1d0dfb8c6a..2b9083e829 100644 --- a/tket/src/Circuit/latex_drawing.cpp +++ b/tket/src/Circuit/latex_drawing.cpp @@ -146,6 +146,14 @@ void add_latex_for_command(LatexContext& context, const Command& command) { gate_name << get_op_ptr(OpType::SXdg)->get_name(true); break; } + case OpType::CS: { + gate_name << get_op_ptr(OpType::S)->get_name(true); + break; + } + case OpType::CSdg: { + gate_name << get_op_ptr(OpType::Sdg)->get_name(true); + break; + } default: { } } diff --git a/tket/src/Gate/Gate.cpp b/tket/src/Gate/Gate.cpp index bbf722884d..af81603356 100644 --- a/tket/src/Gate/Gate.cpp +++ b/tket/src/Gate/Gate.cpp @@ -93,6 +93,12 @@ Op_ptr Gate::dagger() const { case OpType::CSXdg: { return get_op_ptr(OpType::CSX); } + case OpType::CS: { + return get_op_ptr(OpType::CSdg); + } + case OpType::CSdg: { + return get_op_ptr(OpType::CS); + } case OpType::Phase: case OpType::CRz: case OpType::CRx: @@ -185,6 +191,8 @@ Op_ptr Gate::transpose() const { case OpType::CVdg: case OpType::CSX: case OpType::CSXdg: + case OpType::CS: + case OpType::CSdg: case OpType::CCX: case OpType::noop: case OpType::CSWAP: @@ -503,6 +511,8 @@ bool Gate::has_symmetry(unsigned port1, unsigned port2) const { case OpType::FSim: case OpType::Sycamore: case OpType::TK2: + case OpType::CS: + case OpType::CSdg: case OpType::CU1: { // symmetric return true; @@ -814,6 +824,8 @@ std::optional Gate::commuting_basis(unsigned i) const { } case OpType::CZ: case OpType::CRz: + case OpType::CS: + case OpType::CSdg: case OpType::CU1: case OpType::PhaseGadget: case OpType::ZZMax: diff --git a/tket/src/Gate/GateUnitaryMatrix.cpp b/tket/src/Gate/GateUnitaryMatrix.cpp index de7b0c6ae1..a5a9ad0bc9 100644 --- a/tket/src/Gate/GateUnitaryMatrix.cpp +++ b/tket/src/Gate/GateUnitaryMatrix.cpp @@ -110,6 +110,8 @@ static Eigen::MatrixXcd get_unitary_or_throw( CASE_RETURN_0P(CVdg) CASE_RETURN_0P(CSX) CASE_RETURN_0P(CSXdg) + CASE_RETURN_0P(CS) + CASE_RETURN_0P(CSdg) CASE_RETURN_0P(SWAP) CASE_RETURN_0P(ZZMax) CASE_RETURN_0P(Sycamore) diff --git a/tket/src/Gate/GateUnitaryMatrixFixedMatrices.cpp b/tket/src/Gate/GateUnitaryMatrixFixedMatrices.cpp index 327206709b..eaf4f032e0 100644 --- a/tket/src/Gate/GateUnitaryMatrixFixedMatrices.cpp +++ b/tket/src/Gate/GateUnitaryMatrixFixedMatrices.cpp @@ -36,6 +36,8 @@ struct FixedData { Eigen::Matrix2cd SXdg; Eigen::Matrix4cd CSX; Eigen::Matrix4cd CSXdg; + Eigen::Matrix4cd CS; + Eigen::Matrix4cd CSdg; Eigen::Matrix4cd CX; Eigen::Matrix4cd CY; Eigen::Matrix4cd CZ; @@ -106,6 +108,8 @@ struct FixedData { CVdg = GateUnitaryMatrixUtils::get_controlled_gate_unitary(Vdg); CSX = GateUnitaryMatrixUtils::get_controlled_gate_unitary(SX); CSXdg = GateUnitaryMatrixUtils::get_controlled_gate_unitary(SXdg); + CS = GateUnitaryMatrixUtils::get_controlled_gate_unitary(S); + CSdg = GateUnitaryMatrixUtils::get_controlled_gate_unitary(Sdg); // Accuracy notes: std::sqrt is guaranteed by IEEE 754 // but std::sin, std::cos are not (although C++ is not guaranteed @@ -170,6 +174,8 @@ GATE_FUNCTION_2Q(CV) GATE_FUNCTION_2Q(CVdg) GATE_FUNCTION_2Q(CSX) GATE_FUNCTION_2Q(CSXdg) +GATE_FUNCTION_2Q(CS) +GATE_FUNCTION_2Q(CSdg) GATE_FUNCTION_2Q(ZZMax) GATE_FUNCTION_2Q(Sycamore) GATE_FUNCTION_2Q(ISWAPMax) diff --git a/tket/src/OpType/OpTypeFunctions.cpp b/tket/src/OpType/OpTypeFunctions.cpp index 7c20aafcf8..698b3768f8 100644 --- a/tket/src/OpType/OpTypeFunctions.cpp +++ b/tket/src/OpType/OpTypeFunctions.cpp @@ -26,22 +26,22 @@ bool find_in_set(const OpType& val, const OpTypeSet& set) { const OpTypeSet& all_gate_types() { static const OpTypeSet optypes{ - OpType::Z, OpType::X, OpType::Y, OpType::S, - OpType::Sdg, OpType::T, OpType::Tdg, OpType::V, - OpType::Vdg, OpType::SX, OpType::SXdg, OpType::H, - OpType::Rx, OpType::Ry, OpType::Rz, OpType::U3, - OpType::U2, OpType::U1, OpType::TK1, OpType::CX, - OpType::CY, OpType::CZ, OpType::CH, OpType::CV, - OpType::CVdg, OpType::CSX, OpType::CSXdg, OpType::CRz, - OpType::CRx, OpType::CRy, OpType::CU1, OpType::CU3, - OpType::PhaseGadget, OpType::CCX, OpType::SWAP, OpType::CSWAP, - OpType::noop, OpType::Measure, OpType::Reset, OpType::ECR, - OpType::ISWAP, OpType::PhasedX, OpType::ZZMax, OpType::XXPhase, - OpType::YYPhase, OpType::ZZPhase, OpType::CnRy, OpType::CnX, - OpType::CnZ, OpType::CnY, OpType::BRIDGE, OpType::Collapse, - OpType::ESWAP, OpType::FSim, OpType::Sycamore, OpType::ISWAPMax, - OpType::PhasedISWAP, OpType::XXPhase3, OpType::NPhasedX, OpType::TK2, - OpType::Phase}; + OpType::Z, OpType::X, OpType::Y, OpType::S, + OpType::Sdg, OpType::T, OpType::Tdg, OpType::V, + OpType::Vdg, OpType::SX, OpType::SXdg, OpType::H, + OpType::Rx, OpType::Ry, OpType::Rz, OpType::U3, + OpType::U2, OpType::U1, OpType::TK1, OpType::CX, + OpType::CY, OpType::CZ, OpType::CH, OpType::CV, + OpType::CVdg, OpType::CSX, OpType::CSXdg, OpType::CS, + OpType::CSdg, OpType::CRz, OpType::CRx, OpType::CRy, + OpType::CU1, OpType::CU3, OpType::PhaseGadget, OpType::CCX, + OpType::SWAP, OpType::CSWAP, OpType::noop, OpType::Measure, + OpType::Reset, OpType::ECR, OpType::ISWAP, OpType::PhasedX, + OpType::ZZMax, OpType::XXPhase, OpType::YYPhase, OpType::ZZPhase, + OpType::CnRy, OpType::CnX, OpType::CnZ, OpType::CnY, + OpType::BRIDGE, OpType::Collapse, OpType::ESWAP, OpType::FSim, + OpType::Sycamore, OpType::ISWAPMax, OpType::PhasedISWAP, OpType::XXPhase3, + OpType::NPhasedX, OpType::TK2, OpType::Phase}; static std::unique_ptr gates = std::make_unique(optypes); return *gates; @@ -49,18 +49,19 @@ const OpTypeSet& all_gate_types() { const OpTypeSet& all_multi_qubit_types() { static const OpTypeSet optypes{ - OpType::CX, OpType::CY, OpType::CZ, - OpType::CH, OpType::CV, OpType::CVdg, - OpType::CSX, OpType::CSXdg, OpType::CRz, - OpType::CRx, OpType::CRy, OpType::CU1, - OpType::CU3, OpType::PhaseGadget, OpType::CCX, - OpType::SWAP, OpType::CSWAP, OpType::ECR, - OpType::ISWAP, OpType::ZZMax, OpType::XXPhase, - OpType::YYPhase, OpType::ZZPhase, OpType::CnRy, - OpType::CnX, OpType::CnZ, OpType::CnY, - OpType::BRIDGE, OpType::ESWAP, OpType::FSim, - OpType::Sycamore, OpType::ISWAPMax, OpType::PhasedISWAP, - OpType::XXPhase3, OpType::NPhasedX, OpType::TK2}; + OpType::CX, OpType::CY, OpType::CZ, + OpType::CH, OpType::CV, OpType::CVdg, + OpType::CSX, OpType::CSXdg, OpType::CS, + OpType::CSdg, OpType::CRz, OpType::CRx, + OpType::CRy, OpType::CU1, OpType::CU3, + OpType::PhaseGadget, OpType::CCX, OpType::SWAP, + OpType::CSWAP, OpType::ECR, OpType::ISWAP, + OpType::ZZMax, OpType::XXPhase, OpType::YYPhase, + OpType::ZZPhase, OpType::CnRy, OpType::CnX, + OpType::CnZ, OpType::CnY, OpType::BRIDGE, + OpType::ESWAP, OpType::FSim, OpType::Sycamore, + OpType::ISWAPMax, OpType::PhasedISWAP, OpType::XXPhase3, + OpType::NPhasedX, OpType::TK2}; static std::unique_ptr gates = std::make_unique(optypes); return *gates; @@ -115,10 +116,10 @@ const OpTypeSet& all_projective_types() { const OpTypeSet& all_controlled_gate_types() { static const OpTypeSet optypes{ - OpType::CX, OpType::CCX, OpType::CnX, OpType::CnZ, OpType::CnY, - OpType::CSX, OpType::CSXdg, OpType::CV, OpType::CVdg, OpType::CRx, - OpType::CnRy, OpType::CRy, OpType::CY, OpType::CRz, OpType::CZ, - OpType::CH, OpType::CU1, OpType::CU3}; + OpType::CX, OpType::CCX, OpType::CnX, OpType::CnZ, OpType::CnY, + OpType::CSX, OpType::CSXdg, OpType::CS, OpType::CSdg, OpType::CV, + OpType::CVdg, OpType::CRx, OpType::CnRy, OpType::CRy, OpType::CY, + OpType::CRz, OpType::CZ, OpType::CH, OpType::CU1, OpType::CU3}; static std::unique_ptr gates = std::make_unique(optypes); return *gates; diff --git a/tket/src/OpType/OpTypeInfo.cpp b/tket/src/OpType/OpTypeInfo.cpp index 18bc15a53d..5227e22937 100644 --- a/tket/src/OpType/OpTypeInfo.cpp +++ b/tket/src/OpType/OpTypeInfo.cpp @@ -57,6 +57,8 @@ const std::map& optypeinfo() { {OpType::CVdg, {"CVdg", "$CV^\\dagger$", {}, doubleq}}, {OpType::CSX, {"CSX", "CSX", {}, doubleq}}, {OpType::CSXdg, {"CSXdg", "$CSX^\\dagger$", {}, doubleq}}, + {OpType::CS, {"CS", "CS", {}, doubleq}}, + {OpType::CSdg, {"CSdg", "$CS^\\dagger$", {}, doubleq}}, {OpType::CRz, {"CRz", "CRz", {4}, doubleq}}, {OpType::CRx, {"CRx", "CRx", {4}, doubleq}}, {OpType::CRy, {"CRy", "CRy", {4}, doubleq}}, diff --git a/tket/src/Transformations/Replacement.cpp b/tket/src/Transformations/Replacement.cpp index 12a3af4139..9ac41a2ec5 100644 --- a/tket/src/Transformations/Replacement.cpp +++ b/tket/src/Transformations/Replacement.cpp @@ -269,6 +269,8 @@ Circuit CX_ZX_circ_from_op(const Op_ptr op) { case OpType::CVdg: case OpType::CSX: case OpType::CSXdg: + case OpType::CS: + case OpType::CSdg: case OpType::CRz: case OpType::CRx: case OpType::CRy: diff --git a/tket/test/src/Circuit/test_Circ.cpp b/tket/test/src/Circuit/test_Circ.cpp index cee9290fad..98ff1ccf10 100644 --- a/tket/test/src/Circuit/test_Circ.cpp +++ b/tket/test/src/Circuit/test_Circ.cpp @@ -1984,6 +1984,43 @@ SCENARIO("Decomposing a multi-qubit operation into CXs") { REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); } + GIVEN("A CS gate") { + Circuit circ(2); + Vertex v = circ.add_op(OpType::CS, {0, 1}); + const Op_ptr op = circ.get_Op_ptr_from_Vertex(v); + Circuit rep; + WHEN("Default circuit replacement") { rep = CX_circ_from_multiq(op); } + WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } + + const auto u = tket_sim::get_unitary(rep); + Eigen::MatrixXcd correct(4, 4); + // clang-format off + correct << 1, 0, 0, 0, + 0, 1, 0, 0, + 0, 0, 1, 0, + 0, 0, 0, i_; + // clang-format on + REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); + } + GIVEN("A CSdg gate") { + Circuit circ(2); + Vertex v = circ.add_op(OpType::CSdg, {0, 1}); + const Op_ptr op = circ.get_Op_ptr_from_Vertex(v); + Circuit rep; + WHEN("Default circuit replacement") { rep = CX_circ_from_multiq(op); } + WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } + + const auto u = tket_sim::get_unitary(rep); + Eigen::MatrixXcd correct(4, 4); + // clang-format off + correct << 1, 0, 0, 0, + 0, 1, 0, 0, + 0, 0, 1, 0, + 0, 0, 0, -i_; + // clang-format on + REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); + } + GIVEN("A CU1 gate") { Circuit circ(2); Vertex v = circ.add_op(OpType::CU1, 0.5, {0, 1}); diff --git a/tket/test/src/Gate/GatesData.cpp b/tket/test/src/Gate/GatesData.cpp index a66b58e805..cd56aac20a 100644 --- a/tket/test/src/Gate/GatesData.cpp +++ b/tket/test/src/Gate/GatesData.cpp @@ -39,10 +39,10 @@ static GatesData get_data() { OpType::TK1, }; data.input_data[2][0] = { - OpType::CX, OpType::CY, OpType::CZ, OpType::CH, - OpType::CV, OpType::CVdg, OpType::CSX, OpType::CSXdg, - OpType::SWAP, OpType::ZZMax, OpType::Sycamore, OpType::ISWAPMax, - OpType::ECR, + OpType::CX, OpType::CY, OpType::CZ, OpType::CH, + OpType::CV, OpType::CVdg, OpType::CSX, OpType::CSXdg, + OpType::CS, OpType::CSdg, OpType::SWAP, OpType::ZZMax, + OpType::Sycamore, OpType::ISWAPMax, OpType::ECR, }; data.input_data[2][1] = { OpType::CRx, OpType::CRy, OpType::CRz, diff --git a/tket/test/src/Passes/test_SynthesiseTK.cpp b/tket/test/src/Passes/test_SynthesiseTK.cpp index 9a62d0de82..821620d515 100644 --- a/tket/test/src/Passes/test_SynthesiseTK.cpp +++ b/tket/test/src/Passes/test_SynthesiseTK.cpp @@ -80,7 +80,9 @@ SCENARIO("SynthesiseTK correctness") { c.add_op(OpType::noop, {1}); c.add_op(OpType::ZZMax, {0, 1}); c.add_op(OpType::Sycamore, {1, 0}); + c.add_op(OpType::CSdg, {1, 0}); c.add_op(OpType::ISWAPMax, {0, 1}); + c.add_op(OpType::CS, {0, 1}); check_synthesise_tk(c); } GIVEN("A circuit with (>2)-qubit gates") { diff --git a/tket/test/src/Simulation/test_CircuitSimulator.cpp b/tket/test/src/Simulation/test_CircuitSimulator.cpp index 3fc2ef4108..72a91198bf 100644 --- a/tket/test/src/Simulation/test_CircuitSimulator.cpp +++ b/tket/test/src/Simulation/test_CircuitSimulator.cpp @@ -463,6 +463,22 @@ SCENARIO("Unitaries for controlled operations") { V(3, 3) = 0.5 * (1. - i_); REQUIRE(U.isApprox(V)); } + GIVEN("CS") { + Circuit circ(2); + circ.add_op(OpType::CS, {0, 1}); + const Eigen::MatrixXcd U = tket_sim::get_unitary(circ); + Eigen::MatrixXcd V = Eigen::MatrixXcd::Identity(4, 4); + V(3, 3) = i_; + REQUIRE(U.isApprox(V)); + } + GIVEN("CSdg") { + Circuit circ(2); + circ.add_op(OpType::CSdg, {0, 1}); + const Eigen::MatrixXcd U = tket_sim::get_unitary(circ); + Eigen::MatrixXcd V = Eigen::MatrixXcd::Identity(4, 4); + V(3, 3) = -i_; + REQUIRE(U.isApprox(V)); + } GIVEN("CU1") { double a = 0.125; Circuit circ(2); diff --git a/tket/test/src/Transformations/test_RedundancyRemoval.cpp b/tket/test/src/Transformations/test_RedundancyRemoval.cpp index aa20157796..26f4721678 100644 --- a/tket/test/src/Transformations/test_RedundancyRemoval.cpp +++ b/tket/test/src/Transformations/test_RedundancyRemoval.cpp @@ -152,6 +152,12 @@ SCENARIO("Transforms::remove_redundancies removes typical redundancies") { "Non-cancelling CSX=CSXdg (swapped port order)", TestGate{OpType::CSX, {0, 1}}, TestGate{OpType::CSXdg, {1, 0}}, false}, + TestCase{ + "Cancelling CSdg=CS (same port order)", + TestGate{OpType::CSdg, {0, 1}}, TestGate{OpType::CS, {0, 1}}, true}, + TestCase{ + "Cancelling CSdg=CS (swapped port order)", + TestGate{OpType::CSdg, {0, 1}}, TestGate{OpType::CS, {1, 0}}, true}, TestCase{ "Cancelling CCXs (same port order)", TestGate{OpType::CCX, {0, 1, 2}}, TestGate{OpType::CCX, {0, 1, 2}}, true}, From 47f407c498985e2c95154bbb754f855d66b372bb Mon Sep 17 00:00:00 2001 From: Travis Thompson <102229498+trvto@users.noreply.github.com> Date: Tue, 24 Oct 2023 16:29:48 +0200 Subject: [PATCH 05/36] Bugfix/arg ordering in classical exp box (#1092) * Fix classical exp box arg order * lint * update changelog --- pytket/docs/changelog.rst | 5 +++++ pytket/pytket/circuit/add_condition.py | 2 +- pytket/pytket/circuit/logic_exp.py | 20 ++++++++++++++++++ pytket/pytket/qasm/qasm.py | 8 +++---- pytket/tests/qasm_test.py | 29 ++++++++++++++++++++++++++ 5 files changed, 59 insertions(+), 5 deletions(-) diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index 59f714cc6d..9302665149 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -10,6 +10,11 @@ Minor new features: width of classical registers (default 32). * New ``OpType.CS`` and ``OpType.CSdg``. +Fixes: + +* When converting QASM expressions to ``ClassicalExpBox``, preserve the ordering + of the bits in the expression in the resulting ``cmd.args`` + 1.21.0 (October 2023) --------------------- diff --git a/pytket/pytket/circuit/add_condition.py b/pytket/pytket/circuit/add_condition.py index 38702c0933..1456429bde 100644 --- a/pytket/pytket/circuit/add_condition.py +++ b/pytket/pytket/circuit/add_condition.py @@ -84,7 +84,7 @@ def _add_condition( assert isinstance(pred_exp, (RegLogicExp, BitRegister)) if isinstance(pred_exp, RegLogicExp): - inps = pred_exp.all_inputs() + inps = pred_exp.all_inputs_ordered() reg_sizes: list[int] = [] for reg in inps: assert isinstance(reg, BitRegister) diff --git a/pytket/pytket/circuit/logic_exp.py b/pytket/pytket/circuit/logic_exp.py index e9ae5941ac..46ac07eeb9 100644 --- a/pytket/pytket/circuit/logic_exp.py +++ b/pytket/pytket/circuit/logic_exp.py @@ -191,6 +191,26 @@ def all_inputs(self) -> Set[Variable]: outset.add(arg) return outset + def all_inputs_ordered(self) -> list[Variable]: + """ + :return: All variables involved in expression, in order of first appearance. + :rtype: list[Variable] + """ + # use dict[Variable, None] instead of set[Variable] to preserve order + outset: dict[Variable, None] = {} + + for arg in self.args: + if isinstance(arg, LogicExp): + outset.update(dict.fromkeys(arg.all_inputs_ordered())) + continue + if isinstance(self, BitLogicExp): + if isinstance(arg, Bit): + outset[arg] = None + else: + if isinstance(arg, BitRegister): + outset[arg] = None + return list(outset) + def __eq__(self, other: object) -> bool: if not isinstance(other, LogicExp): return False diff --git a/pytket/pytket/qasm/qasm.py b/pytket/pytket/qasm/qasm.py index 7f1f0df2da..319c1a622c 100644 --- a/pytket/pytket/qasm/qasm.py +++ b/pytket/pytket/qasm/qasm.py @@ -665,14 +665,14 @@ def cop(self, tree: Sequence[Iterable[CommandDict]]) -> Iterable[CommandDict]: def _calc_exp_io( self, exp: LogicExp, out_args: List ) -> Tuple[List[List], Dict[str, Any]]: - all_inps: Set[Tuple[str, int]] = set() - for inp in exp.all_inputs(): + all_inps: list[Tuple[str, int]] = [] + for inp in exp.all_inputs_ordered(): if isinstance(inp, Bit): - all_inps.add((inp.reg_name, inp.index[0])) + all_inps.append((inp.reg_name, inp.index[0])) else: assert isinstance(inp, BitRegister) for bit in inp: - all_inps.add((bit.reg_name, bit.index[0])) + all_inps.append((bit.reg_name, bit.index[0])) outs = (_hashable_uid(arg) for arg in out_args) o = [] io = [] diff --git a/pytket/tests/qasm_test.py b/pytket/tests/qasm_test.py index 12e0d6d1fc..1325f9748d 100644 --- a/pytket/tests/qasm_test.py +++ b/pytket/tests/qasm_test.py @@ -837,6 +837,34 @@ def test_max_reg_width() -> None: assert len(circ_out.bits) == 33 +def test_classical_expbox_arg_order() -> None: + qasm = """ + OPENQASM 2.0; + include "hqslib1.inc"; + + qreg q[1]; + + creg a[4]; + creg b[4]; + creg c[4]; + creg d[4]; + + c = a ^ b | d; + """ + + circ = circuit_from_qasm_str(qasm) + args = circ.get_commands()[0].args + expected_symbol_order = ["a", "b", "d", "c"] + expected_index_order = [0, 1, 2, 3] + assert len(args) == 4 * 4 + arg_index = 0 + for symbol in expected_symbol_order: + for index in expected_index_order: + assert args[arg_index].reg_name == symbol + assert args[arg_index].index[0] == index + arg_index += 1 + + if __name__ == "__main__": test_qasm_correct() test_qasm_qubit() @@ -872,3 +900,4 @@ def test_max_reg_width() -> None: test_header_stops_gate_definition() test_tk2_definition() test_rxxyyzz_conversion() + test_classical_expbox_arg_order() From 9b50e14ae5106501522e8aae4931610fbd2f2e9e Mon Sep 17 00:00:00 2001 From: CalMacCQ <93673602+CalMacCQ@users.noreply.github.com> Date: Thu, 26 Oct 2023 10:39:40 +0100 Subject: [PATCH 06/36] Remove docs build warning from `pydata-sphinx-theme` 0.14.2 and upgrade sphinx version (#1093) * remove unused pygment * try navigation_with_keys fix * remove unused intersphinx extension for now * remove sphinx version restriction * Show sphinx version in doc footer * use sphinx <7 * remove show_sphinx flag --- pytket/docs/conf.py | 7 ++----- pytket/docs/requirements.txt | 2 +- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/pytket/docs/conf.py b/pytket/docs/conf.py index 6632d7b7fa..78ca420bae 100644 --- a/pytket/docs/conf.py +++ b/pytket/docs/conf.py @@ -55,7 +55,6 @@ extensions = [ "sphinx.ext.autodoc", "sphinx.ext.autosummary", - "sphinx.ext.intersphinx", "sphinx.ext.mathjax", "sphinx.ext.viewcode", "sphinx_copybutton", @@ -87,10 +86,6 @@ # This pattern also affects html_static_path and html_extra_path. exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"] -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = "borland" - - # -- Options for HTML output ------------------------------------------------- # The theme to use for HTML and HTML Help pages. See the documentation for @@ -102,10 +97,12 @@ # further. For a list of options available for each theme, see the # documentation. # + html_theme_options = { "repository_url": "https://github.com/CQCL/tket", "use_repository_button": True, "use_issues_button": True, + "navigation_with_keys": True, "logo": { "image_light": "_static/Quantinuum_logo_black.png", "image_dark": "_static/Quantinuum_logo_white.png", diff --git a/pytket/docs/requirements.txt b/pytket/docs/requirements.txt index 23775efc09..f2462fe93f 100644 --- a/pytket/docs/requirements.txt +++ b/pytket/docs/requirements.txt @@ -1,4 +1,4 @@ -sphinx >= 4.5, < 6.2.0 +sphinx >= 4.5, <7 sphinx_autodoc_annotation >= 1.0 sphinx_book_theme ~= 1.0.1 sphinx-copybutton From 631a688f3f593cabc935ecb987ba7dd003cb204e Mon Sep 17 00:00:00 2001 From: yao-cqc <75305462+yao-cqc@users.noreply.github.com> Date: Thu, 26 Oct 2023 13:02:47 +0100 Subject: [PATCH 07/36] Migrate from deprecated json schema methods (#1098) * Migrate from deprecated json schema methods * Fix mypy issues --- pytket/tests/architecture_test.py | 21 +++++++++--------- pytket/tests/passes_serialisation_test.py | 27 +++++++++++------------ schemas/compiler_pass_v1.json | 2 +- 3 files changed, 25 insertions(+), 25 deletions(-) diff --git a/pytket/tests/architecture_test.py b/pytket/tests/architecture_test.py index 66e413e7a8..a5c0c3972b 100644 --- a/pytket/tests/architecture_test.py +++ b/pytket/tests/architecture_test.py @@ -13,7 +13,9 @@ # limitations under the License. import json -from jsonschema import RefResolver, Draft7Validator # type: ignore +from referencing import Registry +from referencing.jsonschema import DRAFT7 +from jsonschema import Draft7Validator # type: ignore from pathlib import Path from pytket.circuit import Node from pytket.architecture import Architecture, SquareGrid, FullyConnected, RingArch @@ -27,15 +29,14 @@ with open(schema_dir / "fullyconnected_v1.json", "r") as f: fc_schema = json.load(f) -schema_store = { - circ_schema["$id"]: circ_schema, - arch_schema["$id"]: arch_schema, - fc_schema["$id"]: fc_schema, -} -arch_validator_resolver = RefResolver.from_schema(arch_schema, store=schema_store) -arch_validator = Draft7Validator(arch_schema, resolver=arch_validator_resolver) -fc_validator_resolver = RefResolver.from_schema(fc_schema, store=schema_store) -fc_validator = Draft7Validator(fc_schema, resolver=fc_validator_resolver) +schema_store = [ + (circ_schema["$id"], DRAFT7.create_resource(circ_schema)), + (arch_schema["$id"], DRAFT7.create_resource(arch_schema)), + (fc_schema["$id"], DRAFT7.create_resource(fc_schema)), +] +registry: Registry = Registry().with_resources(schema_store) +arch_validator = Draft7Validator(arch_schema, registry=registry) +fc_validator = Draft7Validator(fc_schema, registry=registry) def check_arch_serialisation(arch: Architecture) -> None: diff --git a/pytket/tests/passes_serialisation_test.py b/pytket/tests/passes_serialisation_test.py index 51011adda3..9c29262d1c 100644 --- a/pytket/tests/passes_serialisation_test.py +++ b/pytket/tests/passes_serialisation_test.py @@ -14,7 +14,9 @@ import json import pytest -from jsonschema import RefResolver, Draft7Validator, ValidationError # type: ignore +from referencing import Registry +from referencing.jsonschema import DRAFT7 +from jsonschema import Draft7Validator, ValidationError # type: ignore from pathlib import Path from typing import Any, Dict, List @@ -408,19 +410,16 @@ def nonparam_predicate_dict(name: str) -> Dict[str, Any]: with open(schema_dir / "predicate_v1.json", "r") as f: pred_schema = json.load(f) -schema_store = { - pass_schema["$id"]: pass_schema, - circ_schema["$id"]: circ_schema, - arch_schema["$id"]: arch_schema, - plact_schema["$id"]: plact_schema, - pred_schema["$id"]: pred_schema, -} -pass_validator_resolver = RefResolver.from_schema(pass_schema, store=schema_store) -pass_validator = Draft7Validator(pass_schema, resolver=pass_validator_resolver) -predicate_validator_resolver = RefResolver.from_schema(pred_schema, store=schema_store) -predicate_validator = Draft7Validator( - pred_schema, resolver=predicate_validator_resolver -) +schema_store = [ + (pass_schema["$id"], DRAFT7.create_resource(pass_schema)), + (circ_schema["$id"], DRAFT7.create_resource(circ_schema)), + (arch_schema["$id"], DRAFT7.create_resource(arch_schema)), + (plact_schema["$id"], DRAFT7.create_resource(plact_schema)), + (pred_schema["$id"], DRAFT7.create_resource(pred_schema)), +] +registry: Registry = Registry().with_resources(schema_store) +pass_validator = Draft7Validator(pass_schema, registry=registry) +predicate_validator = Draft7Validator(pred_schema, registry=registry) def check_pass_serialisation( diff --git a/schemas/compiler_pass_v1.json b/schemas/compiler_pass_v1.json index ae73b48e98..b7511d54d2 100644 --- a/schemas/compiler_pass_v1.json +++ b/schemas/compiler_pass_v1.json @@ -296,7 +296,7 @@ "description": "Minimal number of CX gates in each phase in \"ComposePhasePolyBoxes\"." }, "routing_config": { - "$ref": "#definitions/routing_config" + "$ref": "#/definitions/routing_config" }, "fidelities": { "type": "object", From 054a624c4aa5aeebc63ece1e50881449f38f6bdd Mon Sep 17 00:00:00 2001 From: yao-cqc <75305462+yao-cqc@users.noreply.github.com> Date: Fri, 27 Oct 2023 09:42:05 +0100 Subject: [PATCH 08/36] Bugfix/incorrect serialisation for list of pairs (#1099) * Add failling test * Fix PauliExpPairBox serialisation issue * Update changelog * bump tket version --- pytket/conanfile.py | 2 +- pytket/docs/changelog.rst | 2 ++ pytket/tests/circuit_test.py | 11 +++++++++++ tket/conanfile.py | 2 +- tket/src/Circuit/PauliExpBoxes.cpp | 7 ++++++- 5 files changed, 21 insertions(+), 3 deletions(-) diff --git a/pytket/conanfile.py b/pytket/conanfile.py index cd0a84ddc8..62a6ab520b 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,7 +32,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.61@tket/stable") + self.requires("tket/1.2.62@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("tkassert/0.3.3@tket/stable") diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index 9302665149..97187302c3 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -14,6 +14,8 @@ Fixes: * When converting QASM expressions to ``ClassicalExpBox``, preserve the ordering of the bits in the expression in the resulting ``cmd.args`` +* Fix incorrect serialisation of ``PauliExpPairBox`` when the Pauli strings are of + length 2. 1.21.0 (October 2023) --------------------- diff --git a/pytket/tests/circuit_test.py b/pytket/tests/circuit_test.py index f28970d688..9b0804c78f 100644 --- a/pytket/tests/circuit_test.py +++ b/pytket/tests/circuit_test.py @@ -48,6 +48,7 @@ Bit, BitRegister, QubitRegister, + CXConfigType, ) from pytket.circuit.display import get_circuit_renderer, render_circuit_as_html from pytket.circuit.named_types import ( @@ -674,6 +675,15 @@ def test_boxes() -> None: command.op.get_unitary() +def test_pauliexp_pair_box_serialisation() -> None: + # https://github.com/CQCL/tket/issues/1084 + p = PauliExpPairBox( + [Pauli.Z, Pauli.X], 0.5, [Pauli.X, Pauli.Z], 0.2, CXConfigType.MultiQGate + ) + c = Circuit(2).add_pauliexppairbox(p, [0, 1]) + assert json_validate(c) + + def test_tofollibox_strats() -> None: permutation = [ ([_0, _0, _0, _0], [_1, _1, _1, _1]), @@ -1261,3 +1271,4 @@ def test_phase_order() -> None: test_measuring_registers() test_multi_controlled_gates() test_counting_n_qubit_gates() + test_pauliexp_pair_box_serialisation() diff --git a/tket/conanfile.py b/tket/conanfile.py index 33e83395b6..dfad9fefba 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.61" + version = "1.2.62" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" diff --git a/tket/src/Circuit/PauliExpBoxes.cpp b/tket/src/Circuit/PauliExpBoxes.cpp index 85f1992847..22f9734048 100644 --- a/tket/src/Circuit/PauliExpBoxes.cpp +++ b/tket/src/Circuit/PauliExpBoxes.cpp @@ -190,7 +190,12 @@ bool PauliExpPairBox::is_equal(const Op &op_other) const { nlohmann::json PauliExpPairBox::to_json(const Op_ptr &op) { const auto &box = static_cast(*op); nlohmann::json j = core_box_json(box); - j["paulis_pair"] = box.get_paulis_pair(); + auto paulis_pair = box.get_paulis_pair(); + // use vector to avoid serialising into a dictionary if the Pauli strings are + // of length 2 + std::vector> paulis_vec{ + paulis_pair.first, paulis_pair.second}; + j["paulis_pair"] = paulis_vec; j["phase_pair"] = box.get_phase_pair(); j["cx_config"] = box.get_cx_config(); return j; From 0fc99a5ac6212741edf9a7118e6049a15a355c93 Mon Sep 17 00:00:00 2001 From: yao-cqc <75305462+yao-cqc@users.noreply.github.com> Date: Fri, 27 Oct 2023 13:27:58 +0100 Subject: [PATCH 09/36] Better handling for invalid QASM register names (#1100) * Better handling for invalid QASM register names * Wrap long lines * wrap long lines * Fix type error --- pytket/pytket/qasm/qasm.py | 24 +++++++++++++++++++++++- pytket/tests/qasm_test.py | 24 ++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/pytket/pytket/qasm/qasm.py b/pytket/pytket/qasm/qasm.py index 319c1a622c..7d1fa68da1 100644 --- a/pytket/pytket/qasm/qasm.py +++ b/pytket/pytket/qasm/qasm.py @@ -223,11 +223,19 @@ class QASMUnsupportedError(Exception): } unit_regex = re.compile(r"([a-z][a-zA-Z0-9_]*)\[([\d]+)\]") +regname_regex = re.compile(r"^[a-z][a-zA-Z0-9_]*$") def _extract_reg(var: Token) -> Tuple[str, int]: match = unit_regex.match(var.value) - assert match is not None + if match is None: + raise QASMParseError( + f"Invalid register definition '{var.value}'. Register definitions " + "must follow the pattern ' []'. " + "For example, 'q [5]'. QASM register names must begin with a " + "lowercase letter and may only contain lowercase and uppercase " + "letters, numbers, and underscores." + ) return match.group(1), int(match.group(2)) @@ -1256,8 +1264,22 @@ def __init__( self.qregs = _retrieve_registers(cast(list[UnitID], qubits), QubitRegister) self.cregs = _retrieve_registers(cast(list[UnitID], bits), BitRegister) for reg in self.qregs.values(): + if regname_regex.match(reg.name) is None: + raise QASMUnsupportedError( + f"Invalid register name '{reg.name}'. QASM register names must " + "begin with a lowercase letter and may only contain lowercase " + "and uppercase letters, numbers, and underscores. " + "Try renaming the register with `rename_units` first." + ) self.strings.add_string(f"qreg {reg.name}[{reg.size}];\n") for bit_reg in self.cregs.values(): + if regname_regex.match(bit_reg.name) is None: + raise QASMUnsupportedError( + f"Invalid register name '{bit_reg.name}'. QASM register names " + "must begin with a lowercase letter and may only contain " + "lowercase and uppercase letters, numbers, and underscores. " + "Try renaming the register with `rename_units` first." + ) self.strings.add_string(f"creg {bit_reg.name}[{bit_reg.size}];\n") else: # gate definition, no header necessary for file diff --git a/pytket/tests/qasm_test.py b/pytket/tests/qasm_test.py index 1325f9748d..cf76e88015 100644 --- a/pytket/tests/qasm_test.py +++ b/pytket/tests/qasm_test.py @@ -865,6 +865,29 @@ def test_classical_expbox_arg_order() -> None: arg_index += 1 +def test_register_name_check() -> None: + # register names must have the expression [a-z][a-zA-Z0-9_]* + qasm = """ + OPENQASM 2.0; + include "hqslib1.inc"; + + qreg Q[1]; + """ + with pytest.raises(QASMParseError) as e: + circ = circuit_from_qasm_str(qasm) + err_msg = "Invalid register definition 'Q[1]'" + assert err_msg in str(e.value) + + c = Circuit() + qb = Qubit("Q", 0) + c.add_qubit(qb) + c.H(qb) + with pytest.raises(QASMUnsupportedError) as e2: + qasm = circuit_to_qasm_str(c) + err_msg = "Invalid register name 'Q'" + assert err_msg in str(e2.value) + + if __name__ == "__main__": test_qasm_correct() test_qasm_qubit() @@ -901,3 +924,4 @@ def test_classical_expbox_arg_order() -> None: test_tk2_definition() test_rxxyyzz_conversion() test_classical_expbox_arg_order() + test_register_name_check() From 31d6447636b9eae6c861c74ab46d087701035316 Mon Sep 17 00:00:00 2001 From: Monit Sharma <65262068+MonitSharma@users.noreply.github.com> Date: Mon, 30 Oct 2023 17:31:44 +0800 Subject: [PATCH 10/36] [doc] Updated Qiskit Documentation (#1094) --- pytket/docs/getting_started.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pytket/docs/getting_started.rst b/pytket/docs/getting_started.rst index f3c41f13a6..cdca6ef4b2 100644 --- a/pytket/docs/getting_started.rst +++ b/pytket/docs/getting_started.rst @@ -100,13 +100,13 @@ The following code snippet will show how to compile a circuit to run on an IBM d from pytket.extensions.qiskit import IBMQBackend circ = Circuit(3).X(0).CCX(0, 1, 2) - belem_device = IBMQBackend('ibmq_belem') + nairobi_device = IBMQBackend('ibm_nairobi') - # Compile Circuit to use supported gates of IBMQ Belem - compiled_circ = belem_device.get_compiled_circuit(circ) + # Compile Circuit to use supported gates of IBMQ Nairobi + compiled_circ = nairobi_device.get_compiled_circuit(circ) result = backend.run_circuit(compiled_circ, n_shots=100) Here the default compilation pass is applied by :py:meth:`IBMQBackend.get_compiled_circuit`. See `this page `_ for more details. As an alternative, We can experiment with constructing our own circuit compilation routines in pytket. Passes from the :py:mod:`pytket.passes` module can be applied individually or composed in sequence. -See the section of the user manual on `circuit compilation `_ and the corresponding `notebook example `_ for more. \ No newline at end of file +See the section of the user manual on `circuit compilation `_ and the corresponding `notebook example `_ for more. From bacc4e75d7e1d7f230b163043137a540ad600810 Mon Sep 17 00:00:00 2001 From: Jake Arkinstall <65358059+jake-arkinstall@users.noreply.github.com> Date: Mon, 30 Oct 2023 10:15:30 +0000 Subject: [PATCH 11/36] [infra] Bumped install-nix-action to v23 (#1087) --- .github/workflows/build-with-nix.yml | 8 ++++---- README.md | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build-with-nix.yml b/.github/workflows/build-with-nix.yml index 091f2a9671..e9f8c7999a 100644 --- a/.github/workflows/build-with-nix.yml +++ b/.github/workflows/build-with-nix.yml @@ -11,10 +11,10 @@ jobs: build_and_test: strategy: matrix: - os: ['ubuntu-22.04', 'macos-12'] + os: ['ubuntu-22.04', 'macos-13-xlarge'] runs-on: ${{matrix.os}} steps: - - uses: actions/checkout@v3 - - uses: cachix/install-nix-action@v20 + - uses: actions/checkout@v4 + - uses: cachix/install-nix-action@v23 - name: Build and test tket - run: nix flake check + run: nix flake check -L diff --git a/README.md b/README.md index e3facaa256..1cfa828e9e 100644 --- a/README.md +++ b/README.md @@ -126,9 +126,9 @@ building and testing pytket. ### Nix Support -Tket and pytket are available as a Nix flake. See the [README](nix-support/README.md) -in the `nix-support` directory for instructions on building and testing tket and pytket -through Nix, and on how to use it within a Nix project. +Tket and pytket are available as a Nix flake, with support for Linux and Apple Silicon systems. +See the [README](nix-support/README.md) in the `nix-support` directory for instructions +on building and testing tket and pytket through Nix, and on how to use it within a Nix project. ## API documentation From cb4ce4c94b4575d1c9229d2b359547af33e87a3c Mon Sep 17 00:00:00 2001 From: CalMacCQ <93673602+CalMacCQ@users.noreply.github.com> Date: Mon, 30 Oct 2023 13:49:36 +0000 Subject: [PATCH 12/36] remove outdated opensource attribution page (#1103) --- pytket/docs/index.rst | 1 - pytket/docs/opensource.rst | 18 ------------------ 2 files changed, 19 deletions(-) delete mode 100644 pytket/docs/opensource.rst diff --git a/pytket/docs/index.rst b/pytket/docs/index.rst index a35195d497..2cdd6e701e 100644 --- a/pytket/docs/index.rst +++ b/pytket/docs/index.rst @@ -82,7 +82,6 @@ Licensed under the `Apache 2 License Date: Mon, 30 Oct 2023 14:54:00 +0000 Subject: [PATCH 13/36] [infra] Revert pinning of jsonschema. (#956) --- pytket/tests/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pytket/tests/requirements.txt b/pytket/tests/requirements.txt index 1b6f5d87d0..ea80dec436 100644 --- a/pytket/tests/requirements.txt +++ b/pytket/tests/requirements.txt @@ -6,5 +6,5 @@ pytest-benchmark py hypothesis docker -jsonschema==4.18.0 +jsonschema opt_einsum From 63c2e03fcb46310755c586e776220bec60fed016 Mon Sep 17 00:00:00 2001 From: Jake Arkinstall <65358059+jake-arkinstall@users.noreply.github.com> Date: Mon, 30 Oct 2023 15:22:44 +0000 Subject: [PATCH 14/36] Add version into setup call (#1104) The core pytket project uses setuptools_scm to extract version information from .git. This would be awkward in Nix as it would involve copying the .git directory into the pytket source. As we already have the version extracted from another file in the project, which is used to set the version number on the Nix side, we can instead hardcode this version number into setup.py when copying it to the derivation source. Co-authored-by: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> --- nix-support/pytket.nix | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/nix-support/pytket.nix b/nix-support/pytket.nix index d99d90b98f..9489ea5589 100644 --- a/nix-support/pytket.nix +++ b/nix-support/pytket.nix @@ -6,7 +6,7 @@ let version = if builtins.length versions > 0 then builtins.elemAt versions 0 else - "0.0.0"; + builtins.trace "Warning: Unable to find version. Defaulting to 0.0.0" "0.0.0"; jsonschema-4180 = super.python3Packages.jsonschema.overrideAttrs (_: rec { version = "4.18.0"; @@ -35,7 +35,7 @@ in { ''; }; pytket = super.python3.pkgs.buildPythonPackage { - name = "pytket"; + pname = "pytket"; inherit version; propagatedBuildInputs = with super.python3.pkgs; [ self.binders @@ -53,19 +53,24 @@ in { unpackPhase = '' cp -r ${../pytket/pytket} pytket; - cp -r ${../pytket/setup.py} setup.py; - cp -r ${../pytket/package.md} package.md; + cp ${../pytket/package.md} package.md; cp -r ${../schemas} schemas; + + # The usual build depends on setuptools-scm to extract the version. + # We have already extracted the version within nix, so we can simply + # inject it into setup.py. + cat ${../pytket/setup.py} | sed 's/setup(/setup(version="${version}",/' > setup.py; + mkdir test_root; cp -r ${../pytket/tests} test_root/tests; + # hardcode the version extracted from docs/conf.py. + chmod 755 pytket + echo '__version__ = "${version}"' > pytket/_version.py; ''; preBuild = '' export USE_NIX=1; ''; postFixup = '' - # hardcode the version extracted from docs/conf.py. - echo '__version__ = "${version}"' > $out/lib/python3.10/site-packages/pytket/_version.py; - # these directories aren't copied by setup.py, so we do it manually cp -r ${ ../pytket/pytket/circuit/display/js From fc43ebf3adf0f7cb96a214d051034eb95822377a Mon Sep 17 00:00:00 2001 From: Will Simmons Date: Tue, 31 Oct 2023 13:22:06 +0000 Subject: [PATCH 15/36] Refactor PauliStrings as templates for easier interop (#1081) --- pytket/binders/circuit/boxes.cpp | 47 +- pytket/binders/partition.cpp | 6 +- pytket/binders/pauli.cpp | 171 +-- pytket/binders/tableau.cpp | 18 +- pytket/binders/tailoring.cpp | 18 +- pytket/conanfile.py | 2 +- pytket/pytket/_tket/pauli.pyi | 2 +- tket/CMakeLists.txt | 4 +- tket/conanfile.py | 2 +- .../Characterisation/FrameRandomisation.hpp | 4 +- .../tket/Circuit/AssertionSynthesis.hpp | 2 +- tket/include/tket/Circuit/Boxes.hpp | 6 +- tket/include/tket/Circuit/CircUtils.hpp | 2 +- tket/include/tket/Circuit/PauliExpBoxes.hpp | 29 +- tket/include/tket/Clifford/ChoiMixTableau.hpp | 8 +- .../tket/Clifford/SymplecticTableau.hpp | 4 +- tket/include/tket/Clifford/UnitaryTableau.hpp | 24 +- tket/include/tket/Converters/PauliGadget.hpp | 32 +- .../tket/Diagonalisation/DiagUtils.hpp | 9 +- .../tket/Diagonalisation/Diagonalisation.hpp | 19 +- .../tket/Diagonalisation/PauliPartition.hpp | 12 +- .../MeasurementSetup/MeasurementReduction.hpp | 2 +- .../MeasurementSetup/MeasurementSetup.hpp | 16 +- tket/include/tket/Ops/Op.hpp | 3 +- .../PauliGraph/ConjugatePauliFunctions.hpp | 10 +- tket/include/tket/PauliGraph/PauliGraph.hpp | 6 +- tket/include/tket/Utils/PauliStrings.hpp | 571 --------- tket/include/tket/Utils/PauliTensor.hpp | 1051 +++++++++++++++++ .../Characterisation/FrameRandomisation.cpp | 15 +- tket/src/Circuit/AssertionSynthesis.cpp | 15 +- tket/src/Circuit/Boxes.cpp | 34 +- tket/src/Circuit/PauliExpBoxes.cpp | 190 ++- .../PauliExpBoxUnitaryCalculator.cpp | 10 +- tket/src/Clifford/ChoiMixTableau.cpp | 40 +- tket/src/Clifford/SymplecticTableau.cpp | 10 +- tket/src/Clifford/UnitaryTableau.cpp | 93 +- .../Converters/ChoiMixTableauConverters.cpp | 46 +- tket/src/Converters/PauliGadget.cpp | 173 ++- tket/src/Converters/PauliGraphConverters.cpp | 60 +- tket/src/Diagonalisation/DiagUtils.cpp | 12 +- tket/src/Diagonalisation/Diagonalisation.cpp | 96 +- tket/src/Diagonalisation/PauliPartition.cpp | 55 +- tket/src/Gate/Gate.cpp | 2 +- .../MeasurementSetup/MeasurementReduction.cpp | 30 +- .../src/MeasurementSetup/MeasurementSetup.cpp | 37 +- .../PauliGraph/ConjugatePauliFunctions.cpp | 53 +- tket/src/PauliGraph/PauliGraph.cpp | 76 +- .../src/Transformations/PauliOptimisation.cpp | 37 +- tket/src/Utils/PauliStrings.cpp | 580 --------- tket/src/Utils/PauliTensor.cpp | 734 ++++++++++++ tket/test/CMakeLists.txt | 2 +- tket/test/src/Circuit/test_Boxes.cpp | 60 +- tket/test/src/Circuit/test_Circ.cpp | 30 +- tket/test/src/Circuit/test_PauliExpBoxes.cpp | 183 +-- tket/test/src/Ops/test_Ops.cpp | 5 +- .../test_PauliExpBoxUnitaryCalculator.cpp | 8 +- tket/test/src/test_Assertion.cpp | 35 +- tket/test/src/test_ChoiMixTableau.cpp | 173 ++- tket/test/src/test_Clifford.cpp | 1 - tket/test/src/test_CompilerPass.cpp | 4 +- tket/test/src/test_MeasurementReduction.cpp | 50 +- tket/test/src/test_MeasurementSetup.cpp | 78 +- tket/test/src/test_Partition.cpp | 26 +- tket/test/src/test_PauliGraph.cpp | 232 ++-- tket/test/src/test_PauliString.cpp | 277 ----- tket/test/src/test_PauliTensor.cpp | 623 ++++++++++ tket/test/src/test_Predicates.cpp | 2 +- tket/test/src/test_UnitaryTableau.cpp | 143 ++- tket/test/src/test_json.cpp | 24 +- 69 files changed, 3634 insertions(+), 2800 deletions(-) delete mode 100644 tket/include/tket/Utils/PauliStrings.hpp create mode 100644 tket/include/tket/Utils/PauliTensor.hpp delete mode 100644 tket/src/Utils/PauliStrings.cpp create mode 100644 tket/src/Utils/PauliTensor.cpp delete mode 100644 tket/test/src/test_PauliString.cpp create mode 100644 tket/test/src/test_PauliTensor.cpp diff --git a/pytket/binders/circuit/boxes.cpp b/pytket/binders/circuit/boxes.cpp index 792bf58002..9a20f64f64 100644 --- a/pytket/binders/circuit/boxes.cpp +++ b/pytket/binders/circuit/boxes.cpp @@ -237,9 +237,10 @@ void init_boxes(py::module &m) { "An operation defined as the exponential of a tensor of Pauli " "operations and a (possibly symbolic) phase parameter.") .def( - py::init< - const py::tket_custom::SequenceVec &, const Expr &, - const CXConfigType &>(), + py::init([](const py::tket_custom::SequenceVec &paulis, Expr t, + CXConfigType config) { + return PauliExpBox(SymPauliTensor(paulis, t), config); + }), "Construct :math:`e^{-\\frac12 i \\pi t \\sigma_0 \\otimes " "\\sigma_1 \\otimes \\cdots}` from Pauli operators " ":math:`\\sigma_i \\in \\{I,X,Y,Z\\}` and a parameter " @@ -263,10 +264,14 @@ void init_boxes(py::module &m) { "An operation defined as a pair of exponentials of a tensor of Pauli " "operations and their (possibly symbolic) phase parameters.") .def( - py::init< - const py::tket_custom::SequenceVec &, const Expr &, - const py::tket_custom::SequenceVec &, Expr, - CXConfigType>(), + py::init([](const py::tket_custom::SequenceVec &paulis0, + Expr t0, + const py::tket_custom::SequenceVec &paulis1, + Expr t1, CXConfigType config) { + return PauliExpPairBox( + SymPauliTensor(paulis0, t0), SymPauliTensor(paulis1, t1), + config); + }), "Construct a pair of Pauli exponentials of the form" " :math:`e^{-\\frac12 i \\pi t_j \\sigma_0 \\otimes " "\\sigma_1 \\otimes \\cdots}` from Pauli operator strings " @@ -297,12 +302,13 @@ void init_boxes(py::module &m) { .def( py::init([](const py::tket_custom::SequenceVec< std::pair, Expr>> - &py_gadgets, - const CXConfigType &cx_config) { - std::vector, Expr>> gadgets( - std::make_move_iterator(py_gadgets.begin()), - std::make_move_iterator(py_gadgets.end())); - return PauliExpCommutingSetBox(gadgets, cx_config); + &pauli_gadgets, + CXConfigType config) { + std::vector gadgets; + for (const std::pair, Expr> &g : + pauli_gadgets) + gadgets.push_back(SymPauliTensor(g.first, g.second)); + return PauliExpCommutingSetBox(gadgets, config); }), "Construct a set of necessarily commuting Pauli exponentials of the " "form" @@ -317,7 +323,14 @@ void init_boxes(py::module &m) { [](PauliExpCommutingSetBox &pbox) { return *pbox.to_circuit(); }, ":return: the :py:class:`Circuit` described by the box") .def( - "get_paulis", &PauliExpCommutingSetBox::get_pauli_gadgets, + "get_paulis", + [](const PauliExpCommutingSetBox &pbox) { + // For backwards compatibility with before templated PauliTensor + std::vector> gadgets; + for (const SymPauliTensor &g : pbox.get_pauli_gadgets()) + gadgets.push_back({g.string, g.coeff}); + return gadgets; + }, ":return: the corresponding list of Pauli gadgets") .def( "get_cx_config", &PauliExpCommutingSetBox::get_cx_config, @@ -677,15 +690,15 @@ void init_boxes(py::module &m) { .def( py::init([](const py::tket_custom::SequenceVec &pauli_strings) { - PauliStabiliserList stabilisers; + PauliStabiliserVec stabilisers; for (auto &raw_string : pauli_strings) { std::vector string; - bool coeff = true; + quarter_turns_t coeff = 0; for (unsigned i = 0; i < raw_string.size(); i++) { switch (raw_string[i]) { case '-': if (i == 0) { - coeff = false; + coeff = 2; } else { throw std::invalid_argument( "Invalid Pauli string: " + raw_string); diff --git a/pytket/binders/partition.cpp b/pytket/binders/partition.cpp index 784d3a418c..f08163e732 100644 --- a/pytket/binders/partition.cpp +++ b/pytket/binders/partition.cpp @@ -126,7 +126,7 @@ PYBIND11_MODULE(partition, m) { .def( "add_result_for_term", (void(MeasurementSetup::*)( - const QubitPauliString &, + const SpPauliString &, const MeasurementSetup::MeasurementBitMap &)) & MeasurementSetup::add_result_for_term, "Add a new Pauli string with a corresponding BitMap", py::arg("term"), @@ -153,7 +153,7 @@ PYBIND11_MODULE(partition, m) { m.def( "measurement_reduction", - [](const py::tket_custom::SequenceList &strings, + [](const py::tket_custom::SequenceList &strings, PauliPartitionStrat strat, GraphColourMethod method, CXConfigType cx_config) { return measurement_reduction(strings, strat, method, cx_config); @@ -173,7 +173,7 @@ PYBIND11_MODULE(partition, m) { m.def( "term_sequence", - [](const py::tket_custom::SequenceList &strings, + [](const py::tket_custom::SequenceList &strings, PauliPartitionStrat strat, GraphColourMethod method) { return term_sequence(strings, strat, method); }, diff --git a/pytket/binders/pauli.cpp b/pytket/binders/pauli.cpp index 584579fe0b..c69677980e 100644 --- a/pytket/binders/pauli.cpp +++ b/pytket/binders/pauli.cpp @@ -20,7 +20,7 @@ #include "binder_json.hpp" #include "deleted_hash.hpp" #include "py_operators.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" #include "typecast.hpp" namespace py = pybind11; @@ -38,7 +38,7 @@ PYBIND11_MODULE(pauli, m) { .value("Z", Pauli::Z) .export_values(); - py::class_( + py::class_( m, "QubitPauliString", "A string of Pauli letters from the alphabet {I, X, Y, Z}, " "implemented as a sparse list, indexed by qubit.") @@ -60,22 +60,23 @@ PYBIND11_MODULE(pauli, m) { ":py:class:`Qubit` to :py:class:`Pauli`.", py::arg("map")) .def( - "__hash__", - [](const QubitPauliString &qps) { return hash_value(qps); }) - .def("__repr__", &QubitPauliString::to_str) - .def("__eq__", &py_equals) - .def("__ne__", &py_not_equals) - .def("__lt__", &QubitPauliString::operator<) - .def("__getitem__", &QubitPauliString::get) - .def("__setitem__", &QubitPauliString::set) + "__hash__", [](const SpPauliString &qps) { return qps.hash_value(); }) + .def("__repr__", &SpPauliString::to_str) + .def("__eq__", &py_equals) + .def("__ne__", &py_not_equals) + .def("__lt__", &SpPauliString::operator<) + .def("__getitem__", &SpPauliString::get) + .def("__setitem__", &SpPauliString::set) .def_property_readonly( - "map", [](const QubitPauliString &qps) { return qps.map; }, + "map", [](const SpPauliString &qps) { return qps.string; }, ":return: the QubitPauliString's underlying dict mapping " ":py:class:`Qubit` to :py:class:`Pauli`") .def( "to_list", - [](const QubitPauliString &qps) { - return py::object(json(qps)).cast(); + [](const SpPauliString &qps) { + // Just return the QubitPauliMap for backwards compatibility with + // before templated PauliTensor + return py::object(json(qps.string)).cast(); }, "A JSON-serializable representation of the QubitPauliString.\n\n" ":return: a list of :py:class:`Qubit`-to-:py:class:`Pauli` " @@ -84,22 +85,23 @@ PYBIND11_MODULE(pauli, m) { .def_static( "from_list", [](const py::list &qubit_pauli_string_list) { - return json(qubit_pauli_string_list).get(); + return SpPauliString( + json(qubit_pauli_string_list).get()); }, "Construct a new QubitPauliString instance from a JSON serializable " "list " "representation.") .def( - "compress", &QubitPauliString::compress, + "compress", &SpPauliString::compress, "Removes I terms to compress the sparse representation.") .def( - "commutes_with", &QubitPauliString::commutes_with, + "commutes_with", &SpPauliString::commutes_with, ":return: True if the two strings commute, else False", py::arg("other")) .def( "to_sparse_matrix", - (CmplxSpMat(QubitPauliString::*)(void) const) & - QubitPauliString::to_sparse_matrix, + (CmplxSpMat(SpPauliString::*)(void) const) & + SpPauliString::to_sparse_matrix, "Represents the sparse string as a dense string (without " "padding for extra qubits) and generates the matrix for the " "tensor. Uses the ILO-BE convention, so ``Qubit(\"a\", 0)`` " @@ -108,8 +110,8 @@ PYBIND11_MODULE(pauli, m) { "\n\n:return: a sparse matrix corresponding to the operator") .def( "to_sparse_matrix", - (CmplxSpMat(QubitPauliString::*)(const unsigned) const) & - QubitPauliString::to_sparse_matrix, + (CmplxSpMat(SpPauliString::*)(const unsigned) const) & + SpPauliString::to_sparse_matrix, "Represents the sparse string as a dense string over " "`n_qubits` qubits (sequentially indexed from 0 in the " "default register) and generates the matrix for the tensor. " @@ -121,7 +123,7 @@ PYBIND11_MODULE(pauli, m) { py::arg("n_qubits")) .def( "to_sparse_matrix", - [](const QubitPauliString &self, const py_qubit_vector_t &qubits) { + [](const SpPauliString &self, const py_qubit_vector_t &qubits) { return self.to_sparse_matrix(qubits); }, "Represents the sparse string as a dense string and generates " @@ -135,9 +137,8 @@ PYBIND11_MODULE(pauli, m) { py::arg("qubits")) .def( "dot_state", - (Eigen::VectorXcd(QubitPauliString::*)(const Eigen::VectorXcd &) - const) & - QubitPauliString::dot_state, + (Eigen::VectorXcd(SpPauliString::*)(const Eigen::VectorXcd &) const) & + SpPauliString::dot_state, "Performs the dot product of the state with the pauli string. " "Maps the qubits of the statevector with sequentially-indexed " "qubits in the default register, with ``Qubit(0)`` being the " @@ -148,7 +149,7 @@ PYBIND11_MODULE(pauli, m) { py::arg("state")) .def( "dot_state", - [](const QubitPauliString &self, const Eigen::VectorXcd &state, + [](const SpPauliString &self, const Eigen::VectorXcd &state, const py_qubit_vector_t &qubits) { return self.dot_state(state, qubits); }, @@ -163,7 +164,7 @@ PYBIND11_MODULE(pauli, m) { py::arg("state"), py::arg("qubits")) .def( "state_expectation", - [](const QubitPauliString &self, const Eigen::VectorXcd &state) { + [](const SpPauliString &self, const Eigen::VectorXcd &state) { return self.state_expectation(state); }, "Calculates the expectation value of the state with the pauli " @@ -176,7 +177,7 @@ PYBIND11_MODULE(pauli, m) { py::arg("state")) .def( "state_expectation", - [](const QubitPauliString &self, const Eigen::VectorXcd &state, + [](const SpPauliString &self, const Eigen::VectorXcd &state, const py_qubit_vector_t &qubits) { return self.state_expectation(state, qubits); }, @@ -191,11 +192,11 @@ PYBIND11_MODULE(pauli, m) { py::arg("state"), py::arg("qubits")) .def(py::pickle( - [](const QubitPauliString &qps) { + [](const SpPauliString &qps) { /* Hackery to avoid pickling an opaque object */ std::list qubits; std::list paulis; - for (const std::pair &qp_pair : qps.map) { + for (const std::pair &qp_pair : qps.string) { qubits.push_back(qp_pair.first); paulis.push_back(qp_pair.second); } @@ -205,16 +206,16 @@ PYBIND11_MODULE(pauli, m) { if (t.size() != 2) throw std::runtime_error( "Invalid state: tuple size: " + std::to_string(t.size())); - return QubitPauliString( + return SpPauliString( t[0].cast>(), t[1].cast>()); })); m.def( "pauli_string_mult", - [](const QubitPauliString &qps1, const QubitPauliString &qps2) { - QubitPauliTensor product_tensor = - QubitPauliTensor(qps1) * QubitPauliTensor(qps2); - return std::pair( + [](const SpPauliString &qps1, const SpPauliString &qps2) { + SpCxPauliTensor product_tensor = + SpCxPauliTensor(qps1) * SpCxPauliTensor(qps2); + return std::pair( product_tensor.string, product_tensor.coeff); }, ":return: the product of two QubitPauliString objects as a pair " @@ -230,10 +231,10 @@ PYBIND11_MODULE(pauli, m) { py::init([](const py::tket_custom::SequenceVec &string, const int &coeff) { if (coeff == 1) { - return PauliStabiliser(string, true); + return PauliStabiliser(string, 0); } if (coeff == -1) { - return PauliStabiliser(string, false); + return PauliStabiliser(string, 2); } throw std::invalid_argument("Coefficient must be -1 or 1."); }), @@ -242,8 +243,7 @@ PYBIND11_MODULE(pauli, m) { .def_property_readonly( "coeff", [](const PauliStabiliser &stabiliser) { - if (stabiliser.coeff) return 1; - return -1; + return stabiliser.is_real_negative() ? -1 : 1; }, "The coefficient of the stabiliser") .def_property_readonly( @@ -254,13 +254,14 @@ PYBIND11_MODULE(pauli, m) { .def("__hash__", &deletedHash, deletedHashDocstring) .def("__ne__", &py_not_equals); - py::class_( + py::class_( m, "QubitPauliTensor", "A tensor formed by Pauli terms, consisting of a sparse map from " ":py:class:`Qubit` to :py:class:`Pauli` (implemented as a " ":py:class:`QubitPauliString`) and a complex coefficient.") .def( - py::init(), + py::init( + [](const Complex &coeff) { return SpCxPauliTensor({}, coeff); }), "Constructs an empty QubitPauliTensor, representing the identity.", py::arg("coeff") = 1.) .def( @@ -271,7 +272,7 @@ PYBIND11_MODULE(pauli, m) { py::init([](const py::tket_custom::SequenceList &qubits, const py::tket_custom::SequenceList &paulis, const Complex &coeff) { - return QubitPauliTensor(QubitPauliString(qubits, paulis), coeff); + return SpCxPauliTensor(qubits, paulis, coeff); }), "Constructs a QubitPauliTensor from two matching lists of " "Qubits and Paulis.", @@ -282,42 +283,51 @@ PYBIND11_MODULE(pauli, m) { ":py:class:`Qubit` to :py:class:`Pauli`.", py::arg("map"), py::arg("coeff") = 1.) .def( - py::init(), + py::init([](const SpPauliString &qps, const Complex &c) { + return SpCxPauliTensor(qps.string, c); + }), "Construct a QubitPauliTensor from a QubitPauliString.", py::arg("string"), py::arg("coeff") = 1.) .def( "__hash__", - [](const QubitPauliTensor &qps) { return hash_value(qps); }) - .def("__repr__", &QubitPauliTensor::to_str) - .def("__eq__", &py_equals) - .def("__ne__", &py_not_equals) - .def("__lt__", &QubitPauliTensor::operator<) - .def( - "__getitem__", [](const QubitPauliTensor &qpt, - const Qubit &q) { return qpt.string.get(q); }) - .def( - "__setitem__", [](QubitPauliTensor &qpt, const Qubit &q, - Pauli p) { return qpt.string.set(q, p); }) + [](const SpCxPauliTensor &qps) { return qps.hash_value(); }) + .def("__repr__", &SpCxPauliTensor::to_str) + .def("__eq__", &py_equals) + .def("__ne__", &py_not_equals) + .def("__lt__", &SpCxPauliTensor::operator<) + .def("__getitem__", &SpCxPauliTensor::get) + .def("__setitem__", &SpCxPauliTensor::set) .def(py::self * py::self) - .def(Complex() * py::self) - .def_readwrite( - "string", &QubitPauliTensor::string, + .def( + "__rmul__", + [](const SpCxPauliTensor &qpt, const Complex &c) { + return SpCxPauliTensor(qpt.string, qpt.coeff * c); + }, + py::is_operator()) + .def_property( + "string", + [](const SpCxPauliTensor &qpt) { + // Return as SpPauliString for backwards compatibility with before + // templated PauliTensor + return SpPauliString(qpt.string); + }, + [](SpCxPauliTensor &qpt, const SpPauliString &qps) { + qpt.string = qps.string; + }, "The QubitPauliTensor's underlying :py:class:`QubitPauliString`") .def_readwrite( - "coeff", &QubitPauliTensor::coeff, + "coeff", &SpCxPauliTensor::coeff, "The global coefficient of the tensor") .def( - "compress", &QubitPauliTensor::compress, + "compress", &SpCxPauliTensor::compress, "Removes I terms to compress the sparse representation.") .def( - "commutes_with", &QubitPauliTensor::commutes_with, + "commutes_with", &SpCxPauliTensor::commutes_with, ":return: True if the two tensors commute, else False", py::arg("other")) .def( "to_sparse_matrix", - [](const QubitPauliTensor &qpt) { - return (CmplxSpMat)(qpt.coeff * qpt.string.to_sparse_matrix()); - }, + [](const SpCxPauliTensor &qpt) { return qpt.to_sparse_matrix(); }, "Represents the sparse string as a dense string (without " "padding for extra qubits) and generates the matrix for the " "tensor. Uses the ILO-BE convention, so ``Qubit(\"a\", 0)`` " @@ -326,9 +336,8 @@ PYBIND11_MODULE(pauli, m) { "\n\n:return: a sparse matrix corresponding to the tensor") .def( "to_sparse_matrix", - [](const QubitPauliTensor &qpt, unsigned n_qubits) { - return (CmplxSpMat)(qpt.coeff * - qpt.string.to_sparse_matrix(n_qubits)); + [](const SpCxPauliTensor &qpt, unsigned n_qubits) { + return qpt.to_sparse_matrix(n_qubits); }, "Represents the sparse string as a dense string over " "`n_qubits` qubits (sequentially indexed from 0 in the " @@ -341,9 +350,8 @@ PYBIND11_MODULE(pauli, m) { py::arg("n_qubits")) .def( "to_sparse_matrix", - [](const QubitPauliTensor &qpt, const py_qubit_vector_t &qubits) { - return (CmplxSpMat)(qpt.coeff * - qpt.string.to_sparse_matrix(qubits)); + [](const SpCxPauliTensor &qpt, const py_qubit_vector_t &qubits) { + return qpt.to_sparse_matrix(qubits); }, "Represents the sparse string as a dense string and generates " "the matrix for the tensor. Orders qubits according to " @@ -356,8 +364,8 @@ PYBIND11_MODULE(pauli, m) { py::arg("qubits")) .def( "dot_state", - [](const QubitPauliTensor &qpt, const Eigen::VectorXcd &state) { - return qpt.coeff * qpt.string.dot_state(state); + [](const SpCxPauliTensor &qpt, const Eigen::VectorXcd &state) { + return qpt.dot_state(state); }, "Performs the dot product of the state with the pauli tensor. " "Maps the qubits of the statevector with sequentially-indexed " @@ -369,9 +377,9 @@ PYBIND11_MODULE(pauli, m) { py::arg("state")) .def( "dot_state", - [](const QubitPauliTensor &qpt, const Eigen::VectorXcd &state, + [](const SpCxPauliTensor &qpt, const Eigen::VectorXcd &state, const py_qubit_vector_t &qubits) { - return qpt.coeff * qpt.string.dot_state(state, qubits); + return qpt.dot_state(state, qubits); }, "Performs the dot product of the state with the pauli tensor. " "Maps the qubits of the statevector according to the ordered " @@ -384,8 +392,8 @@ PYBIND11_MODULE(pauli, m) { py::arg("state"), py::arg("qubits")) .def( "state_expectation", - [](const QubitPauliTensor &qpt, const Eigen::VectorXcd &state) { - return qpt.coeff * qpt.string.state_expectation(state); + [](const SpCxPauliTensor &qpt, const Eigen::VectorXcd &state) { + return qpt.state_expectation(state); }, "Calculates the expectation value of the state with the pauli " "operator. Maps the qubits of the statevector with " @@ -397,9 +405,9 @@ PYBIND11_MODULE(pauli, m) { py::arg("state")) .def( "state_expectation", - [](const QubitPauliTensor &qpt, const Eigen::VectorXcd &state, + [](const SpCxPauliTensor &qpt, const Eigen::VectorXcd &state, const py_qubit_vector_t &qubits) { - return qpt.coeff * qpt.string.state_expectation(state, qubits); + return qpt.state_expectation(state, qubits); }, "Calculates the expectation value of the state with the pauli " "operator. Maps the qubits of the statevector according to the " @@ -412,11 +420,10 @@ PYBIND11_MODULE(pauli, m) { py::arg("state"), py::arg("qubits")) .def(py::pickle( - [](const QubitPauliTensor &qpt) { + [](const SpCxPauliTensor &qpt) { std::list qubits; std::list paulis; - for (const std::pair &qp_pair : - qpt.string.map) { + for (const std::pair &qp_pair : qpt.string) { qubits.push_back(qp_pair.first); paulis.push_back(qp_pair.second); } @@ -426,10 +433,8 @@ PYBIND11_MODULE(pauli, m) { if (t.size() != 3) throw std::runtime_error( "Invalid state: tuple size: " + std::to_string(t.size())); - return QubitPauliTensor( - QubitPauliString( - t[0].cast>(), - t[1].cast>()), + return SpCxPauliTensor( + t[0].cast>(), t[1].cast>(), t[2].cast()); })); } diff --git a/pytket/binders/tableau.cpp b/pytket/binders/tableau.cpp index d3ee43c885..a9f898ca10 100644 --- a/pytket/binders/tableau.cpp +++ b/pytket/binders/tableau.cpp @@ -69,19 +69,31 @@ PYBIND11_MODULE(tableau, m) { return str.str(); }) .def( - "get_xrow", &UnitaryTableau::get_xrow, + "get_xrow", + [](const UnitaryTableau& tab, const Qubit& qb) { + return SpCxPauliTensor(tab.get_xrow(qb)); + }, "Read off an X row as a Pauli string." "\n\n:param qb: The qubits whose X row to read off." "\n:return: The Pauli string :math:`P` such that :math:`PU=UX_{qb}`.", py::arg("qb")) .def( - "get_zrow", &UnitaryTableau::get_zrow, + "get_zrow", + [](const UnitaryTableau& tab, const Qubit& qb) { + return SpCxPauliTensor(tab.get_zrow(qb)); + }, "Read off an Z row as a Pauli string." "\n\n:param qb: The qubits whose Z row to read off." "\n:return: The Pauli string :math:`P` such that :math:`PU=UZ_{qb}`.", py::arg("qb")) .def( - "get_row_product", &UnitaryTableau::get_row_product, + "get_row_product", + [](const UnitaryTableau& tab, const SpCxPauliTensor& paulis) { + SpCxPauliTensor res = + tab.get_row_product(SpPauliStabiliser(paulis.string)); + res.coeff *= paulis.coeff; + return res; + }, "Combine rows to yield the effect of a given Pauli string." "\n\n:param paulis: The Pauli string :math:`P` to consider at the " "input." diff --git a/pytket/binders/tailoring.cpp b/pytket/binders/tailoring.cpp index ad3f1ea1d7..bc78f98333 100644 --- a/pytket/binders/tailoring.cpp +++ b/pytket/binders/tailoring.cpp @@ -26,19 +26,21 @@ namespace py = pybind11; namespace tket { -QubitPauliTensor apply_clifford_basis_change_tensor( - const QubitPauliTensor &in_pauli, const Circuit &circ) { +SpCxPauliTensor apply_clifford_basis_change_tensor( + const SpCxPauliTensor &in_pauli, const Circuit &circ) { + SpPauliStabiliser in_string(in_pauli.string); UnitaryRevTableau tab = circuit_to_unitary_rev_tableau(circ); - QubitPauliTensor new_operator = tab.get_row_product(in_pauli); + SpCxPauliTensor new_operator = tab.get_row_product(in_string); + new_operator.coeff *= in_pauli.coeff; return new_operator; } -QubitPauliString apply_clifford_basis_change_string( - const QubitPauliString &in_pauli, const Circuit &circ) { +SpPauliString apply_clifford_basis_change_string( + const SpPauliString &in_pauli, const Circuit &circ) { UnitaryRevTableau tab = circuit_to_unitary_rev_tableau(circ); - QubitPauliTensor new_operator = - tab.get_row_product(QubitPauliTensor(in_pauli)); - return new_operator.string; + SpPauliStabiliser new_operator = + tab.get_row_product(SpPauliStabiliser(in_pauli)); + return SpPauliString(new_operator.string); } PYBIND11_MODULE(tailoring, m) { diff --git a/pytket/conanfile.py b/pytket/conanfile.py index 62a6ab520b..3642b3862e 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,7 +32,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.62@tket/stable") + self.requires("tket/1.2.63@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("tkassert/0.3.3@tket/stable") diff --git a/pytket/pytket/_tket/pauli.pyi b/pytket/pytket/_tket/pauli.pyi index ad9daf70b4..a3ab039645 100644 --- a/pytket/pytket/_tket/pauli.pyi +++ b/pytket/pytket/_tket/pauli.pyi @@ -333,7 +333,7 @@ class QubitPauliTensor: The QubitPauliTensor's underlying :py:class:`QubitPauliString` """ @string.setter - def string(self, arg0: QubitPauliString) -> None: + def string(self, arg1: QubitPauliString) -> None: ... def pauli_string_mult(qubitpaulistring1: QubitPauliString, qubitpaulistring2: QubitPauliString) -> tuple[QubitPauliString, complex]: """ diff --git a/tket/CMakeLists.txt b/tket/CMakeLists.txt index 69d9cee448..aaa4497799 100644 --- a/tket/CMakeLists.txt +++ b/tket/CMakeLists.txt @@ -126,7 +126,7 @@ target_sources(tket src/Utils/UnitID.cpp src/Utils/HelperFunctions.cpp src/Utils/MatrixAnalysis.cpp - src/Utils/PauliStrings.cpp + src/Utils/PauliTensor.cpp src/Utils/CosSinDecomposition.cpp src/Utils/Expression.cpp src/OpType/OpDesc.cpp @@ -291,7 +291,7 @@ target_sources(tket include/tket/Utils/HelperFunctions.hpp include/tket/Utils/Json.hpp include/tket/Utils/MatrixAnalysis.hpp - include/tket/Utils/PauliStrings.hpp + include/tket/Utils/PauliTensor.hpp include/tket/Utils/SequencedContainers.hpp include/tket/Utils/Symbols.hpp include/tket/Utils/UnitID.hpp diff --git a/tket/conanfile.py b/tket/conanfile.py index dfad9fefba..c21629af57 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.62" + version = "1.2.63" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" diff --git a/tket/include/tket/Characterisation/FrameRandomisation.hpp b/tket/include/tket/Characterisation/FrameRandomisation.hpp index 80895b4db0..fccbed498d 100644 --- a/tket/include/tket/Characterisation/FrameRandomisation.hpp +++ b/tket/include/tket/Characterisation/FrameRandomisation.hpp @@ -106,7 +106,7 @@ class PauliFrameRandomisation : public FrameRandomisation { } protected: - // QubitPauliTensor class used to find "out_frame" + // PauliTensor class used to find "out_frame" std::pair> get_out_frame( const OpTypeVector& in_frame, const Cycle& cycle); }; @@ -121,7 +121,7 @@ class UniversalFrameRandomisation : public FrameRandomisation { virtual ~UniversalFrameRandomisation() {} protected: - // QubitPauliTensor class used to find "out_frame" + // PauliTensor class used to find "out_frame" std::pair> get_out_frame( const OpTypeVector& in_frame, const Cycle& cycle); }; diff --git a/tket/include/tket/Circuit/AssertionSynthesis.hpp b/tket/include/tket/Circuit/AssertionSynthesis.hpp index 4ea2dfe625..1b5a48b7af 100644 --- a/tket/include/tket/Circuit/AssertionSynthesis.hpp +++ b/tket/include/tket/Circuit/AssertionSynthesis.hpp @@ -42,5 +42,5 @@ std::tuple> projector_assertion_synthesis( * readouts */ std::tuple> stabiliser_assertion_synthesis( - const PauliStabiliserList &paulis); + const PauliStabiliserVec &paulis); } // namespace tket diff --git a/tket/include/tket/Circuit/Boxes.hpp b/tket/include/tket/Circuit/Boxes.hpp index 7d1e2324a2..9b642b6927 100644 --- a/tket/include/tket/Circuit/Boxes.hpp +++ b/tket/include/tket/Circuit/Boxes.hpp @@ -619,7 +619,7 @@ class StabiliserAssertionBox : public Box { * * @param paulis a set of stabiliser Pauli strings */ - explicit StabiliserAssertionBox(const PauliStabiliserList &paulis); + explicit StabiliserAssertionBox(const PauliStabiliserVec &paulis); /** * Copy constructor @@ -640,7 +640,7 @@ class StabiliserAssertionBox : public Box { bool is_equal(const Op &op_other) const override; /** Get the pauli stabilisers */ - PauliStabiliserList get_stabilisers() const { return paulis_; } + PauliStabiliserVec get_stabilisers() const { return paulis_; } std::vector get_expected_readouts() const { return expected_readouts_; } Op_ptr dagger() const override; @@ -657,7 +657,7 @@ class StabiliserAssertionBox : public Box { void generate_circuit() const override; private: - const PauliStabiliserList paulis_; + const PauliStabiliserVec paulis_; // expected readouts the debug bits // false -> 0 // true -> 1 diff --git a/tket/include/tket/Circuit/CircUtils.hpp b/tket/include/tket/Circuit/CircUtils.hpp index 04306bfbe5..c9706161ac 100644 --- a/tket/include/tket/Circuit/CircUtils.hpp +++ b/tket/include/tket/Circuit/CircUtils.hpp @@ -18,7 +18,7 @@ #include "DAGDefs.hpp" #include "tket/Gate/GatePtr.hpp" #include "tket/Utils/EigenConfig.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" namespace tket { diff --git a/tket/include/tket/Circuit/PauliExpBoxes.hpp b/tket/include/tket/Circuit/PauliExpBoxes.hpp index 8fcf256c42..78dc171ea3 100644 --- a/tket/include/tket/Circuit/PauliExpBoxes.hpp +++ b/tket/include/tket/Circuit/PauliExpBoxes.hpp @@ -32,10 +32,11 @@ class PauliExpBox : public Box { /** * The operation implements the unitary operator * \f$ e^{-\frac12 i \pi t \sigma_0 \otimes \sigma_1 \otimes \cdots} \f$ - * where \f$ \sigma_i \in \{I,X,Y,Z\} \f$ are the Pauli operators. + * where \f$ \sigma_i \in \{I,X,Y,Z\} \f$ are the Pauli operators and \f$ t + * \f$ is the coefficient. */ PauliExpBox( - const std::vector &paulis, const Expr &t, + const SymPauliTensor &paulis, CXConfigType cx_config_type = CXConfigType::Tree); /** @@ -60,10 +61,10 @@ class PauliExpBox : public Box { bool is_equal(const Op &op_other) const override; /** Get the Pauli string */ - std::vector get_paulis() const { return paulis_; } + std::vector get_paulis() const { return paulis_.string; } /** Get the phase parameter */ - Expr get_phase() const { return t_; } + Expr get_phase() const { return paulis_.coeff; } /** Get the cx_config parameter (affects box decomposition) */ CXConfigType get_cx_config() const { return cx_config_; } @@ -83,16 +84,14 @@ class PauliExpBox : public Box { void generate_circuit() const override; private: - std::vector paulis_; - Expr t_; + SymPauliTensor paulis_; CXConfigType cx_config_; }; class PauliExpPairBox : public Box { public: PauliExpPairBox( - const std::vector &paulis0, const Expr &t0, - const std::vector &paulis1, const Expr &t1, + const SymPauliTensor &paulis0, const SymPauliTensor &paulis1, CXConfigType cx_config_type = CXConfigType::Tree); /** @@ -118,12 +117,12 @@ class PauliExpPairBox : public Box { /** Get Pauli strings for the pair */ std::pair, std::vector> get_paulis_pair() const { - return std::make_pair(paulis0_, paulis1_); + return std::make_pair(paulis0_.string, paulis1_.string); } /** Get phase parameters for the pair */ std::pair get_phase_pair() const { - return std::make_pair(t0_, t1_); + return std::make_pair(paulis0_.coeff, paulis1_.coeff); } /** Get the cx_config parameter (affects box decomposition) */ @@ -144,17 +143,15 @@ class PauliExpPairBox : public Box { void generate_circuit() const override; private: - std::vector paulis0_; - Expr t0_; - std::vector paulis1_; - Expr t1_; + SymPauliTensor paulis0_; + SymPauliTensor paulis1_; CXConfigType cx_config_; }; class PauliExpCommutingSetBox : public Box { public: PauliExpCommutingSetBox( - const std::vector, Expr>> &pauli_gadgets, + const std::vector &pauli_gadgets, CXConfigType cx_config_type = CXConfigType::Tree); /** @@ -201,7 +198,7 @@ class PauliExpCommutingSetBox : public Box { void generate_circuit() const override; private: - std::vector, Expr>> pauli_gadgets_; + std::vector pauli_gadgets_; CXConfigType cx_config_; }; diff --git a/tket/include/tket/Clifford/ChoiMixTableau.hpp b/tket/include/tket/Clifford/ChoiMixTableau.hpp index e275b49608..1a3a8dae91 100644 --- a/tket/include/tket/Clifford/ChoiMixTableau.hpp +++ b/tket/include/tket/Clifford/ChoiMixTableau.hpp @@ -43,7 +43,7 @@ class ChoiMixTableau { * Each row is divided into its input segment and output segment. Under the CJ * isomorphism, a row RxS means (in matrix multiplication order) SCR^T = C. * When mapped to a sparse readable representation, independent - * QubitPauliTensor objects are used for each segment, so we no longer expect + * SpPauliStabiliser objects are used for each segment, so we no longer expect * their individual phases to be +-1, instead only requiring this on their * product. * @@ -56,7 +56,7 @@ class ChoiMixTableau { enum class TableauSegment { Input, Output }; typedef std::pair col_key_t; typedef boost::bimap tableau_col_index_t; - typedef std::pair row_tensor_t; + typedef std::pair row_tensor_t; /** * The actual binary tableau. @@ -91,7 +91,7 @@ class ChoiMixTableau { unsigned n_ins = 0); /** * Construct a tableau directly from its rows. - * Each row is represented as a product of QubitPauliTensors where the first + * Each row is represented as a product of SpPauliStabilisers where the first * is over the input qubits and the second is over the outputs. */ explicit ChoiMixTableau(const std::list& rows); @@ -162,7 +162,7 @@ class ChoiMixTableau { * @param seg Whether to apply the Pauli gadget over the inputs or outputs */ void apply_pauli( - const QubitPauliTensor& pauli, unsigned half_pis, + const SpPauliStabiliser& pauli, unsigned half_pis, TableauSegment seg = TableauSegment::Output); /** diff --git a/tket/include/tket/Clifford/SymplecticTableau.hpp b/tket/include/tket/Clifford/SymplecticTableau.hpp index bff4255f7d..86c7c63532 100644 --- a/tket/include/tket/Clifford/SymplecticTableau.hpp +++ b/tket/include/tket/Clifford/SymplecticTableau.hpp @@ -16,7 +16,7 @@ #include "tket/OpType/OpType.hpp" #include "tket/Utils/MatrixAnalysis.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" namespace tket { @@ -92,7 +92,7 @@ class SymplecticTableau { */ explicit SymplecticTableau( const MatrixXb &xmat, const MatrixXb &zmat, const VectorXb &phase); - explicit SymplecticTableau(const PauliStabiliserList &rows); + explicit SymplecticTableau(const PauliStabiliserVec &rows); /** * Other required constructors diff --git a/tket/include/tket/Clifford/UnitaryTableau.hpp b/tket/include/tket/Clifford/UnitaryTableau.hpp index 8dcb5bef5f..45388acda0 100644 --- a/tket/include/tket/Clifford/UnitaryTableau.hpp +++ b/tket/include/tket/Clifford/UnitaryTableau.hpp @@ -78,17 +78,17 @@ class UnitaryTableau { /** * Read off an X row as a Pauli string */ - QubitPauliTensor get_xrow(const Qubit& qb) const; + SpPauliStabiliser get_xrow(const Qubit& qb) const; /** * Read off a Z row as a Pauli string */ - QubitPauliTensor get_zrow(const Qubit& qb) const; + SpPauliStabiliser get_zrow(const Qubit& qb) const; /** - * Combine rows into a single row according to a QubitPauliTensor + * Combine rows into a single row according to a SpPauliStabiliser */ - QubitPauliTensor get_row_product(const QubitPauliTensor& qpt) const; + SpPauliStabiliser get_row_product(const SpPauliStabiliser& qpt) const; /** * Access all IDs for the qubits used in the tableau. @@ -116,8 +116,8 @@ class UnitaryTableau { * @param half_pis The Clifford angle: {0, 1, 2, 3} represents {0, pi/2, pi, * -pi/2} */ - void apply_pauli_at_front(const QubitPauliTensor& pauli, unsigned half_pis); - void apply_pauli_at_end(const QubitPauliTensor& pauli, unsigned half_pis); + void apply_pauli_at_front(const SpPauliStabiliser& pauli, unsigned half_pis); + void apply_pauli_at_end(const SpPauliStabiliser& pauli, unsigned half_pis); /** * Combine two tableaux in sequence. @@ -213,17 +213,17 @@ class UnitaryRevTableau { /** * Read off an X row as a Pauli string */ - QubitPauliTensor get_xrow(const Qubit& qb) const; + SpPauliStabiliser get_xrow(const Qubit& qb) const; /** * Read off a Z row as a Pauli string */ - QubitPauliTensor get_zrow(const Qubit& qb) const; + SpPauliStabiliser get_zrow(const Qubit& qb) const; /** - * Combine rows into a single row according to a QubitPauliTensor + * Combine rows into a single row according to a SpPauliStabiliser */ - QubitPauliTensor get_row_product(const QubitPauliTensor& qpt) const; + SpPauliStabiliser get_row_product(const SpPauliStabiliser& qpt) const; /** * Access all IDs for the qubits used in the tableau. @@ -251,8 +251,8 @@ class UnitaryRevTableau { * @param half_pis The Clifford angle: {0, 1, 2, 3} represents {0, pi/2, pi, * -pi/2} */ - void apply_pauli_at_front(const QubitPauliTensor& pauli, unsigned half_pis); - void apply_pauli_at_end(const QubitPauliTensor& pauli, unsigned half_pis); + void apply_pauli_at_front(const SpPauliStabiliser& pauli, unsigned half_pis); + void apply_pauli_at_end(const SpPauliStabiliser& pauli, unsigned half_pis); /** * Combine two tableaux in sequence. diff --git a/tket/include/tket/Converters/PauliGadget.hpp b/tket/include/tket/Converters/PauliGadget.hpp index cfe8157c3c..6413ee34c5 100644 --- a/tket/include/tket/Converters/PauliGadget.hpp +++ b/tket/include/tket/Converters/PauliGadget.hpp @@ -17,7 +17,7 @@ #include #include "tket/Circuit/Circuit.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" namespace tket { @@ -32,12 +32,12 @@ class ImplicitPermutationNotAllowed : public std::logic_error { * Automatically uses Snake CX configuration * * @param circ circuit to append to - * @param pauli Pauli operators and their respective qubits - * @param angle angle in half-turns + * @param pauli Pauli operators and their respective qubits; coefficient gives + * rotation angle in half-turns * @param cx_config which type of CX configuration to decompose into */ void append_single_pauli_gadget( - Circuit& circ, const QubitPauliTensor& pauli, Expr angle, + Circuit& circ, const SpSymPauliTensor& pauli, CXConfigType cx_config = CXConfigType::Snake); /** @@ -46,13 +46,12 @@ void append_single_pauli_gadget( * Automatically uses Snake CX configuration * * @param circ circuit to append to - * @param pauli Pauli operators and their respective qubits - * @param angle angle in half-turns + * @param pauli Pauli operators and their respective qubits; coefficient gives + * rotation angle in half-turns * @param cx_config which type of CX configuration to decompose into */ void append_single_pauli_gadget_as_pauli_exp_box( - Circuit& circ, const QubitPauliTensor& pauli, Expr angle, - CXConfigType cx_config); + Circuit& circ, const SpSymPauliTensor& pauli, CXConfigType cx_config); /** * Append a pair of Pauli gadgets to the end of a given circuit. @@ -63,23 +62,22 @@ void append_single_pauli_gadget_as_pauli_exp_box( * (!shallow) Uses the original method with naive arrangement of CXs. * * @param circ circuit to append to - * @param pauli0 first Pauli string - * @param angle0 angle for \p pauli0 (half-turns) - * @param pauli1 second Pauli string - * @param angle1 angle for \p pauli1 (half-turns) + * @param pauli0 first Pauli string; coefficient gives rotation angle in + * half-turns + * @param pauli1 second Pauli string; coefficient gives rotation angle in + * half-turns * @param cx_config which type of CX configuration to decompose into */ void append_pauli_gadget_pair( - Circuit& circ, QubitPauliTensor pauli0, Expr angle0, - QubitPauliTensor pauli1, Expr angle1, + Circuit& circ, SpSymPauliTensor pauli0, SpSymPauliTensor pauli1, CXConfigType cx_config = CXConfigType::Snake); void append_pauli_gadget_pair_as_box( - Circuit& circ, const QubitPauliTensor& pauli0, Expr angle0, - const QubitPauliTensor& pauli1, Expr angle1, CXConfigType cx_config); + Circuit& circ, const SpSymPauliTensor& pauli0, + const SpSymPauliTensor& pauli1, CXConfigType cx_config); void append_commuting_pauli_gadget_set_as_box( - Circuit& circ, const std::list>& gadgets, + Circuit& circ, const std::list& gadgets, CXConfigType cx_config); } // namespace tket diff --git a/tket/include/tket/Diagonalisation/DiagUtils.hpp b/tket/include/tket/Diagonalisation/DiagUtils.hpp index 6cdd24b4ce..e24cd0d51e 100644 --- a/tket/include/tket/Diagonalisation/DiagUtils.hpp +++ b/tket/include/tket/Diagonalisation/DiagUtils.hpp @@ -18,18 +18,11 @@ namespace tket { -struct cmp_tensors { - bool operator()( - const QubitPauliTensor &qps1, const QubitPauliTensor &qps2) const { - return (qps1.string < qps2.string); - } -}; - /** * QubitOperator, defined to be useful for diagonalisation and * partitioning. */ -typedef std::map QubitOperator; +typedef std::map QubitOperator; void insert_into_gadget_map( QubitOperator &gadget_map, const PauliGadgetProperties &pgp); diff --git a/tket/include/tket/Diagonalisation/Diagonalisation.hpp b/tket/include/tket/Diagonalisation/Diagonalisation.hpp index a8dc4523dd..aa66d8f370 100644 --- a/tket/include/tket/Diagonalisation/Diagonalisation.hpp +++ b/tket/include/tket/Diagonalisation/Diagonalisation.hpp @@ -25,8 +25,8 @@ namespace tket { * qubit Clifford to make all Paulis I or Z */ void check_easy_diagonalise( - std::list> &gadgets, - std::set &qubits, Circuit &circ); + std::list &gadgets, std::set &qubits, + Circuit &circ); /** * Given two qubits, attempt to find a basis in which a single CX will @@ -34,7 +34,7 @@ void check_easy_diagonalise( */ std::optional> check_pair_compatibility( const Qubit &qb1, const Qubit &qb2, - const std::list> &gadgets); + const std::list &gadgets); /** * Diagonalise a qubit greedily by finding the Pauli Gadget with @@ -42,9 +42,8 @@ std::optional> check_pair_compatibility( * single qubit Cliffords and CXs to make it a `ZIII...I` string */ void greedy_diagonalise( - const std::list> &gadgets, - std::set &qubits, Conjugations &conjugations, Circuit &circ, - CXConfigType cx_config); + const std::list &gadgets, std::set &qubits, + Conjugations &conjugations, Circuit &circ, CXConfigType cx_config); /** * Diagonalise a mutually commuting set of Pauli strings. Modifies the @@ -52,13 +51,13 @@ void greedy_diagonalise( * required to generate the initial set. */ Circuit mutual_diagonalise( - std::list> &gadgets, - std::set qubits, CXConfigType cx_config); + std::list &gadgets, std::set qubits, + CXConfigType cx_config); /** - * Applies Clifford conjugations to a QubitPauliTensor + * Applies Clifford conjugations to a SpSymPauliTensor */ void apply_conjugations( - QubitPauliTensor &qps, const Conjugations &conjugations); + SpSymPauliTensor &qps, const Conjugations &conjugations); /** * Given two qubits on which to conjugate a CX gate, try to conjugate with a diff --git a/tket/include/tket/Diagonalisation/PauliPartition.hpp b/tket/include/tket/Diagonalisation/PauliPartition.hpp index 6f7a17f69c..37a64b7f3a 100644 --- a/tket/include/tket/Diagonalisation/PauliPartition.hpp +++ b/tket/include/tket/Diagonalisation/PauliPartition.hpp @@ -32,7 +32,7 @@ class UnknownPauliPartitionStrat : public std::logic_error { */ typedef boost::adjacency_list< - boost::vecS, boost::vecS, boost::undirectedS, QubitPauliString> + boost::vecS, boost::vecS, boost::undirectedS, SpPauliString> PauliACGraph; typedef boost::graph_traits::vertex_descriptor PauliACVertex; @@ -83,10 +83,10 @@ enum class GraphColourMethod { class PauliPartitionerGraph { public: explicit PauliPartitionerGraph( - const std::list& strings, PauliPartitionStrat strat); + const std::list& strings, PauliPartitionStrat strat); // KEY: the colour VALUE: all the Pauli strings assigned that colour. - std::map> partition_paulis( + std::map> partition_paulis( GraphColourMethod method) const; private: @@ -95,12 +95,12 @@ class PauliPartitionerGraph { /** * Partitions a QubitOperator into lists of mutually commuting gadgets. - * Assumes that each `QubitPauliString` is unique and does not attempt + * Assumes that each `SpPauliString` is unique and does not attempt * to combine them. If it is given non-unique tensors it will produce * inefficient results. */ -std::list> term_sequence( - const std::list& strings, PauliPartitionStrat strat, +std::list> term_sequence( + const std::list& strings, PauliPartitionStrat strat, GraphColourMethod method = GraphColourMethod::Lazy); } // namespace tket diff --git a/tket/include/tket/MeasurementSetup/MeasurementReduction.hpp b/tket/include/tket/MeasurementSetup/MeasurementReduction.hpp index b713ce2308..1b2163c512 100644 --- a/tket/include/tket/MeasurementSetup/MeasurementReduction.hpp +++ b/tket/include/tket/MeasurementSetup/MeasurementReduction.hpp @@ -29,7 +29,7 @@ namespace tket { * https://arxiv.org/abs/1908.06942, https://arxiv.org/abs/1907.03358 */ MeasurementSetup measurement_reduction( - const std::list& strings, PauliPartitionStrat strat, + const std::list& strings, PauliPartitionStrat strat, GraphColourMethod method = GraphColourMethod::Lazy, CXConfigType cx_config = CXConfigType::Snake); diff --git a/tket/include/tket/MeasurementSetup/MeasurementSetup.hpp b/tket/include/tket/MeasurementSetup/MeasurementSetup.hpp index a2744c9a9f..1b2909d932 100644 --- a/tket/include/tket/MeasurementSetup/MeasurementSetup.hpp +++ b/tket/include/tket/MeasurementSetup/MeasurementSetup.hpp @@ -16,7 +16,7 @@ #include "tket/Circuit/Circuit.hpp" #include "tket/Utils/Json.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" namespace tket { @@ -55,12 +55,12 @@ class MeasurementSetup { std::string to_str() const; }; struct QPSHasher { - std::size_t operator()(const QubitPauliString &qps) const { - return hash_value(qps); + std::size_t operator()(const SpPauliString &qps) const { + return qps.hash_value(); } }; typedef std::unordered_map< - QubitPauliString, std::vector, QPSHasher> + SpPauliString, std::vector, QPSHasher> measure_result_map_t; const std::vector &get_circs() const { return measurement_circs; } @@ -68,13 +68,7 @@ class MeasurementSetup { void add_measurement_circuit(const Circuit &circ); void add_result_for_term( - const QubitPauliString &term, const MeasurementBitMap &result); - /** - * Rejects the coefficient in the QubitPauliTensor. Used for - * convenience at the C++ level, and should not be exposed. - */ - void add_result_for_term( - const QubitPauliTensor &term, const MeasurementBitMap &result); + const SpPauliString &term, const MeasurementBitMap &result); /** * Checks that the tensors to be measured correspond to the * correct tensors generated by the measurement circs. Includes diff --git a/tket/include/tket/Ops/Op.hpp b/tket/include/tket/Ops/Op.hpp index f8784bb063..ef23176101 100644 --- a/tket/include/tket/Ops/Op.hpp +++ b/tket/include/tket/Ops/Op.hpp @@ -32,9 +32,10 @@ #include "tket/OpType/OpTypeFunctions.hpp" #include "tket/OpType/OpTypeInfo.hpp" #include "tket/Utils/Constants.hpp" +#include "tket/Utils/EigenConfig.hpp" #include "tket/Utils/Expression.hpp" #include "tket/Utils/Json.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" #include "tket/Utils/UnitID.hpp" namespace tket { diff --git a/tket/include/tket/PauliGraph/ConjugatePauliFunctions.hpp b/tket/include/tket/PauliGraph/ConjugatePauliFunctions.hpp index 724cc26e63..cef3088298 100644 --- a/tket/include/tket/PauliGraph/ConjugatePauliFunctions.hpp +++ b/tket/include/tket/PauliGraph/ConjugatePauliFunctions.hpp @@ -15,7 +15,7 @@ #pragma once #include "tket/OpType/OpType.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" namespace tket { @@ -28,18 +28,18 @@ std::pair conjugate_Pauli( OpType op, Pauli p, bool reverse = false); /** - * Methods to conjugate a QubitPauliTensor with Clifford gates to + * Methods to conjugate a SpPauliStabiliser with Clifford gates to * change basis * Transforms P to P' such that * reverse = false : --P'-- = --op--P--opdg-- * reverse = true : --P'-- = --opdg--P--op-- */ void conjugate_PauliTensor( - QubitPauliTensor &qpt, OpType op, const Qubit &q, bool reverse = false); + SpPauliStabiliser &qpt, OpType op, const Qubit &q, bool reverse = false); void conjugate_PauliTensor( - QubitPauliTensor &qpt, OpType op, const Qubit &q0, const Qubit &q1); + SpPauliStabiliser &qpt, OpType op, const Qubit &q0, const Qubit &q1); void conjugate_PauliTensor( - QubitPauliTensor &qpt, OpType op, const Qubit &q0, const Qubit &q1, + SpPauliStabiliser &qpt, OpType op, const Qubit &q0, const Qubit &q1, const Qubit &qb2); } // namespace tket diff --git a/tket/include/tket/PauliGraph/PauliGraph.hpp b/tket/include/tket/PauliGraph/PauliGraph.hpp index 44e1be3316..135729094a 100644 --- a/tket/include/tket/PauliGraph/PauliGraph.hpp +++ b/tket/include/tket/PauliGraph/PauliGraph.hpp @@ -20,14 +20,14 @@ #include "tket/Clifford/UnitaryTableau.hpp" #include "tket/Utils/Expression.hpp" #include "tket/Utils/GraphHeaders.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" #include "tket/Utils/SequencedContainers.hpp" namespace tket { class Gate; struct PauliGadgetProperties { - QubitPauliTensor tensor_; + SpPauliStabiliser tensor_; Expr angle_; }; @@ -146,7 +146,7 @@ class PauliGraph { * tableau. */ void apply_pauli_gadget_at_end( - const QubitPauliTensor &pauli, const Expr &angle); + const SpPauliStabiliser &pauli, const Expr &angle); }; } // namespace tket diff --git a/tket/include/tket/Utils/PauliStrings.hpp b/tket/include/tket/Utils/PauliStrings.hpp deleted file mode 100644 index 5d0393b871..0000000000 --- a/tket/include/tket/Utils/PauliStrings.hpp +++ /dev/null @@ -1,571 +0,0 @@ -// Copyright 2019-2023 Cambridge Quantum Computing -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#pragma once - -#include -#include -#include -#include -#include - -#include "tket/Utils/Constants.hpp" -#include "tket/Utils/EigenConfig.hpp" -#include "tket/Utils/Json.hpp" -#include "tket/Utils/UnitID.hpp" -namespace tket { - -/** Pauli not supported */ -class UnknownPauli : public std::logic_error { - public: - UnknownPauli() - : std::logic_error("Unknown Pauli. This code should be unreachable!") {} -}; -/** OpType not supported */ -class UnknownOpType : public std::logic_error { - public: - UnknownOpType() - : std::logic_error( - "Unknown OpType received when applying conjugations.") {} -}; - -class UnknownCXConfigType : public std::logic_error { - public: - UnknownCXConfigType() - : std::logic_error( - "Unknown CXConfigType received when decomposing gadget.") {} -}; - -class NonDefaultQubit : public std::logic_error { - public: - NonDefaultQubit() - : std::logic_error("Only default register Qubits are supported.") {} -}; - -typedef Eigen::SparseMatrix CmplxSpMat; - -/** Symbols for the Pauli operators (and identity) */ -enum Pauli { I, X, Y, Z }; - -NLOHMANN_JSON_SERIALIZE_ENUM( - Pauli, { - {Pauli::I, "I"}, - {Pauli::X, "X"}, - {Pauli::Y, "Y"}, - {Pauli::Z, "Z"}, - }); - -/** - * Whenever a decomposition choice of Pauli gadgets is presented, - * users may use either Snake (a.k.a. cascade, ladder), Tree (i.e. CX - * balanced tree) or Star (i.e. CXs target a common qubit). - */ -enum class CXConfigType { Snake, Tree, Star, MultiQGate }; - -NLOHMANN_JSON_SERIALIZE_ENUM( - CXConfigType, {{CXConfigType::Snake, "Snake"}, - {CXConfigType::Tree, "Tree"}, - {CXConfigType::Star, "Star"}, - {CXConfigType::MultiQGate, "MultiQGate"}}); - -typedef std::map QubitPauliMap; - -/** - * A string of Pauli letters from the alphabet {I, X, Y, Z}, - * implemented as a sparse list, indexed by qubit - */ -class QubitPauliString { - public: - QubitPauliMap map; - - /** - * Construct an identity map - */ - QubitPauliString() : map() {} - - /** - * Construct a single Pauli term - */ - QubitPauliString(const Qubit &qubit, Pauli p) : map({{qubit, p}}) {} - - /** - * Construct a string of many Pauli terms. Shortcut to make a - * string for a default qubit register, without explicitly - * constructing the QubitPauliMap - * - * @param _paulis initializer_list of Pauli letters - */ - explicit QubitPauliString(const std::initializer_list &_paulis); - - /** - * Construct a string of many Pauli terms. Shortcut to make a - * string for a default qubit register, without explicitly - * constructing the QubitPauliMap - * - * @param _paulis list of Pauli letters - */ - explicit QubitPauliString(const std::list &_paulis); - - /** - * Construct a string of many Pauli terms. Shortcut to make a - * string for a default qubit register, without explicitly - * constructing the QubitPauliMap - * - * @param _paulis vector of Pauli letters - */ - explicit QubitPauliString(const std::vector &_paulis); - - /** - * Construct several terms from lists - * (useful for python hackery, and therefore not extended to QubitPauliTensor, - * which is not exposed to python) - * - * @param qubits list of Qubits with corresponding Paulis - * @param paulis Pauli letters - */ - QubitPauliString( - const std::list &qubits, const std::list &paulis); - - /** - * Construct a string of many Pauli terms - * - * @param _map sparse representation of the full tensor - */ - explicit QubitPauliString(const QubitPauliMap &_map) : map(_map) {} - - /** - * Determine whether two strings are equivalent (ignoring I terms) - * - * @param other second string - * - * @return true iff *this and other represent the same numerical tensor - */ - bool operator==(const QubitPauliString &other) const; - - /** - * Determine whether two strings are not equivalent (ignoring I terms) - * - * @param other second string - * - * @return true iff *this and other represent different numerical tensors - */ - bool operator!=(const QubitPauliString &other) const; - - /** - * Determine the lexicographic ordering of two strings. - * Ignores I terms. - * Orders individual terms by the ordering of Qubits. - * - * @param other other string - * - * @return true iff *this orders strictly before other - */ - bool operator<(const QubitPauliString &other) const; - - /** - * Compares the lexicographical ordering of two strings. - * Ignores I terms. - * Ordered individual terms by the ordering of Qubits. - * - * @param other other string - * - * @returns -1 if *this orders strictly before other - * @returns 0 if *this and other represent the same numerical tensor - * @returns 1 if *this orders strictly after other - */ - int compare(const QubitPauliString &other) const; - - /** - * Removes I terms to compress the sparse representation. - */ - void compress(); - - /** - * Determines whether or not two strings commute. - * - * @param other String to compare this to - * - * @return true if \p other commutes with this - * @return false if \p other anti-commutes with this - */ - bool commutes_with(const QubitPauliString &other) const; - - /** - * Finds qubits with the same (non-trivial) Pauli term. - * - * @param other String to compare this to - * - * @return All qubits q where this->map[q] == other.map[q] != I - */ - std::set common_qubits(const QubitPauliString &other) const; - - /** - * Finds qubits that only occur in this string. - * - * @param other String to compare this to - * - * @return All qubits q where this->map[q] != I and other.map[q] == I - */ - std::set own_qubits(const QubitPauliString &other) const; - - /** - * Finds qubits with different (non-trivial) Pauli terms. - * - * @param other String to compare this to - * - * @return All qubits q where I != this->map[q] != other.map[q] != I - */ - std::set conflicting_qubits(const QubitPauliString &other) const; - - /** - * Readable string for sparse operator - */ - std::string to_str() const; - - /** - * Gets Pauli for a given Qubit - * - * @param q Qubit to lookup - * - * @return this->map[q] if defined, Pauli::I otherwise - */ - Pauli get(const Qubit &q) const; - - /** - * Updates this->map[q] to p - * - * @param q Qubit to update - * @param p Pauli to set this->map[q] = p - */ - void set(const Qubit &q, Pauli p); - - /** - * Hash method, required for top-level python. Does not - * distinguish between equivalent Strings, i.e. ignores I terms. - */ - friend std::size_t hash_value(const QubitPauliString &qps); - - /** - * Calculate a sparse matrix corresponding to this string. - * - * @param n_qubits Number of qubits the string covers - * - * @return A complex sparse matrix corresponding to the n_qubit operator - */ - - CmplxSpMat to_sparse_matrix() const; - CmplxSpMat to_sparse_matrix(const unsigned n_qubits) const; - CmplxSpMat to_sparse_matrix(const qubit_vector_t &qubits) const; - - Eigen::VectorXcd dot_state(const Eigen::VectorXcd &state) const; - Eigen::VectorXcd dot_state( - const Eigen::VectorXcd &state, const qubit_vector_t &qubits) const; - - Complex state_expectation(const Eigen::VectorXcd &state) const; - Complex state_expectation( - const Eigen::VectorXcd &state, const qubit_vector_t &qubits) const; -}; - -JSON_DECL(QubitPauliString); - -// a sum of QubitPauliString with complex coefficients -typedef std::vector> OperatorSum; - -/** - * A simple struct for Pauli strings with +/- phase, - * used to represent Pauli strings in a stabiliser subgroup - */ -struct PauliStabiliser { - std::vector string; - - /** true -> 1 - * false -> -1 - */ - bool coeff; - - PauliStabiliser() {} - - PauliStabiliser(const std::vector string, const bool coeff); - - /** - * Determine whether two PauliStabilisers are equivalent - * - * @param other second PauliStabiliser - * - * @return true iff *this and other represent PauliStabiliser - */ - bool operator==(const PauliStabiliser &other) const; - - /** - * Determine whether two PauliStabilisers are not equivalent - * - * @param other second PauliStabiliser - * - * @return true iff *this and other represent different PauliStabiliser - */ - bool operator!=(const PauliStabiliser &other) const; -}; - -typedef std::vector PauliStabiliserList; - -JSON_DECL(PauliStabiliser) - -/** - * Calculate a sparse matrix corresponding to a sum of QubitPauliString. - * - * @param total_operator Operator specified by sum of pauli strings - * @param n_qubits Number of qubits the string covers - * - * @return A complex sparse matrix corresponding to the n_qubit operator - */ -CmplxSpMat operator_tensor( - const OperatorSum &total_operator, unsigned n_qubits); -CmplxSpMat operator_tensor( - const OperatorSum &total_operator, const qubit_vector_t &qubits); -/** - * Calculate expectation value of QubitPauliString with respect to a state. - * - * - * @param total_operator Operator specified by sum of pauli strings - * @param state state, encoded by a complex vector - * - * @return Complex expectation value - */ -Complex operator_expectation( - const OperatorSum &total_operator, const Eigen::VectorXcd &state); -Complex operator_expectation( - const OperatorSum &total_operator, const Eigen::VectorXcd &state, - const qubit_vector_t &qubits); - -/** - * A tensor of Pauli terms - * \f$ P = i^k \sigma_1 \otimes \sigma_2 \otimes \cdots \otimes \sigma_n \f$. - * This is a QubitPauliString but with an additional complex coefficient. - */ -class QubitPauliTensor { - public: - typedef std::map, std::pair> - Mult_Matrix; - static const Mult_Matrix &get_mult_matrix(); - - QubitPauliString string; - Complex coeff; - - /** - * Construct an identity operator - */ - QubitPauliTensor() : string(), coeff(1.) {} - - /** - * Construct a constant multiple of the identity - */ - explicit QubitPauliTensor(Complex _coeff) : string(), coeff(_coeff) {} - - /** - * Construct a single Pauli term - */ - QubitPauliTensor(const Qubit &qubit, Pauli p) - : string({{qubit, p}}), coeff(1.) {} - - /** - * Construct a tensor of many Pauli terms. Shortcut to make a - * tensor for a default qubit register, without explicitly - * constructing the QubitPauliMap - * - * @param _paulis initializer_list of Pauli letters - */ - explicit QubitPauliTensor(const std::initializer_list &_paulis) - : string({_paulis}), coeff(1.) {} - - /** - * Construct a tensor of many Pauli terms. Shortcut to make a - * tensor for a default qubit register, without explicitly - * constructing the QubitPauliMap - * - * @param _paulis list of Pauli letters - */ - explicit QubitPauliTensor(const std::list &_paulis) - : string({_paulis}), coeff(1.) {} - - /** - * Construct a tensor of many Pauli terms. Shortcut to make a - * tensor for a default qubit register, without explicitly - * constructing the QubitPauliMap - * - * @param _paulis vector of Pauli letters - */ - explicit QubitPauliTensor(const std::vector &_paulis) - : string({_paulis}), coeff(1.) {} - - /** - * Construct a constant multiple of a single Pauli term - */ - QubitPauliTensor(const Qubit &qubit, Pauli p, Complex _coeff) - : string({{qubit, p}}), coeff(_coeff) {} - - /** - * Construct a tensor product of many Pauli terms - * - * @param _string sparse representation of the full tensor - */ - explicit QubitPauliTensor(const QubitPauliString &_string) - : string(_string), coeff(1.) {} - - /** - * Construct a tensor product of many Pauli terms - * - * @param _map sparse representation of the full tensor - */ - explicit QubitPauliTensor(const QubitPauliMap &_map) - : string(_map), coeff(1.) {} - - /** - * Construct an arbitrary QubitPauliTensor - * - * @param _string sparse representation of the full tensor - * @param _coeff complex coefficient - */ - QubitPauliTensor(const QubitPauliString &_string, Complex _coeff) - : string(_string), coeff(_coeff) {} - - /** - * Construct an arbitrary QubitPauliTensor - * - * @param _map sparse representation of the full tensor - * @param _coeff complex coefficient - */ - QubitPauliTensor(const QubitPauliMap &_map, Complex _coeff) - : string(_map), coeff(_coeff) {} - - /** - * Transpose as a tensor - * Since all Paulis are self-adjoint, this is the same as complex conjugate - * Adds a -1 phase if the string contains an odd number of Y's - */ - void transpose(); - - /** - * Calculate the product of two tensors - * - * @param other second tensor - * - * @return *this x other - */ - QubitPauliTensor operator*(const QubitPauliTensor &other) const; - - /** - * Determine whether two tensors are equivalent (ignoring I terms) - * - * @param other second tensor - * - * @return true iff *this and other represent the same numerical tensor - */ - bool operator==(const QubitPauliTensor &other) const; - - /** - * Determine whether two tensors are not equivalent (ignoring I terms) - * - * @param other second tensor - * - * @return true iff *this and other represent different numerical tensors - */ - bool operator!=(const QubitPauliTensor &other) const; - - /** - * Determine the lexicographic ordering of two tensors. - * Ignores I terms. - * Orders individual terms by the ordering of Qubits. - * If two terms have equivalent tensors, they are ordered by coefficient - * (lexicographically according to the pair ). - * - * @param other second tensor - * - * @return true iff *this orders strictly before other - */ - bool operator<(const QubitPauliTensor &other) const; - - /** - * Removes I terms to compress the sparse representation. - * Wrapper method for `QubitPauliString` method. - */ - void compress(); - - /** - * Determines whether or not two tensor commute. - * Wrapper method for `QubitPauliString` method. - * - * @param other Tensor to compare this to - * - * @return true if \p other commutes with this - * @return false if \p other anti-commutes with this - */ - bool commutes_with(const QubitPauliTensor &other) const; - - /** - * Finds qubits with the same (non-trivial) Pauli term. - * Wrapper method for `QubitPauliString` method. - * - * @param other Tensor to compare this to - * - * @return All qubits q where this->string.map[q] == other.string.map[q] != I - */ - std::set common_qubits(const QubitPauliTensor &other) const; - - /** - * Finds qubits that only occur in this tensor. - * Wrapper method for `QubitPauliString` method. - * - * @param other Tensor to compare this to - * - * @return All qubits q where this->string.map[q] != I and other.string.map[q] - * == I - */ - std::set own_qubits(const QubitPauliTensor &other) const; - - /** - * Finds qubits with different (non-trivial) Pauli terms. - * Wrapper method for `QubitPauliString` method. - * - * @param other Tensor to compare this to - * - * @return All qubits q where I != this->string.map[q] != other.string.map[q] - * != I - */ - std::set conflicting_qubits(const QubitPauliTensor &other) const; - - /** - * Readable string for sparse operator - */ - std::string to_str() const; - - /** - * Hash method, required for top-level python. Does not - * distinguish between equivalent Strings, i.e. ignores I terms. - */ - friend std::size_t hash_value(const QubitPauliTensor &qpt); -}; - -JSON_DECL(QubitPauliTensor); - -/** - * Multiply coefficient by a scalar - * - * @param a scalar multiplier - * @param qpt tensor - * - * @return result of the scalar multiplication - */ -QubitPauliTensor operator*(Complex a, const QubitPauliTensor &qpt); - -} // namespace tket diff --git a/tket/include/tket/Utils/PauliTensor.hpp b/tket/include/tket/Utils/PauliTensor.hpp new file mode 100644 index 0000000000..393c13e8b4 --- /dev/null +++ b/tket/include/tket/Utils/PauliTensor.hpp @@ -0,0 +1,1051 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include "tket/Utils/Constants.hpp" +#include "tket/Utils/EigenConfig.hpp" +#include "tket/Utils/Expression.hpp" +#include "tket/Utils/Json.hpp" +#include "tket/Utils/UnitID.hpp" + +namespace tket { + +/** Symbols for the Pauli operators (and identity) */ +enum Pauli { I, X, Y, Z }; + +NLOHMANN_JSON_SERIALIZE_ENUM( + Pauli, { + {Pauli::I, "I"}, + {Pauli::X, "X"}, + {Pauli::Y, "Y"}, + {Pauli::Z, "Z"}, + }); + +/** + * Whenever a decomposition choice of Pauli gadgets is presented, + * users may use either Snake (a.k.a. cascade, ladder), Tree (i.e. CX + * balanced tree) or Star (i.e. CXs target a common qubit). + */ +enum class CXConfigType { Snake, Tree, Star, MultiQGate }; + +NLOHMANN_JSON_SERIALIZE_ENUM( + CXConfigType, {{CXConfigType::Snake, "Snake"}, + {CXConfigType::Tree, "Tree"}, + {CXConfigType::Star, "Star"}, + {CXConfigType::MultiQGate, "MultiQGate"}}); + +typedef Eigen::SparseMatrix CmplxSpMat; + +/******************************************************************************* + * SCALAR COEFFICIENTS + ******************************************************************************/ + +/** + * A trivial option for PauliTensor to represent Pauli strings up to global + * scalar. + * + * Treated as +1 for casting to other coefficients and matrix evaluation. + */ +struct no_coeff_t {}; + +JSON_DECL(no_coeff_t) + +/** + * A fourth root of unity {1, i, -1, -i}, represented as an unsigned integer + * giving the power of i. + * + * E.g. val % 4: + * 0: +1 + * 1: +i + * 2: -1 + * 3: -i + * + * These are the phase coefficients generated in the Pauli group. Whilst + * stabilisers are restricted to {1, -1}, the imaginary numbers are required for + * closure under multiplication. For settings where a real value is needed, use + * PauliTensor::is_real_negative() which asserts the value is real (throws an + * exception otherwise) and returns a bool value to distinguish. + */ +typedef unsigned quarter_turns_t; + +/** + * Other options for scalar coefficients include: + * + * Complex; floating-point complex number. Mostly used by the python binder to + * present a phaseful interface with guaranteed success on converting to a + * sparse matrix. + * + * Expr; a symbolic expression for a (possibly complex) coefficient. This tends + * to be used in the context of Pauli exponentials of tracking the rotation + * angle (along with its phase), where such synthesis functions map cP to + * exp(i*cP*pi/2) (i.e. the coefficient is the angle of rotation in half-turns). + */ + +/** + * Returns the default coefficient value (scalar 1) for each coefficient type. + * + * @retval {} (no_coeff_t) + * @retval 0 (quarter_turns_t) + * @retval 1. (Complex) + * @retval 1 (Expr) + */ +template +CoeffType default_coeff() = delete; +template <> +no_coeff_t default_coeff(); +template <> +quarter_turns_t default_coeff(); +template <> +Complex default_coeff(); +template <> +Expr default_coeff(); + +/** + * Cast a coefficient to a different type. + * + * Casting to no_coeff_t just drops the coefficient to focus on the string. + * Casting from no_coeff_t treats it as the scalar 1. + * + * Casting to quarter_turns_t throws an exception if value is not in the range + * {1, i, -1, -i}. + * + * Casting from Expr throws an exception if the coefficient is symbolic. + * + * @param coeff The coefficient to cast to another type. + */ +template +NewCoeff cast_coeff(const OriginalCoeff &coeff) = delete; +template <> +no_coeff_t cast_coeff(const no_coeff_t &); +template <> +quarter_turns_t cast_coeff(const no_coeff_t &); +template <> +Complex cast_coeff(const no_coeff_t &); +template <> +Expr cast_coeff(const no_coeff_t &); +template <> +no_coeff_t cast_coeff(const quarter_turns_t &); +template <> +quarter_turns_t cast_coeff( + const quarter_turns_t &coeff); +template <> +Complex cast_coeff(const quarter_turns_t &coeff); +template <> +Expr cast_coeff(const quarter_turns_t &coeff); +template <> +no_coeff_t cast_coeff(const Complex &); +template <> +quarter_turns_t cast_coeff(const Complex &coeff); +template <> +Complex cast_coeff(const Complex &coeff); +template <> +Expr cast_coeff(const Complex &coeff); +template <> +no_coeff_t cast_coeff(const Expr &); +template <> +quarter_turns_t cast_coeff(const Expr &coeff); +template <> +Complex cast_coeff(const Expr &coeff); +template <> +Expr cast_coeff(const Expr &coeff); + +/** + * Compare two coefficients of the same type with respect to an ordering. + * + * All values of no_coeff_t are equal. + * Values of quarter_turns_t are compared modulo 4. + * Values of Complex are compared lexicographically by the real part and then + * imaginary. + * Non-symbolic values of Expr are compared as Complex, symbolic + * values are compared by the canonical form of SymEngine expressions. + * + * @param first A coefficient. + * @param second Another coefficient of the same type. + * @retval -1 first < second + * @retval 0 first == second + * @retval 1 first > second + */ +template +int compare_coeffs(const CoeffType &first, const CoeffType &second) = delete; +template <> +int compare_coeffs(const no_coeff_t &, const no_coeff_t &); +template <> +int compare_coeffs( + const quarter_turns_t &first, const quarter_turns_t &second); +template <> +int compare_coeffs(const Complex &first, const Complex &second); +template <> +int compare_coeffs(const Expr &first, const Expr &second); + +template +void print_coeff(std::ostream &os, const CoeffType &coeff) = delete; + +/** + * Generates the coefficient prefix for PauliTensor::to_str() + */ +template <> +void print_coeff(std::ostream &, const no_coeff_t &); +template <> +void print_coeff( + std::ostream &os, const quarter_turns_t &coeff); +template <> +void print_coeff(std::ostream &os, const Complex &coeff); +template <> +void print_coeff(std::ostream &os, const Expr &coeff); + +/** + * Hash a coefficient, combining it with an existing hash of another structure. + */ +template +void hash_combine_coeff(std::size_t &seed, const CoeffType &coeff) = delete; +template <> +void hash_combine_coeff(std::size_t &, const no_coeff_t &); +template <> +void hash_combine_coeff( + std::size_t &seed, const quarter_turns_t &coeff); +template <> +void hash_combine_coeff(std::size_t &seed, const Complex &coeff); +template <> +void hash_combine_coeff(std::size_t &seed, const Expr &coeff); + +/** + * Multiply together two coefficients of the same type. + * + * Multiplication of no_coeff_t is trivial. + * Multiplication of quarter_turns_t adds the unsigned values (e^{i*a*pi/2} * + * e^{i*b*pi/2} = e^{i*(a+b)*pi/2}). Multiplication of Complex/Expr is standard + * multiplication. + */ +template +CoeffType multiply_coeffs(const CoeffType &first, const CoeffType &second) = + delete; +template <> +no_coeff_t multiply_coeffs(const no_coeff_t &, const no_coeff_t &); +template <> +quarter_turns_t multiply_coeffs( + const quarter_turns_t &first, const quarter_turns_t &second); +template <> +Complex multiply_coeffs(const Complex &first, const Complex &second); +template <> +Expr multiply_coeffs(const Expr &first, const Expr &second); + +/******************************************************************************* + * PAULI CONTAINERS + ******************************************************************************/ + +/** + * A sparse, Qubit-indexed Pauli container. + * + * A QubitPauliMap is generally treated the same as if all Pauli::I entries were + * removed. + */ +typedef std::map QubitPauliMap; + +/** + * A dense, unsigned-indexed Pauli container. + * + * A DensePauliMap is generally treated the same regardless of any Pauli::Is + * padded at the end. Each qubit index is treated as the corresponding Qubit id + * from the default register. + * + * In future work, it may be interesting to consider + * a symplectic representation (representing each Pauli by a pair of bits + * representing X and Z) for both speed and memory efficiency. + */ +typedef std::vector DensePauliMap; + +/** + * Cast between two different Pauli container types. + * + * Casting into a type with restricted indices (e.g. DensePauliMap expecting + * default register qubits) may throw an exception. + * + * @param cont The Pauli container to convert to another type. + */ +template +NewContainer cast_container(const OriginalContainer &cont) = delete; +template <> +QubitPauliMap cast_container( + const QubitPauliMap &cont); +template <> +QubitPauliMap cast_container( + const DensePauliMap &cont); +template <> +DensePauliMap cast_container( + const QubitPauliMap &cont); +template <> +DensePauliMap cast_container( + const DensePauliMap &cont); + +/** + * Compare two Pauli containers of the same type for ordering. + * + * Individual Paulis are ordered alphabetically as I < X < Y < Z. + * Strings are ordered lexicographically, IZ < ZI (Zq[1] < Zq[0]). + * + * @param first A Pauli container + * @param second Another Pauli container of the same type. + * @retval -1 first < second + * @retval 0 first == second + * @retval 1 first > second + */ +template +int compare_containers( + const PauliContainer &first, const PauliContainer &second) = delete; +template <> +int compare_containers( + const QubitPauliMap &first, const QubitPauliMap &second); +template <> +int compare_containers( + const DensePauliMap &first, const DensePauliMap &second); + +/** + * Find the set of Qubits on which \p first and \p second have the same + * non-trivial Pauli (X, Y, Z). + */ +std::set common_qubits( + const QubitPauliMap &first, const QubitPauliMap &second); + +/** + * Find the set of qubits (as unsigned integer indices) on which \p first and \p + * second have the same non-trivial Pauli (X, Y, Z). + */ +std::set common_indices( + const DensePauliMap &first, const DensePauliMap &second); + +/** + * Find the set of Qubits on which \p first has a non-trivial Pauli (X, Y, Z) + * but \p second either doesn't contain or maps to I. + */ +std::set own_qubits( + const QubitPauliMap &first, const QubitPauliMap &second); + +/** + * Find the set of qubits (as unsigned integer indices) on which \p first has a + * non-trivial Pauli (X, Y, Z) but \p second either doesn't contain (>= size) or + * maps to I. + */ +std::set own_indices( + const DensePauliMap &first, const DensePauliMap &second); + +/** + * Find the set of Qubits on which \p first and \p second have distinct + * non-trivial Paulis (X, Y, Z). + */ +std::set conflicting_qubits( + const QubitPauliMap &first, const QubitPauliMap &second); + +/** + * Find the set of qubits (as unsigned integer indices) on which \p first and \p + * second have distinct non-trivial Paulis (X, Y, Z). + */ +std::set conflicting_indices( + const DensePauliMap &first, const DensePauliMap &second); + +/** + * Return whether two Pauli containers commute as Pauli strings (there are an + * even number of qubits on which they have distinct non-trivial Paulis). + */ +template +bool commuting_containers( + const PauliContainer &first, const PauliContainer &second) = delete; +template <> +bool commuting_containers( + const QubitPauliMap &first, const QubitPauliMap &second); +template <> +bool commuting_containers( + const DensePauliMap &first, const DensePauliMap &second); + +/** + * Generates the readable Pauli string portion of PauliTensor::to_str(). + * + * Dense strings are printed as e.g. XIYZ. + * Sparse strings are printed as e.g. (Xq[0], Yq[2], Zq[3]). + */ +template +void print_paulis(std::ostream &os, const PauliContainer &paulis) = delete; +template <> +void print_paulis(std::ostream &os, const QubitPauliMap &paulis); +template <> +void print_paulis(std::ostream &os, const DensePauliMap &paulis); + +/** + * Hash a Pauli container, combining it with an existing hash of another + * structure. + */ +template +void hash_combine_paulis(std::size_t &seed, const PauliContainer &paulis) = + delete; +template <> +void hash_combine_paulis( + std::size_t &seed, const QubitPauliMap &paulis); +template <> +void hash_combine_paulis( + std::size_t &seed, const DensePauliMap &paulis); + +/** + * Return the number of Pauli::Ys in the container. Used for + * PauliTensor::transpose(). + */ +template +unsigned n_ys(const PauliContainer &paulis) = delete; +template <> +unsigned n_ys(const QubitPauliMap &paulis); +template <> +unsigned n_ys(const DensePauliMap &paulis); + +/** + * Returns a const reference to a lookup table for multiplying individual + * Paulis. + * + * Maps {p0, p1} -> {k, p2} where p0*p1 = e^{i*k*pi/2}*p2, e.g. {Pauli::X, + * Pauli::Y} -> {1, Pauli::Z} (X*Y = iZ). + */ +const std::map, std::pair> & +get_mult_matrix(); + +/** + * Multiplies two Pauli containers component-wise, returning both the resulting + * phase and string. + * + * Maps {P0, P1} -> {k, P2} where P0*P1 = e^{i*k*pi/2}*P2, e.g. {XIY, YZY} -> + * {1, ZZI} (XIY*YZY = iZZI). + */ +template +std::pair multiply_strings( + const PauliContainer &first, const PauliContainer &second) = delete; +template <> +std::pair multiply_strings( + const QubitPauliMap &first, const QubitPauliMap &second); +template <> +std::pair multiply_strings( + const DensePauliMap &first, const DensePauliMap &second); + +/** + * Evaluates a Pauli container to a sparse matrix describing the tensor product + * of each Pauli in the string. + * + * The matrix gives the operator in ILO-BE format, e.g. (Zq[0], Xq[1]): + * 0 1 0 0 + * 1 0 0 0 + * 0 0 0 -1 + * 0 0 -1 0 + * + * For sparse Pauli containers, just those qubits present in the container will + * be treated as part of the Pauli string (e.g. (Zq[1], Iq[2]) is treated as ZI + * since q[0] is ignored but q[2] is present in the string), so it is often + * preferred to use the other variants which explicitly provide the expected + * qubits. + */ +template +CmplxSpMat to_sparse_matrix(const PauliContainer &paulis) = delete; +template <> +CmplxSpMat to_sparse_matrix(const QubitPauliMap &paulis); +template <> +CmplxSpMat to_sparse_matrix(const DensePauliMap &paulis); + +/** + * Evaluates a Pauli container to a sparse matrix describing the tensor product + * of each Pauli in the string. + * + * Qubits are restricted to the default register, from q[0] to q[ \p n_qubits - + * 1], then presents the operator in ILO-BE format (if a sparse container + * contains Qubits outside of this range or not in the default register, an + * exception is thrown). E.g. (Zq[0]), 2: + * 1 0 0 0 + * 0 -1 0 0 + * 0 0 1 0 + * 0 0 0 -1 + */ +template +CmplxSpMat to_sparse_matrix(const PauliContainer &paulis, unsigned n_qubits) = + delete; +template <> +CmplxSpMat to_sparse_matrix( + const QubitPauliMap &paulis, unsigned n_qubits); +template <> +CmplxSpMat to_sparse_matrix( + const DensePauliMap &paulis, unsigned n_qubits); + +/** + * Evaluates a Pauli container to a sparse matrix describing the tensor product + * of each Pauli in the string. + * + * \p qubits dictates the order of the qubits in the tensor product, with the + * operator returned in Big Endian format. E.g. (Zq[0], Xq[1]), [q[1], q[0]]: + * 0 0 1 0 + * 0 0 0 -1 + * 1 0 0 0 + * 0 -1 0 0 + */ +template +CmplxSpMat to_sparse_matrix( + const PauliContainer &paulis, const qubit_vector_t &qubits) = delete; +template <> +CmplxSpMat to_sparse_matrix( + const QubitPauliMap &paulis, const qubit_vector_t &qubits); +template <> +CmplxSpMat to_sparse_matrix( + const DensePauliMap &paulis, const qubit_vector_t &qubits); + +/******************************************************************************* + * PauliTensor TEMPLATE CLASS + ******************************************************************************/ + +/** + * PauliTensor + * + * A unified type for tensor products of Pauli operators, possibly with some + * global scalar coefficient. It is parameterised in two ways: + * - PauliContainer describes the data structure used to map qubits to Paulis. + * This may be sparse or dense, and indexed by arbitrary Qubits or unsigneds + * (referring to indices in the default register). + * - CoeffType describes the kind of coefficient stored, ranging from no data to + * restricted values, to symbolic expressions. + * + * Each implementation should be interoperable by casting. Some methods may only + * be available for certain specialisations. + */ +template +class PauliTensor { + static_assert( + std::is_same::value || + std::is_same::value, + "PauliTensor must be either dense or qubit-indexed."); + static_assert( + std::is_same::value || + std::is_same::value || + std::is_same::value || + std::is_same::value, + "PauliTensor must either support no coefficient, quarter turns, or " + "arbitrary complex (floating point or symbolic) coefficients."); + + static const CoeffType default_coeff; + + public: + PauliContainer string; + CoeffType coeff; + + /** + * Default constructor, giving the empty Pauli string with unit scalar. + */ + PauliTensor() : string(), coeff(default_coeff) {} + + /** + * Constructor directly instantiating the Pauli string and coefficient. + */ + PauliTensor( + const PauliContainer &_string, const CoeffType &_coeff = default_coeff) + : string(_string), coeff(_coeff) {} + + /** + * Convenience constructor for an individual Pauli in a sparse representation. + */ + template + PauliTensor( + const Qubit &q, Pauli p, const CoeffType &_coeff = default_coeff, + typename std::enable_if::value>::type * = + 0) + : string({{q, p}}), coeff(_coeff) {} + + /** + * Convenience constructor to immediately cast a dense Pauli string on the + * default register to a sparse representation. + */ + template + PauliTensor( + const DensePauliMap &_string, const CoeffType &_coeff = default_coeff, + typename std::enable_if::value>::type * = + 0) + : string(cast_container(_string)), + coeff(_coeff) {} + + /** + * Constructor for sparse representations which zips together an ordered list + * of Qubits and Paulis. + */ + template + PauliTensor( + const std::list &qubits, const std::list &paulis, + const CoeffType &_coeff = default_coeff, + typename std::enable_if::value>::type * = + 0) + : string(), coeff(_coeff) { + if (qubits.size() != paulis.size()) { + throw std::logic_error( + "Mismatch of Qubits and Paulis upon QubitPauliString " + "construction"); + } + std::list::const_iterator p_it = paulis.begin(); + for (const Qubit &qb : qubits) { + Pauli p = *p_it; + if (string.find(qb) != string.end()) { + throw std::logic_error( + "Non-unique Qubit inserted into QubitPauliString map"); + } + string[qb] = p; + ++p_it; + } + } + + /** + * Casting operator between different specialisations of PauliTensor. Casts + * the Pauli container and coefficient separately. + */ + template + operator PauliTensor() const { + return PauliTensor( + cast_container(string), + cast_coeff(coeff)); + } + + /** + * Compares two PauliTensors of the same type in lexicographical order by the + * Paulis first, then coefficients. + * + * Ordering rules for each of the Pauli containers or coefficient types may + * vary. + * + * @param other Another PauliTensor of the same type. + * @retval -1 this < other + * @retval 0 this == other + * @retval 1 this > other + */ + int compare(const PauliTensor &other) const { + int cont_comp = + compare_containers(this->string, other.string); + if (cont_comp != 0) return cont_comp; + return compare_coeffs(this->coeff, other.coeff); + } + bool operator==(const PauliTensor &other) const { + return (compare(other) == 0); + } + bool operator!=(const PauliTensor &other) const { + return !(*this == other); + } + bool operator<(const PauliTensor &other) const { + return compare(other) < 0; + } + + /** + * Checks for equivalence of PauliTensors, explicitly taking the coefficient + * modulo \p n + * + * This is useful for treatment of Pauli exponentials, where the coefficient + * becomes the rotation angle under exponentiation and so is unchanged under + * some modulus. + */ + template + typename std::enable_if::value, bool>::type equiv_mod( + const PauliTensor &other, unsigned n) const { + int cont_comp = + compare_containers(this->string, other.string); + return (cont_comp == 0) && equiv_expr(this->coeff, other.coeff, n); + } + + /** + * Compress a sparse PauliTensor by removing identity terms. + */ + template + typename std::enable_if::value>::type + compress() { + QubitPauliMap::iterator it = string.begin(); + while (it != string.end()) { + if (it->second == Pauli::I) + it = string.erase(it); + else + ++it; + } + } + + /** + * Checks commutation of two PauliTensors by evaluating how many Qubits have + * anti-commuting Paulis in the string. + */ + template + bool commutes_with( + const PauliTensor &other) const { + return commuting_containers(string, other.string); + } + + /** + * Find the set of Qubits on which this and \p other have the same + * non-trivial Pauli (X, Y, Z). + */ + template + typename std::enable_if< + std::is_same::value, std::set>::type + common_qubits( + const PauliTensor &other) const { + return tket::common_qubits(string, other.string); + } + + /** + * Find the set of Qubits on which this has a non-trivial Pauli (X, Y, Z) + * but \p other either doesn't contain or maps to I. + */ + template + typename std::enable_if< + std::is_same::value, std::set>::type + own_qubits(const PauliTensor &other) const { + return tket::own_qubits(string, other.string); + } + + /** + * Find the set of Qubits on which this and \p other have distinct + * non-trivial Paulis (X, Y, Z). + */ + template + typename std::enable_if< + std::is_same::value, std::set>::type + conflicting_qubits( + const PauliTensor &other) const { + return tket::conflicting_qubits(string, other.string); + } + + /** + * Find the set of qubits (as unsigned integer indices) on which this and + * \p other have the same non-trivial Pauli (X, Y, Z). + */ + template + typename std::enable_if< + std::is_same::value, std::set>::type + common_indices( + const PauliTensor &other) const { + return tket::common_indices(string, other.string); + } + + /** + * Find the set of qubits (as unsigned integer indices) on which this has a + * non-trivial Pauli (X, Y, Z) but \p other either doesn't contain (>= size) + * or maps to I. + */ + template + typename std::enable_if< + std::is_same::value, std::set>::type + own_indices(const PauliTensor &other) const { + return tket::own_indices(string, other.string); + } + + /** + * Find the set of qubits (as unsigned integer indices) on which this and + * \p other have distinct non-trivial Paulis (X, Y, Z). + */ + template + typename std::enable_if< + std::is_same::value, std::set>::type + conflicting_indices( + const PauliTensor &other) const { + return tket::conflicting_indices(string, other.string); + } + + /** + * Gets the Pauli at the given index within the string. + * + * For sparse representations, returns Pauli::I if index is not present. + */ + template + typename std::enable_if::value, Pauli>::type + get(const Qubit &qb) const { + QubitPauliMap::const_iterator i = string.find(qb); + if (i == string.end()) + return Pauli::I; + else + return i->second; + } + template + typename std::enable_if::value, Pauli>::type + get(unsigned qb) const { + if (qb >= string.size()) + return Pauli::I; + else + return string.at(qb); + } + + /** + * Sets the Pauli at the given index within the string. + */ + template + typename std::enable_if::value>::type set( + const Qubit &qb, Pauli p) { + QubitPauliMap::iterator i = string.find(qb); + if (i == string.end()) { + if (p != Pauli::I) string.insert({qb, p}); + } else { + if (p == Pauli::I) + string.erase(i); + else + i->second = p; + } + } + template + typename std::enable_if::value>::type set( + unsigned qb, Pauli p) { + if (qb >= string.size()) string.resize(qb + 1, Pauli::I); + string.at(qb) = p; + } + + /** + * Asserts coefficient is real, and returns whether it is negative. + * + * quarter_turns_t is used as the coefficient to restrict to the Pauli group. + * This is most commonly used for stabiliser methods, in which case valid + * coefficients must be +-1. It is common in such representations for these to + * be distinguished just by a single phase bit which is true if negative, + * false if positive. This method immediately gives that phase bit. + * + * @retval true if coeff % 4 == 2 (coefficient is -1) + * @retval false if coeff % 4 == 0 (coefficient is +1) + */ + template + typename std::enable_if::value, bool>::type + is_real_negative() const { + switch (coeff % 4) { + case 0: { + return false; + } + case 2: { + return true; + } + default: { + throw std::logic_error( + "is_real_negative() called on a PauliTensor with imaginary phase"); + } + } + } + + /** + * A human-readable form of the PauliTensor, incorporating the coefficient and + * Pauli string. Format may depend on the type specialisations. + */ + std::string to_str() const { + std::stringstream ss; + print_coeff(ss, coeff); + print_paulis(ss, string); + return ss.str(); + } + + /** + * Hash the PauliTensor. + */ + std::size_t hash_value() const { + std::size_t seed = 0; + hash_combine_paulis(seed, string); + hash_combine_coeff(seed, coeff); + return seed; + } + + /** + * Update this to the transpose by negating the coefficient if the string + * contains an odd number of Pauli::Ys. + */ + void transpose() { + if (n_ys(string) % 2 == 1) + coeff = multiply_coeffs( + coeff, cast_coeff(2)); + } + + /** + * Qubit-wise multiplication of two PauliTensors of the same type. + */ + PauliTensor operator*( + const PauliTensor &other) const { + std::pair prod = + multiply_strings(this->string, other.string); + CoeffType new_coeff = multiply_coeffs(this->coeff, other.coeff); + new_coeff = multiply_coeffs( + new_coeff, cast_coeff(prod.first)); + return PauliTensor(prod.second, new_coeff); + } + + /** + * Returns the set of free symbols in a symbolic PauliTensor. + */ + template + typename std::enable_if::value, SymSet>::type + free_symbols() const { + return expr_free_symbols(coeff); + } + /** + * Replaces given symbols with values in a symbolic PauliTensor. + */ + template + typename std::enable_if< + std::is_same::value, + PauliTensor>::type + symbol_substitution(const SymEngine::map_basic_basic &sub_map) const { + return PauliTensor(string, coeff.subs(sub_map)); + } + + /** + * Returns the size of the underlying Pauli string. + * + * This is taken directly from the container, so may include some qubits + * mapped to Pauli::I and vary around calling PauliTensor::compress(). + */ + unsigned size() const { return string.size(); } + + /** + * Evaluates a PauliTensor to a sparse matrix describing the tensor product + * of each Pauli in the string. Throws an exception if the coefficient is + * symbolic. + * + * The matrix gives the operator in ILO-BE format, e.g. (Zq[0], Xq[1]): + * 0 1 0 0 + * 1 0 0 0 + * 0 0 0 -1 + * 0 0 -1 0 + * + * For sparse Pauli containers, just those qubits present in the container + * will be treated as part of the Pauli string (e.g. (Zq[1], Iq[2]) is treated + * as ZI since q[0] is ignored but q[2] is present in the string), so it is + * often preferred to use the other variants which explicitly provide the + * expected qubits. + */ + CmplxSpMat to_sparse_matrix() const { + return cast_coeff(coeff) * + tket::to_sparse_matrix(string); + } + + /** + * Evaluates a PauliTensor to a sparse matrix describing the tensor product + * of each Pauli in the string. Throws an exception if the coefficient is + * symbolic. + * + * Qubits are restricted to the default register, from q[0] to q[ \p n_qubits + * - 1], then presents the operator in ILO-BE format (if a sparse container + * contains Qubits outside of this range or not in the default register, an + * exception is thrown). E.g. (Zq[0]), 2: + * 1 0 0 0 + * 0 -1 0 0 + * 0 0 1 0 + * 0 0 0 -1 + */ + CmplxSpMat to_sparse_matrix(const unsigned n_qubits) const { + return cast_coeff(coeff) * + tket::to_sparse_matrix(string, n_qubits); + } + + /** + * Evaluates a PauliTensor to a sparse matrix describing the tensor product + * of each Pauli in the string. Throws an exception if the coefficient is + * symbolic. + * + * \p qubits dictates the order of the qubits in the tensor product, with the + * operator returned in Big Endian format. E.g. (Zq[0], Xq[1]), [q[1], q[0]]: + * 0 0 1 0 + * 0 0 0 -1 + * 1 0 0 0 + * 0 -1 0 0 + */ + CmplxSpMat to_sparse_matrix(const qubit_vector_t &qubits) const { + return cast_coeff(coeff) * + tket::to_sparse_matrix(string, qubits); + } + + /** + * Applies the PauliTensor to a given statevector by matrix multiplication. + * + * Determines the number of qubits from the size of the statevector, and + * assumes default register qubits in ILO-BE format. + */ + Eigen::VectorXcd dot_state(const Eigen::VectorXcd &state) const { + // allowing room for big states + unsigned long long n = state.size(); + if (!(n && (!(n & (n - 1))))) + throw std::logic_error("Statevector size is not a power of two."); + unsigned n_qubits = 0; + while (n) { + n >>= 1; + ++n_qubits; + } + --n_qubits; + return (to_sparse_matrix(n_qubits) * state); + } + /** + * Applies the PauliTensor to a given statevector by matrix multiplication. + * + * \p qubits dictates the order of Qubits in the state, assuming a Big Endian + * format. An exception is thrown if the size of the state does not match up + * with the number of Qubits given. + */ + Eigen::VectorXcd dot_state( + const Eigen::VectorXcd &state, const qubit_vector_t &qubits) const { + if (state.size() != 1 << qubits.size()) + throw std::logic_error( + "Size of statevector does not match number of qubits passed to " + "dot_state"); + return (to_sparse_matrix(qubits) * state); + } + + /** + * Determines the expectation value of a given statevector with respect to the + * PauliTensor by matrix multiplication. + * + * Determines the number of qubits from the size of the statevector, and + * assumes default register qubits in ILO-BE format. + */ + Complex state_expectation(const Eigen::VectorXcd &state) const { + return state.dot(dot_state(state)); + } + /** + * Determines the expectation value of a given statevector with respect to the + * PauliTensor by matrix multiplication. + * + * \p qubits dictates the order of Qubits in the state, assuming a Big Endian + * format. An exception is thrown if the size of the state does not match up + * with the number of Qubits given. + */ + Complex state_expectation( + const Eigen::VectorXcd &state, const qubit_vector_t &qubits) const { + return state.dot(dot_state(state, qubits)); + } +}; + +// Initialise default coefficient +template +const CoeffType PauliTensor::default_coeff = + tket::default_coeff(); + +template +void to_json( + nlohmann::json &j, const PauliTensor &tensor) { + j["string"] = tensor.string; + j["coeff"] = tensor.coeff; +} + +template +void from_json( + const nlohmann::json &j, PauliTensor &tensor) { + tensor = PauliTensor( + j.at("string").get(), j.at("coeff").get()); +} + +/******************************************************************************* + * PauliTensor SPECIALISATION TYPEDEFS + ******************************************************************************/ + +typedef PauliTensor SpPauliString; +typedef PauliTensor PauliString; +typedef PauliTensor SpPauliStabiliser; +typedef PauliTensor PauliStabiliser; +typedef PauliTensor SpCxPauliTensor; +typedef PauliTensor CxPauliTensor; +typedef PauliTensor SpSymPauliTensor; +typedef PauliTensor SymPauliTensor; + +typedef std::vector PauliStabiliserVec; + +} // namespace tket diff --git a/tket/src/Characterisation/FrameRandomisation.cpp b/tket/src/Characterisation/FrameRandomisation.cpp index 92bd53a401..c6667ce0be 100644 --- a/tket/src/Characterisation/FrameRandomisation.cpp +++ b/tket/src/Characterisation/FrameRandomisation.cpp @@ -18,7 +18,6 @@ #include "tket/Ops/BarrierOp.hpp" #include "tket/PauliGraph/ConjugatePauliFunctions.hpp" -#include "tket/Utils/PauliStrings.hpp" namespace tket { @@ -206,7 +205,7 @@ PauliFrameRandomisation::get_out_frame( } } - QubitPauliTensor qpt(qpm); + SpPauliStabiliser qpt(qpm); for (const CycleCom& cycle_op : cycle.coms_) { switch (cycle_op.type) { @@ -243,8 +242,8 @@ PauliFrameRandomisation::get_out_frame( } } - OpTypeVector out_frame(in_frame.size()); - for (const auto& entry : qpt.string.map) { + OpTypeVector out_frame(in_frame.size(), OpType::noop); + for (const auto& entry : qpt.string) { switch (entry.second) { case Pauli::I: out_frame[entry.first.index()[0]] = OpType::noop; @@ -290,11 +289,11 @@ UniversalFrameRandomisation::get_out_frame( } } - QubitPauliTensor qpt(qpm); + SpPauliStabiliser qpt(qpm); for (const CycleCom& cycle_op : cycle.coms_) { if (cycle_op.type == OpType::Rz) { - Pauli frame_type = qpt.string.map[Qubit("frame", cycle_op.indices[0])]; + Pauli frame_type = qpt.get(Qubit("frame", cycle_op.indices[0])); if (frame_type == Pauli::X || frame_type == Pauli::Y) { to_dagger.push_back(cycle_op.address); } @@ -311,8 +310,8 @@ UniversalFrameRandomisation::get_out_frame( } } - OpTypeVector out_frame(in_frame.size()); - for (const auto& entry : qpt.string.map) { + OpTypeVector out_frame(in_frame.size(), OpType::noop); + for (const auto& entry : qpt.string) { switch (entry.second) { case Pauli::I: out_frame[entry.first.index()[0]] = OpType::noop; diff --git a/tket/src/Circuit/AssertionSynthesis.cpp b/tket/src/Circuit/AssertionSynthesis.cpp index a4e35759e1..05a7e6408e 100644 --- a/tket/src/Circuit/AssertionSynthesis.cpp +++ b/tket/src/Circuit/AssertionSynthesis.cpp @@ -280,7 +280,7 @@ std::tuple> projector_assertion_synthesis( } static unsigned get_n_qubits_from_stabilisers( - const PauliStabiliserList &paulis) { + const PauliStabiliserVec &paulis) { if (paulis.size() == 0) { throw CircuitInvalidity("Stabilisers cannot be empty"); } @@ -311,32 +311,39 @@ static unsigned add_assertion_operator( const Qubit &ancilla, std::vector &expected_readouts) { circ.add_op(OpType::Reset, {ancilla}); circ.add_op(OpType::H, {ancilla}); - for (unsigned i = 0; i < pauli.string.size(); i++) { + bool identity = true; + for (unsigned i = 0; i < pauli.size(); i++) { switch (pauli.string[i]) { case Pauli::I: break; case Pauli::X: circ.add_op(OpType::CX, {ancilla, Qubit(i)}); + identity = false; break; case Pauli::Y: circ.add_op(OpType::CY, {ancilla, Qubit(i)}); + identity = false; break; case Pauli::Z: circ.add_op(OpType::CZ, {ancilla, Qubit(i)}); + identity = false; break; } } + if (identity) + throw std::invalid_argument( + "StabiliserAssertionBox cannot assert an identity."); circ.add_op(OpType::H, {ancilla}); Bit b(debug_bit_index++); circ.add_bit(b); circ.add_op(OpType::Measure, {ancilla, b}); - expected_readouts.push_back(!pauli.coeff); + expected_readouts.push_back(pauli.is_real_negative()); return debug_bit_index; } // Assume all Pauli stabilisers have equal lengths and no identity std::tuple> stabiliser_assertion_synthesis( - const PauliStabiliserList &paulis) { + const PauliStabiliserVec &paulis) { unsigned n_qubits = get_n_qubits_from_stabilisers(paulis); std::vector expected_readouts; Circuit circ(n_qubits); diff --git a/tket/src/Circuit/Boxes.cpp b/tket/src/Circuit/Boxes.cpp index 9b811d19f6..e25d4ea83b 100644 --- a/tket/src/Circuit/Boxes.cpp +++ b/tket/src/Circuit/Boxes.cpp @@ -30,7 +30,7 @@ #include "tket/Utils/Expression.hpp" #include "tket/Utils/HelperFunctions.hpp" #include "tket/Utils/Json.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" namespace tket { @@ -489,8 +489,7 @@ bool ProjectorAssertionBox::is_equal(const Op &op_other) const { return m_.isApprox(other.m_); } -StabiliserAssertionBox::StabiliserAssertionBox( - const PauliStabiliserList &paulis) +StabiliserAssertionBox::StabiliserAssertionBox(const PauliStabiliserVec &paulis) : Box(OpType::StabiliserAssertionBox), paulis_(paulis), expected_readouts_({}) { @@ -508,15 +507,10 @@ Op_ptr StabiliserAssertionBox::dagger() const { } Op_ptr StabiliserAssertionBox::transpose() const { - PauliStabiliserList new_pauli_list; - for (auto &pauli : paulis_) { - int y_pauli_counter = - std::count(pauli.string.begin(), pauli.string.end(), Pauli::Y); - if (y_pauli_counter % 2 == 0) { - new_pauli_list.push_back(PauliStabiliser(pauli.string, pauli.coeff)); - } else { - new_pauli_list.push_back(PauliStabiliser(pauli.string, !pauli.coeff)); - }; + PauliStabiliserVec new_pauli_list; + for (PauliStabiliser pauli : paulis_) { + pauli.transpose(); + new_pauli_list.push_back(pauli); } return std::make_shared(new_pauli_list); } @@ -691,13 +685,23 @@ Op_ptr ProjectorAssertionBox::from_json(const nlohmann::json &j) { nlohmann::json StabiliserAssertionBox::to_json(const Op_ptr &op) { const auto &box = static_cast(*op); nlohmann::json j = core_box_json(box); - j["stabilisers"] = box.get_stabilisers(); + // Encode PauliStabiliser as Pauli vector and bool (true iff coeff 0) for + // backwards compatibility with before templated PauliTensor + std::vector, bool>> stabiliser_encoding; + for (const PauliStabiliser &stab : box.get_stabilisers()) + stabiliser_encoding.push_back({stab.string, !stab.is_real_negative()}); + j["stabilisers"] = stabiliser_encoding; return j; } Op_ptr StabiliserAssertionBox::from_json(const nlohmann::json &j) { - StabiliserAssertionBox box = - StabiliserAssertionBox(j.at("stabilisers").get()); + std::vector, bool>> stabiliser_encoding = + j.at("stabilisers") + .get, bool>>>(); + PauliStabiliserVec stabs; + for (const std::pair, bool> &stab : stabiliser_encoding) + stabs.push_back(PauliStabiliser(stab.first, stab.second ? 0 : 2)); + StabiliserAssertionBox box = StabiliserAssertionBox(stabs); return set_box_id( box, boost::lexical_cast(j.at("id").get())); diff --git a/tket/src/Circuit/PauliExpBoxes.cpp b/tket/src/Circuit/PauliExpBoxes.cpp index 22f9734048..23f81c9d8e 100644 --- a/tket/src/Circuit/PauliExpBoxes.cpp +++ b/tket/src/Circuit/PauliExpBoxes.cpp @@ -26,63 +26,56 @@ namespace tket { PauliExpBox::PauliExpBox( - const std::vector &paulis, const Expr &t, - CXConfigType cx_config_type) + const SymPauliTensor &paulis, CXConfigType cx_config_type) : Box(OpType::PauliExpBox, op_signature_t(paulis.size(), EdgeType::Quantum)), paulis_(paulis), - t_(t), cx_config_(cx_config_type) {} PauliExpBox::PauliExpBox(const PauliExpBox &other) - : Box(other), - paulis_(other.paulis_), - t_(other.t_), - cx_config_(other.cx_config_) {} + : Box(other), paulis_(other.paulis_), cx_config_(other.cx_config_) {} -PauliExpBox::PauliExpBox() : PauliExpBox({}, 0.) {} +PauliExpBox::PauliExpBox() : PauliExpBox({{}, 0}) {} bool PauliExpBox::is_clifford() const { - return equiv_0(4 * t_) || paulis_.empty(); + return equiv_0(4 * paulis_.coeff) || paulis_.string.empty(); } -SymSet PauliExpBox::free_symbols() const { return expr_free_symbols(t_); } +SymSet PauliExpBox::free_symbols() const { return paulis_.free_symbols(); } Op_ptr PauliExpBox::dagger() const { - return std::make_shared(paulis_, -t_, cx_config_); + return std::make_shared( + SymPauliTensor(paulis_.string, -paulis_.coeff), cx_config_); } Op_ptr PauliExpBox::transpose() const { - std::vector paulis = get_paulis(); - int number_y_pauli_mod2 = - std::count(paulis.begin(), paulis.end(), Pauli::Y) % 2; - // Negate the parameter if odd nr of Paulis (mult with 1 if mod2=0, -1 if - // mod2=1) - int t_fac = -number_y_pauli_mod2 * 2 + 1; - return std::make_shared(paulis_, t_fac * t_, cx_config_); + SymPauliTensor tr = paulis_; + tr.transpose(); + return std::make_shared(tr, cx_config_); } Op_ptr PauliExpBox::symbol_substitution( const SymEngine::map_basic_basic &sub_map) const { return std::make_shared( - this->paulis_, this->t_.subs(sub_map), this->cx_config_); + this->paulis_.symbol_substitution(sub_map), this->cx_config_); } void PauliExpBox::generate_circuit() const { - Circuit circ = pauli_gadget(paulis_, t_, cx_config_); + Circuit circ = pauli_gadget(paulis_.string, paulis_.coeff, cx_config_); circ_ = std::make_shared(circ); } bool PauliExpBox::is_equal(const Op &op_other) const { const PauliExpBox &other = dynamic_cast(op_other); if (id_ == other.get_id()) return true; - return equiv_expr(t_, other.t_, 4) && cx_config_ == other.cx_config_ && - paulis_ == other.paulis_; + return cx_config_ == other.cx_config_ && paulis_.equiv_mod(other.paulis_, 4); } nlohmann::json PauliExpBox::to_json(const Op_ptr &op) { const auto &box = static_cast(*op); nlohmann::json j = core_box_json(box); + // Serialise paulis and phase separately for backwards compatibility with + // before templated PauliTensor j["paulis"] = box.get_paulis(); j["phase"] = box.get_phase(); j["cx_config"] = box.get_cx_config(); @@ -91,7 +84,8 @@ nlohmann::json PauliExpBox::to_json(const Op_ptr &op) { Op_ptr PauliExpBox::from_json(const nlohmann::json &j) { PauliExpBox box = PauliExpBox( - j.at("paulis").get>(), j.at("phase").get(), + SymPauliTensor( + j.at("paulis").get>(), j.at("phase").get()), j.at("cx_config").get()); return set_box_id( box, @@ -101,15 +95,12 @@ Op_ptr PauliExpBox::from_json(const nlohmann::json &j) { REGISTER_OPFACTORY(PauliExpBox, PauliExpBox) PauliExpPairBox::PauliExpPairBox( - const std::vector &paulis0, const Expr &t0, - const std::vector &paulis1, const Expr &t1, + const SymPauliTensor &paulis0, const SymPauliTensor &paulis1, CXConfigType cx_config_type) : Box(OpType::PauliExpPairBox, op_signature_t(paulis0.size(), EdgeType::Quantum)), paulis0_(paulis0), - t0_(std::move(t0)), paulis1_(paulis1), - t1_(std::move(t1)), cx_config_(cx_config_type) { if (paulis0.size() != paulis1.size()) { throw PauliExpBoxInvalidity( @@ -121,60 +112,45 @@ PauliExpPairBox::PauliExpPairBox( PauliExpPairBox::PauliExpPairBox(const PauliExpPairBox &other) : Box(other), paulis0_(other.paulis0_), - t0_(other.t0_), paulis1_(other.paulis1_), - t1_(other.t1_), cx_config_(other.cx_config_) {} -PauliExpPairBox::PauliExpPairBox() : PauliExpPairBox({}, 0., {}, 0.) {} +PauliExpPairBox::PauliExpPairBox() : PauliExpPairBox({{}, 0}, {{}, 0}) {} bool PauliExpPairBox::is_clifford() const { - auto is_clifford0 = equiv_0(4 * t0_) || paulis0_.empty(); - auto is_clifford1 = equiv_0(4 * t1_) || paulis1_.empty(); + auto is_clifford0 = equiv_0(4 * paulis0_.coeff) || paulis0_.string.empty(); + auto is_clifford1 = equiv_0(4 * paulis1_.coeff) || paulis1_.string.empty(); return is_clifford0 && is_clifford1; } SymSet PauliExpPairBox::free_symbols() const { - return expr_free_symbols({t0_, t1_}); + return expr_free_symbols({paulis0_.coeff, paulis1_.coeff}); } Op_ptr PauliExpPairBox::dagger() const { return std::make_shared( - paulis1_, -t1_, paulis0_, -t0_, cx_config_); -} - -// Get the multiplicative change factor in Pauli angle during transpose ( -1 for -// odd nr of Y, 1 otherwise) -int transpose_angle_factor(const std::vector &paulis) { - int pauli_odd_number_y = std::count_if( - paulis.begin(), paulis.end(), - [](auto pauli) { return pauli == Pauli::Y; }) % - 2; - // transform 0 -> 1, 1 -> -1 - return -pauli_odd_number_y * 2 + 1; + SymPauliTensor(paulis1_.string, -paulis1_.coeff), + SymPauliTensor(paulis0_.string, -paulis0_.coeff), cx_config_); } Op_ptr PauliExpPairBox::transpose() const { - int pauli0_angle_factor = transpose_angle_factor(paulis0_); - int pauli1_angle_factor = transpose_angle_factor(paulis1_); - return std::make_shared( - paulis1_, pauli1_angle_factor * t1_, paulis0_, pauli0_angle_factor * t0_, - cx_config_); + SymPauliTensor tr0 = paulis0_; + tr0.transpose(); + SymPauliTensor tr1 = paulis1_; + tr1.transpose(); + return std::make_shared(tr1, tr0, cx_config_); } Op_ptr PauliExpPairBox::symbol_substitution( const SymEngine::map_basic_basic &sub_map) const { return std::make_shared( - this->paulis0_, this->t0_.subs(sub_map), this->paulis1_, - this->t1_.subs(sub_map), this->cx_config_); + this->paulis0_.symbol_substitution(sub_map), + this->paulis1_.symbol_substitution(sub_map), this->cx_config_); } void PauliExpPairBox::generate_circuit() const { Circuit circ = Circuit(paulis0_.size()); - QubitPauliTensor pauli_tensor0(paulis0_); - QubitPauliTensor pauli_tensor1(paulis1_); - append_pauli_gadget_pair( - circ, pauli_tensor0, t0_, pauli_tensor1, t1_, cx_config_); + append_pauli_gadget_pair(circ, paulis0_, paulis1_, cx_config_); circ_ = std::make_shared(circ); } @@ -182,14 +158,16 @@ bool PauliExpPairBox::is_equal(const Op &op_other) const { const PauliExpPairBox &other = dynamic_cast(op_other); if (id_ == other.get_id()) return true; - return cx_config_ == other.cx_config_ && equiv_expr(t0_, other.t0_, 4) && - equiv_expr(t1_, other.t1_, 4) && paulis0_ == other.paulis0_ && - paulis1_ == other.paulis1_; + return cx_config_ == other.cx_config_ && + paulis0_.equiv_mod(other.paulis0_, 4) && + paulis1_.equiv_mod(other.paulis1_, 4); } nlohmann::json PauliExpPairBox::to_json(const Op_ptr &op) { const auto &box = static_cast(*op); nlohmann::json j = core_box_json(box); + // Encode pauli strings and phases separately for backwards compatibility from + // before templated PauliTensor auto paulis_pair = box.get_paulis_pair(); // use vector to avoid serialising into a dictionary if the Pauli strings are // of length 2 @@ -208,7 +186,8 @@ Op_ptr PauliExpPairBox::from_json(const nlohmann::json &j) { const auto [phase0, phase1] = j.at("phase_pair").get>(); PauliExpPairBox box = PauliExpPairBox( - paulis0, phase0, paulis1, phase1, j.at("cx_config").get()); + SymPauliTensor(paulis0, phase0), SymPauliTensor(paulis1, phase1), + j.at("cx_config").get()); return set_box_id( box, boost::lexical_cast(j.at("id").get())); @@ -217,7 +196,7 @@ Op_ptr PauliExpPairBox::from_json(const nlohmann::json &j) { REGISTER_OPFACTORY(PauliExpPairBox, PauliExpPairBox) PauliExpCommutingSetBox::PauliExpCommutingSetBox( - const std::vector, Expr>> &pauli_gadgets, + const std::vector &pauli_gadgets, CXConfigType cx_config_type) : Box(OpType::PauliExpCommutingSetBox), pauli_gadgets_(pauli_gadgets), @@ -228,9 +207,9 @@ PauliExpCommutingSetBox::PauliExpCommutingSetBox( "PauliExpCommutingSetBox requires at least one Pauli string"); } // check all gadgets have same Pauli string length - auto n_qubits = pauli_gadgets[0].first.size(); + auto n_qubits = pauli_gadgets[0].size(); for (const auto &gadget : pauli_gadgets) { - if (gadget.first.size() != n_qubits) { + if (gadget.size() != n_qubits) { throw PauliExpBoxInvalidity( "the Pauli strings within PauliExpCommutingSetBox must all be the " "same length"); @@ -256,21 +235,16 @@ PauliExpCommutingSetBox::PauliExpCommutingSetBox() bool PauliExpCommutingSetBox::is_clifford() const { return std::all_of( pauli_gadgets_.begin(), pauli_gadgets_.end(), - [](const std::pair, Expr> &pauli_exp) { - return equiv_0(4 * pauli_exp.second) || pauli_exp.first.empty(); + [](const SymPauliTensor &pauli_exp) { + return equiv_0(4 * pauli_exp.coeff) || pauli_exp.string.empty(); }); } bool PauliExpCommutingSetBox::paulis_commute() const { - std::vector pauli_strings; - pauli_strings.reserve(pauli_gadgets_.size()); - for (const auto &pauli_gadget : pauli_gadgets_) { - pauli_strings.emplace_back(pauli_gadget.first); - } - for (auto string0 = pauli_strings.begin(); string0 != pauli_strings.end(); - string0++) { - for (auto string1 = string0 + 1; string1 != pauli_strings.end(); - string1++) { + for (auto string0 = pauli_gadgets_.begin(); string0 != pauli_gadgets_.end(); + ++string0) { + for (auto string1 = std::next(string0); string1 != pauli_gadgets_.end(); + ++string1) { if (!string0->commutes_with(*string1)) { return false; } @@ -282,25 +256,25 @@ bool PauliExpCommutingSetBox::paulis_commute() const { SymSet PauliExpCommutingSetBox::free_symbols() const { std::vector angles; for (const auto &pauli_exp : pauli_gadgets_) { - angles.push_back(pauli_exp.second); + angles.push_back(pauli_exp.coeff); } return expr_free_symbols(angles); } Op_ptr PauliExpCommutingSetBox::dagger() const { - std::vector, Expr>> dagger_gadgets; + std::vector dagger_gadgets; for (const auto &pauli_exp : pauli_gadgets_) { - dagger_gadgets.emplace_back(pauli_exp.first, -pauli_exp.second); + dagger_gadgets.emplace_back(pauli_exp.string, -pauli_exp.coeff); } return std::make_shared(dagger_gadgets, cx_config_); } Op_ptr PauliExpCommutingSetBox::transpose() const { - std::vector, Expr>> transpose_gadgets; + std::vector transpose_gadgets; for (const auto &pauli_exp : pauli_gadgets_) { - int pauli_angle_factor = transpose_angle_factor(pauli_exp.first); - transpose_gadgets.emplace_back( - pauli_exp.first, pauli_angle_factor * pauli_exp.second); + SymPauliTensor tr = pauli_exp; + tr.transpose(); + transpose_gadgets.push_back(tr); } return std::make_shared( transpose_gadgets, cx_config_); @@ -308,23 +282,21 @@ Op_ptr PauliExpCommutingSetBox::transpose() const { Op_ptr PauliExpCommutingSetBox::symbol_substitution( const SymEngine::map_basic_basic &sub_map) const { - std::vector, Expr>> symbol_sub_gadgets; + std::vector symbol_sub_gadgets; for (const auto &pauli_exp : pauli_gadgets_) { - symbol_sub_gadgets.emplace_back( - pauli_exp.first, pauli_exp.second.subs(sub_map)); + symbol_sub_gadgets.push_back(pauli_exp.symbol_substitution(sub_map)); } return std::make_shared( symbol_sub_gadgets, this->cx_config_); } void PauliExpCommutingSetBox::generate_circuit() const { - unsigned n_qubits = pauli_gadgets_[0].first.size(); + unsigned n_qubits = pauli_gadgets_[0].size(); Circuit circ(n_qubits); - std::list> gadgets; + std::list gadgets; for (const auto &pauli_gadget : pauli_gadgets_) { - gadgets.emplace_back( - QubitPauliTensor(pauli_gadget.first), pauli_gadget.second); + gadgets.push_back((SpSymPauliTensor)pauli_gadget); } std::set qubits; for (unsigned i = 0; i < n_qubits; i++) qubits.insert(Qubit(i)); @@ -333,8 +305,8 @@ void PauliExpCommutingSetBox::generate_circuit() const { Circuit phase_poly_circ(n_qubits); - for (const std::pair &pgp : gadgets) { - append_single_pauli_gadget(phase_poly_circ, pgp.first, pgp.second); + for (const SpSymPauliTensor &pgp : gadgets) { + append_single_pauli_gadget(phase_poly_circ, pgp); } phase_poly_circ.decompose_boxes_recursively(); PhasePolyBox ppbox(phase_poly_circ); @@ -349,39 +321,41 @@ void PauliExpCommutingSetBox::generate_circuit() const { circ_ = std::make_shared(circ); } -// check two gadges are semantically equal -static bool gadget_compare( - const std::vector, Expr>> &g1, - const std::vector, Expr>> &g2) { - return std::equal( - g1.begin(), g1.end(), g2.begin(), g2.end(), - [](const std::pair, Expr> &a, - const std::pair, Expr> &b) { - return a.first == b.first && equiv_expr(a.second, b.second, 4); - }); -} - bool PauliExpCommutingSetBox::is_equal(const Op &op_other) const { const PauliExpCommutingSetBox &other = dynamic_cast(op_other); if (id_ == other.get_id()) return true; - return cx_config_ == other.cx_config_ && - gadget_compare(pauli_gadgets_, other.pauli_gadgets_); + if (cx_config_ != other.cx_config_) return false; + return std::equal( + pauli_gadgets_.begin(), pauli_gadgets_.end(), + other.pauli_gadgets_.begin(), other.pauli_gadgets_.end(), + [](const SymPauliTensor &a, const SymPauliTensor &b) { + return a.equiv_mod(b, 4); + }); } nlohmann::json PauliExpCommutingSetBox::to_json(const Op_ptr &op) { const auto &box = static_cast(*op); nlohmann::json j = core_box_json(box); - j["pauli_gadgets"] = box.get_pauli_gadgets(); + // Encode SymPauliTensor as unlabelled pair of Pauli vector and Expr for + // backwards compatibility from before templated PauliTensor + std::vector, Expr>> gadget_encoding; + for (const SymPauliTensor &g : box.get_pauli_gadgets()) + gadget_encoding.push_back({g.string, g.coeff}); + j["pauli_gadgets"] = gadget_encoding; j["cx_config"] = box.get_cx_config(); return j; } Op_ptr PauliExpCommutingSetBox::from_json(const nlohmann::json &j) { - PauliExpCommutingSetBox box = PauliExpCommutingSetBox( + std::vector, Expr>> gadget_encoding = j.at("pauli_gadgets") - .get, Expr>>>(), - j.at("cx_config").get()); + .get, Expr>>>(); + std::vector gadgets; + for (const std::pair, Expr> &g : gadget_encoding) + gadgets.push_back(SymPauliTensor(g.first, g.second)); + PauliExpCommutingSetBox box = + PauliExpCommutingSetBox(gadgets, j.at("cx_config").get()); return set_box_id( box, boost::lexical_cast(j.at("id").get())); diff --git a/tket/src/Circuit/Simulation/PauliExpBoxUnitaryCalculator.cpp b/tket/src/Circuit/Simulation/PauliExpBoxUnitaryCalculator.cpp index ec00d46d71..3338595e24 100644 --- a/tket/src/Circuit/Simulation/PauliExpBoxUnitaryCalculator.cpp +++ b/tket/src/Circuit/Simulation/PauliExpBoxUnitaryCalculator.cpp @@ -18,7 +18,6 @@ #include #include "tket/Circuit/PauliExpBoxes.hpp" -#include "tket/Utils/PauliStrings.hpp" namespace tket { namespace tket_sim { @@ -69,9 +68,8 @@ struct PauliExpBoxUnitaryCalculator { const std::map> pauli_map; // The tensor product matrix, all factors of i removed. - // Although QubitPauliString and QubitPauliTensor could probably - // be made to do the work for us, they are more complicated - // than we need. + // Although PauliTensor could probably be made to do the work for us, it is + // more complicated than we need. std::vector sparse_matrix; // The number of Y which occurred. @@ -170,10 +168,6 @@ void PauliExpBoxUnitaryCalculator::fill_triplets(double phase) { set_diagonals.clear(); for (const auto& entry : sparse_matrix) { - // In Utils\PauliStrings.hpp, there is - // QubitPauliTensor operator*(Complex a, const QubitPauliTensor &qpt), - // which messes up ordinary std statements like std::complex * int. - // Not really a problem, but can be unexpected. std::complex value = matrix_coefficient * std::complex(entry.value()); diff --git a/tket/src/Clifford/ChoiMixTableau.cpp b/tket/src/Clifford/ChoiMixTableau.cpp index d7e88eff4b..b481d54893 100644 --- a/tket/src/Clifford/ChoiMixTableau.cpp +++ b/tket/src/Clifford/ChoiMixTableau.cpp @@ -80,10 +80,10 @@ ChoiMixTableau::ChoiMixTableau(const std::list& rows) std::set in_qubits; std::set out_qubits; for (const row_tensor_t& row : rows) { - for (const std::pair& qb : row.first.string.map) { + for (const std::pair& qb : row.first.string) { in_qubits.insert(qb.first); } - for (const std::pair& qb : row.second.string.map) { + for (const std::pair& qb : row.second.string) { out_qubits.insert(qb.first); } } @@ -103,26 +103,19 @@ ChoiMixTableau::ChoiMixTableau(const std::list& rows) VectorXb phase = VectorXb::Zero(n_rows); unsigned r = 0; for (const row_tensor_t& row : rows) { - for (const std::pair& qb : row.first.string.map) { + for (const std::pair& qb : row.first.string) { unsigned c = col_index_.left.at(col_key_t{qb.first, TableauSegment::Input}); if (qb.second == Pauli::X || qb.second == Pauli::Y) xmat(r, c) = true; if (qb.second == Pauli::Z || qb.second == Pauli::Y) zmat(r, c) = true; } - for (const std::pair& qb : row.second.string.map) { + for (const std::pair& qb : row.second.string) { unsigned c = col_index_.left.at(col_key_t{qb.first, TableauSegment::Output}); if (qb.second == Pauli::X || qb.second == Pauli::Y) xmat(r, c) = true; if (qb.second == Pauli::Z || qb.second == Pauli::Y) zmat(r, c) = true; } - Complex ph = row.first.coeff * row.second.coeff; - if (std::abs(ph - 1.) < EPS) - phase(r) = false; - else if (std::abs(ph + 1.) < EPS) - phase(r) = true; - else - throw std::invalid_argument( - "Phase coefficient of a Choi tableau row must be +-1"); + phase(r) = row.first.is_real_negative() ^ row.second.is_real_negative(); ++r; } tab_ = SymplecticTableau(xmat, zmat, phase); @@ -163,9 +156,7 @@ ChoiMixTableau::row_tensor_t ChoiMixTableau::stab_to_row_tensor( out_qpm.insert({col.first, p}); } } - return { - QubitPauliTensor(in_qpm), - QubitPauliTensor(out_qpm, stab.coeff ? 1. : -1.)}; + return {SpPauliStabiliser(in_qpm), SpPauliStabiliser(out_qpm, stab.coeff)}; } PauliStabiliser ChoiMixTableau::row_tensor_to_stab( @@ -174,12 +165,11 @@ PauliStabiliser ChoiMixTableau::row_tensor_to_stab( for (unsigned i = 0; i < col_index_.size(); ++i) { col_key_t qb = col_index_.right.at(i); if (qb.second == TableauSegment::Input) - ps.push_back(ten.first.string.get(qb.first)); + ps.push_back(ten.first.get(qb.first)); else - ps.push_back(ten.second.string.get(qb.first)); + ps.push_back(ten.second.get(qb.first)); } - return PauliStabiliser( - ps, std::abs(ten.first.coeff * ten.second.coeff - 1.) < EPS); + return PauliStabiliser(ps, (ten.first.coeff + ten.second.coeff) % 4); } ChoiMixTableau::row_tensor_t ChoiMixTableau::get_row(unsigned i) const { @@ -194,8 +184,8 @@ ChoiMixTableau::row_tensor_t ChoiMixTableau::get_row_product( result.first = result.first * row_i.first; result.second = result.second * row_i.second; } - result.second.coeff *= result.first.coeff; - result.first.coeff = 1.; + result.second.coeff = (result.first.coeff + result.second.coeff) % 4; + result.first.coeff = 0; return result; } @@ -389,14 +379,10 @@ void ChoiMixTableau::apply_gate( } void ChoiMixTableau::apply_pauli( - const QubitPauliTensor& pauli, unsigned half_pis, TableauSegment seg) { - if (std::abs(pauli.coeff - 1.) > EPS && std::abs(pauli.coeff + 1.) > EPS) - throw std::invalid_argument( - "In ChoiMixTableau::apply_pauli, can only rotate about a " - "QubitPauliTensor with coeff +-1"); + const SpPauliStabiliser& pauli, unsigned half_pis, TableauSegment seg) { PauliStabiliser ps; if (seg == TableauSegment::Input) { - QubitPauliTensor tr = pauli; + SpPauliStabiliser tr = pauli; tr.transpose(); ps = row_tensor_to_stab({tr, {}}); } else { diff --git a/tket/src/Clifford/SymplecticTableau.cpp b/tket/src/Clifford/SymplecticTableau.cpp index 49ac53d40c..45ba0011db 100644 --- a/tket/src/Clifford/SymplecticTableau.cpp +++ b/tket/src/Clifford/SymplecticTableau.cpp @@ -75,7 +75,7 @@ SymplecticTableau::SymplecticTableau( "Tableau must have the same number of columns in x and z components."); } -SymplecticTableau::SymplecticTableau(const PauliStabiliserList &rows) { +SymplecticTableau::SymplecticTableau(const PauliStabiliserVec &rows) { n_rows_ = rows.size(); if (n_rows_ == 0) n_qubits_ = 0; @@ -90,11 +90,11 @@ SymplecticTableau::SymplecticTableau(const PauliStabiliserList &rows) { throw std::invalid_argument( "Tableau must have the same number of qubits in each row."); for (unsigned q = 0; q < n_qubits_; ++q) { - const Pauli &p = stab.string[q]; + const Pauli &p = stab.get(q); xmat_(i, q) = (p == Pauli::X) || (p == Pauli::Y); zmat_(i, q) = (p == Pauli::Z) || (p == Pauli::Y); } - phase_(i) = !stab.coeff; + phase_(i) = stab.is_real_negative(); } } @@ -106,7 +106,7 @@ PauliStabiliser SymplecticTableau::get_pauli(unsigned i) const { for (unsigned q = 0; q < n_qubits_; ++q) { str[q] = BoolPauli{xmat_(i, q), zmat_(i, q)}.to_pauli(); } - return PauliStabiliser(str, !phase_(i)); + return PauliStabiliser(str, phase_(i) ? 2 : 0); } std::ostream &operator<<(std::ostream &os, const SymplecticTableau &tab) { @@ -288,7 +288,7 @@ void SymplecticTableau::apply_pauli_gadget( pauli_xrow(i) = (p == Pauli::X) || (p == Pauli::Y); pauli_zrow(i) = (p == Pauli::Z) || (p == Pauli::Y); } - bool phase = (!pauli.coeff) ^ (half_pis == 3); + bool phase = pauli.is_real_negative() ^ (half_pis == 3); for (unsigned i = 0; i < n_rows_; ++i) { bool anti = false; diff --git a/tket/src/Clifford/UnitaryTableau.cpp b/tket/src/Clifford/UnitaryTableau.cpp index 0b7a71d551..4f0527c949 100644 --- a/tket/src/Clifford/UnitaryTableau.cpp +++ b/tket/src/Clifford/UnitaryTableau.cpp @@ -81,40 +81,34 @@ UnitaryTableau::UnitaryTableau( UnitaryTableau::UnitaryTableau() : UnitaryTableau(0) {} -QubitPauliTensor UnitaryTableau::get_xrow(const Qubit& qb) const { +SpPauliStabiliser UnitaryTableau::get_xrow(const Qubit& qb) const { unsigned uq = qubits_.left.at(qb); PauliStabiliser stab = tab_.get_pauli(uq); - std::list qbs; + QubitPauliMap qpm; for (unsigned i = 0; i < qubits_.size(); ++i) { - qbs.push_back(qubits_.right.at(i)); + qpm.insert({qubits_.right.at(i), stab.get(i)}); } - std::list string = {stab.string.begin(), stab.string.end()}; - Complex coeff = 1.; - if (!stab.coeff) coeff *= -1.; - return QubitPauliTensor(QubitPauliString(qbs, string), coeff); + return SpPauliStabiliser(qpm, stab.coeff); } -QubitPauliTensor UnitaryTableau::get_zrow(const Qubit& qb) const { +SpPauliStabiliser UnitaryTableau::get_zrow(const Qubit& qb) const { unsigned uqb = qubits_.left.at(qb); PauliStabiliser stab = tab_.get_pauli(uqb + qubits_.size()); - std::list qbs; + QubitPauliMap qpm; for (unsigned i = 0; i < qubits_.size(); ++i) { - qbs.push_back(qubits_.right.at(i)); + qpm.insert({qubits_.right.at(i), stab.get(i)}); } - std::list string = {stab.string.begin(), stab.string.end()}; - Complex coeff = 1.; - if (!stab.coeff) coeff *= -1.; - return QubitPauliTensor(QubitPauliString(qbs, string), coeff); + return SpPauliStabiliser(qpm, stab.coeff); } -QubitPauliTensor UnitaryTableau::get_row_product( - const QubitPauliTensor& qpt) const { - QubitPauliTensor result(qpt.coeff); - for (const std::pair& p : qpt.string.map) { +SpPauliStabiliser UnitaryTableau::get_row_product( + const SpPauliStabiliser& qpt) const { + SpPauliStabiliser result({}, qpt.coeff); + for (const std::pair& p : qpt.string) { auto qks_it = qubits_.left.find(p.first); if (qks_it == qubits_.left.end()) { // Acts as identity on p.first - result = result * QubitPauliTensor(p.first, p.second); + result = result * SpPauliStabiliser(p.first, p.second); } else { switch (p.second) { case Pauli::I: { @@ -128,7 +122,7 @@ QubitPauliTensor UnitaryTableau::get_row_product( // Y = iXZ result = result * get_xrow(p.first); result = result * get_zrow(p.first); - result.coeff *= i_; + result.coeff += 1; break; } case Pauli::Z: { @@ -284,22 +278,18 @@ void UnitaryTableau::apply_gate_at_end(OpType type, const qubit_vector_t& qbs) { } void UnitaryTableau::apply_pauli_at_front( - const QubitPauliTensor& pauli, unsigned half_pis) { + const SpPauliStabiliser& pauli, unsigned half_pis) { return apply_pauli_at_end(get_row_product(pauli), half_pis); } void UnitaryTableau::apply_pauli_at_end( - const QubitPauliTensor& pauli, unsigned half_pis) { + const SpPauliStabiliser& pauli, unsigned half_pis) { std::vector string(qubits_.size(), Pauli::I); - for (const std::pair& pair : pauli.string.map) { + for (const std::pair& pair : pauli.string) { unsigned uqb = qubits_.left.at(pair.first); string.at(uqb) = pair.second; } - if (pauli.coeff != 1. && pauli.coeff != -1.) - throw std::domain_error( - "Can only apply Pauli gadgets with real unit coefficients to " - "UnitaryTableaux"); - tab_.apply_pauli_gadget({string, pauli.coeff == 1.}, half_pis); + tab_.apply_pauli_gadget(PauliStabiliser(string, pauli.coeff), half_pis); } UnitaryTableau UnitaryTableau::compose( @@ -311,7 +301,7 @@ UnitaryTableau UnitaryTableau::compose( UnitaryTableau result = UnitaryTableau({}); const unsigned nqb = qbs.size(); - std::vector rows; + std::vector rows; unsigned qir = 0; for (const Qubit& qi : qbs) { @@ -321,8 +311,8 @@ UnitaryTableau UnitaryTableau::compose( rows.push_back(second.get_xrow(qi)); } else { // Sum rows of second according to entries of first - QubitPauliTensor fxrow = first.get_xrow(qi); - QubitPauliTensor rxrow = second.get_row_product(fxrow); + SpPauliStabiliser fxrow = first.get_xrow(qi); + SpPauliStabiliser rxrow = second.get_row_product(fxrow); rows.push_back(rxrow); } @@ -338,22 +328,21 @@ UnitaryTableau UnitaryTableau::compose( rows.push_back(second.get_zrow(qi)); } else { // Sum rows of second according to entries of first - QubitPauliTensor fzrow = first.get_zrow(qi); - QubitPauliTensor rzrow = second.get_row_product(fzrow); + SpPauliStabiliser fzrow = first.get_zrow(qi); + SpPauliStabiliser rzrow = second.get_row_product(fzrow); rows.push_back(rzrow); } } // Combine row lists and convert to PauliStabilisers - PauliStabiliserList all_rows; - for (const QubitPauliTensor& row : rows) { - TKET_ASSERT(row.coeff == 1. || row.coeff == -1.); + PauliStabiliserVec all_rows; + for (const SpPauliStabiliser& row : rows) { std::vector ps(nqb, Pauli::I); - for (const std::pair& p : row.string.map) { + for (const std::pair& p : row.string) { unsigned q = result.qubits_.left.at(p.first); ps[q] = p.second; } - all_rows.push_back(PauliStabiliser(ps, row.coeff == 1.)); + all_rows.push_back(PauliStabiliser(ps, row.coeff)); } result.tab_ = SymplecticTableau(all_rows); @@ -409,10 +398,10 @@ UnitaryTableau UnitaryTableau::dagger() const { // Correct phases for (unsigned i = 0; i < nqb; ++i) { - QubitPauliTensor xr = dag.get_xrow(qubits_.right.at(i)); - dag.tab_.phase_(i) = get_row_product(xr).coeff == -1.; - QubitPauliTensor zr = dag.get_zrow(qubits_.right.at(i)); - dag.tab_.phase_(i + nqb) = get_row_product(zr).coeff == -1.; + SpPauliStabiliser xr = dag.get_xrow(qubits_.right.at(i)); + dag.tab_.phase_(i) = get_row_product(xr).is_real_negative(); + SpPauliStabiliser zr = dag.get_zrow(qubits_.right.at(i)); + dag.tab_.phase_(i + nqb) = get_row_product(zr).is_real_negative(); } return dag; @@ -510,16 +499,16 @@ UnitaryRevTableau::UnitaryRevTableau(const qubit_vector_t& qbs) : tab_(qbs) {} UnitaryRevTableau::UnitaryRevTableau() : tab_() {} -QubitPauliTensor UnitaryRevTableau::get_xrow(const Qubit& qb) const { +SpPauliStabiliser UnitaryRevTableau::get_xrow(const Qubit& qb) const { return tab_.get_xrow(qb); } -QubitPauliTensor UnitaryRevTableau::get_zrow(const Qubit& qb) const { +SpPauliStabiliser UnitaryRevTableau::get_zrow(const Qubit& qb) const { return tab_.get_zrow(qb); } -QubitPauliTensor UnitaryRevTableau::get_row_product( - const QubitPauliTensor& qpt) const { +SpPauliStabiliser UnitaryRevTableau::get_row_product( + const SpPauliStabiliser& qpt) const { return tab_.get_row_product(qpt); } @@ -528,19 +517,19 @@ std::set UnitaryRevTableau::get_qubits() const { } void UnitaryRevTableau::apply_S_at_front(const Qubit& qb) { - tab_.apply_pauli_at_end(QubitPauliTensor(qb, Pauli::Z), 3); + tab_.apply_pauli_at_end(SpPauliStabiliser(qb, Pauli::Z), 3); } void UnitaryRevTableau::apply_S_at_end(const Qubit& qb) { - tab_.apply_pauli_at_front(QubitPauliTensor(qb, Pauli::Z), 3); + tab_.apply_pauli_at_front(SpPauliStabiliser(qb, Pauli::Z), 3); } void UnitaryRevTableau::apply_V_at_front(const Qubit& qb) { - tab_.apply_pauli_at_end(QubitPauliTensor(qb, Pauli::X), 3); + tab_.apply_pauli_at_end(SpPauliStabiliser(qb, Pauli::X), 3); } void UnitaryRevTableau::apply_V_at_end(const Qubit& qb) { - tab_.apply_pauli_at_front(QubitPauliTensor(qb, Pauli::X), 3); + tab_.apply_pauli_at_front(SpPauliStabiliser(qb, Pauli::X), 3); } void UnitaryRevTableau::apply_CX_at_front( @@ -566,12 +555,12 @@ void UnitaryRevTableau::apply_gate_at_end( } void UnitaryRevTableau::apply_pauli_at_front( - const QubitPauliTensor& pauli, unsigned half_pis) { + const SpPauliStabiliser& pauli, unsigned half_pis) { tab_.apply_pauli_at_end(pauli, 4 - (half_pis % 4)); } void UnitaryRevTableau::apply_pauli_at_end( - const QubitPauliTensor& pauli, unsigned half_pis) { + const SpPauliStabiliser& pauli, unsigned half_pis) { tab_.apply_pauli_at_front(pauli, 4 - (half_pis % 4)); } diff --git a/tket/src/Converters/ChoiMixTableauConverters.cpp b/tket/src/Converters/ChoiMixTableauConverters.cpp index bf124220c0..5a57e16cc8 100644 --- a/tket/src/Converters/ChoiMixTableauConverters.cpp +++ b/tket/src/Converters/ChoiMixTableauConverters.cpp @@ -101,16 +101,16 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { boost::bimap matched_qubits; // Call diagonalisation methods to diagonalise post-selected subspace - std::list> to_diag; + std::list to_diag; for (unsigned r = tab.get_n_rows(); r > 0;) { --r; ChoiMixTableau::row_tensor_t rten = tab.get_row(r); - if (rten.second.string.map.size() != 0) { + if (rten.second.size() != 0) { // Reached the rows with non-empty output segment break; } // Else, we add the row to the subspace - to_diag.push_back({rten.first, 1.}); + to_diag.push_back(rten.first); } unsigned post_selected_size = to_diag.size(); std::set diag_ins{input_qubits.begin(), input_qubits.end()}; @@ -199,8 +199,7 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { // computing the minimum distance of a code", 1997). Just settle on using // the first row for now, reducing the input and output to a single qubit ChoiMixTableau::row_tensor_t row_paulis = tab.get_row(*x_row); - for (const std::pair& p : - row_paulis.second.string.map) { + for (const std::pair& p : row_paulis.second.string) { if (matched_qubits.right.find(p.first) == matched_qubits.right.end()) { out_qb = p.first; matched_qubits.insert({in_qb, *out_qb}); @@ -209,13 +208,12 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { } // Reduce input string to just X_in_qb - if (row_paulis.first.string.get(in_qb) == Pauli::Y) { + if (row_paulis.first.get(in_qb) == Pauli::Y) { // If it is a Y, extract an Sdg gate so the Pauli is exactly X in_circ.add_op(OpType::Sdg, {in_qb}); tab.apply_S(in_qb, ChoiMixTableau::TableauSegment::Input); } - for (const std::pair& qbp : - row_paulis.first.string.map) { + for (const std::pair& qbp : row_paulis.first.string) { if (qbp.first == in_qb) continue; // Extract an entangling gate to eliminate the qubit switch (qbp.second) { @@ -246,11 +244,11 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { } // And then the same for X_out_qb - if (row_paulis.second.string.get(*out_qb) == Pauli::Y) { + if (row_paulis.second.get(*out_qb) == Pauli::Y) { // If it is a Y, extract an Sdg gate so the Pauli is exactly X out_circ_tp.add_op(OpType::Sdg, {*out_qb}); tab.apply_S(*out_qb, ChoiMixTableau::TableauSegment::Output); - } else if (row_paulis.second.string.get(*out_qb) == Pauli::Z) { + } else if (row_paulis.second.get(*out_qb) == Pauli::Z) { // If it is a Z, extract an Vdg and Sdg gate so the Pauli is exactly X out_circ_tp.add_op(OpType::Vdg, {*out_qb}); out_circ_tp.add_op(OpType::Sdg, {*out_qb}); @@ -258,7 +256,7 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { tab.apply_S(*out_qb, ChoiMixTableau::TableauSegment::Output); } for (const std::pair& qbp : - row_paulis.second.string.map) { + row_paulis.second.string) { if (qbp.first == *out_qb) continue; // Extract an entangling gate to eliminate the qubit switch (qbp.second) { @@ -307,7 +305,7 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { ChoiMixTableau::row_tensor_t row_paulis = tab.get_row(*z_row); if (!x_row) { for (const std::pair& p : - row_paulis.second.string.map) { + row_paulis.second.string) { if (matched_qubits.right.find(p.first) == matched_qubits.right.end()) { out_qb = p.first; @@ -322,8 +320,7 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { // row would have been identified as x_row instead of Z row, and if // another row was already chosen as x_row then canonical gaussian form // would imply all other rows do not contain X_in_qb or Y_in_qb - for (const std::pair& qbp : - row_paulis.first.string.map) { + for (const std::pair& qbp : row_paulis.first.string) { if (qbp.first == in_qb) continue; // Extract an entangling gate to eliminate the qubit switch (qbp.second) { @@ -357,11 +354,11 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { } // And then reduce output string to just Z_out_qb - if (row_paulis.second.string.get(*out_qb) == Pauli::Y) { + if (row_paulis.second.get(*out_qb) == Pauli::Y) { // If it is a Y, extract a Vdg gate so the Pauli is exactly Z out_circ_tp.add_op(OpType::Vdg, {*out_qb}); tab.apply_V(*out_qb, ChoiMixTableau::TableauSegment::Output); - } else if (row_paulis.second.string.get(*out_qb) == Pauli::X) { + } else if (row_paulis.second.get(*out_qb) == Pauli::X) { // If it is an X, extract an Sdg and Vdg gate so the Pauli is exactly Z // We do not need to care about messing up the X row here since if we // solved an X row then this row can't also have X by commutativity @@ -371,7 +368,7 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { tab.apply_V(*out_qb, ChoiMixTableau::TableauSegment::Output); } for (const std::pair& qbp : - row_paulis.second.string.map) { + row_paulis.second.string) { if (qbp.first == *out_qb) continue; // Extract an entangling gate to eliminate the qubit switch (qbp.second) { @@ -424,7 +421,7 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { while (out_stabs < tab.get_n_rows()) { ChoiMixTableau::row_tensor_t rten = tab.get_row(tab.get_n_rows() - 1 - out_stabs); - if (rten.first.string.map.size() != 0) { + if (rten.first.size() != 0) { // Reached the rows with non-empty input segment break; } @@ -485,8 +482,7 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { ChoiMixTableau::row_tensor_t row_paulis = tab.get_row(tab.get_n_rows() - out_stabs + r); - for (const std::pair& qbp : - row_paulis.second.string.map) { + for (const std::pair& qbp : row_paulis.second.string) { if (matched_qubits.right.find(qbp.first) == matched_qubits.right.end()) continue; // Alternate point is guaranteed to be unmatched, so always needs an @@ -576,7 +572,7 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { to_diag.clear(); for (unsigned r = 0; r < tab.get_n_rows(); ++r) { ChoiMixTableau::row_tensor_t rten = tab.get_row(r); - to_diag.push_back({rten.second, 1.}); + to_diag.push_back(rten.second); } std::set diag_outs; for (const Qubit& out : output_qubits) { @@ -614,14 +610,14 @@ std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { Circuit out_circ(output_qubits, {}); for (unsigned r = 0; r < tab.get_n_rows(); ++r) { ChoiMixTableau::row_tensor_t row = tab.get_row(r); - if (row.first.string.map.size() != 0 || row.second.string.map.size() != 1 || - row.second.string.map.begin()->second != Pauli::Z) + if (row.first.size() != 0 || row.second.size() != 1 || + row.second.string.begin()->second != Pauli::Z) throw std::logic_error( "Unexpected error during zero initialisation in ChoiMixTableau " "synthesis"); - Qubit initialised_qb = row.second.string.map.begin()->first; + Qubit initialised_qb = row.second.string.begin()->first; out_circ.qubit_create(initialised_qb); - if (row.second.coeff == -1.) { + if (row.second.is_real_negative()) { out_circ.add_op(OpType::X, {initialised_qb}); } zero_initialised.insert(initialised_qb); diff --git a/tket/src/Converters/PauliGadget.cpp b/tket/src/Converters/PauliGadget.cpp index 00ef19713e..451003776c 100644 --- a/tket/src/Converters/PauliGadget.cpp +++ b/tket/src/Converters/PauliGadget.cpp @@ -20,119 +20,88 @@ namespace tket { -Expr pauli_angle_convert_or_throw(Complex pauliCoeff, const Expr &angle) { - if (pauliCoeff == -1.) { - return -1 * angle; - } - if (pauliCoeff != 1.) { - throw CircuitInvalidity("Pauli coefficient must be +/- 1"); - } - return angle; -} - void append_single_pauli_gadget( - Circuit &circ, const QubitPauliTensor &pauli, Expr angle, - CXConfigType cx_config) { - auto converted_angle = pauli_angle_convert_or_throw(pauli.coeff, angle); - + Circuit &circ, const SpSymPauliTensor &pauli, CXConfigType cx_config) { std::vector string; unit_map_t mapping; unsigned i = 0; - for (const std::pair &term : pauli.string.map) { + for (const std::pair &term : pauli.string) { string.push_back(term.second); mapping.insert({Qubit(q_default_reg(), i), term.first}); i++; } - Circuit gadget = pauli_gadget(string, converted_angle, cx_config); + Circuit gadget = pauli_gadget(string, pauli.coeff, cx_config); circ.append_with_map(gadget, mapping); } void append_single_pauli_gadget_as_pauli_exp_box( - Circuit &circ, const QubitPauliTensor &pauli, Expr angle, - CXConfigType cx_config) { - auto converted_angle = pauli_angle_convert_or_throw(pauli.coeff, angle); - + Circuit &circ, const SpSymPauliTensor &pauli, CXConfigType cx_config) { std::vector string; std::vector mapping; - for (const std::pair &term : pauli.string.map) { + for (const std::pair &term : pauli.string) { string.push_back(term.second); mapping.push_back(term.first); } - PauliExpBox box(string, converted_angle, cx_config); + PauliExpBox box(SymPauliTensor(string, pauli.coeff), cx_config); circ.add_box(box, mapping); } void append_pauli_gadget_pair_as_box( - Circuit &circ, const QubitPauliTensor &pauli0, Expr angle0, - const QubitPauliTensor &pauli1, Expr angle1, CXConfigType cx_config) { - auto converted_angle0 = pauli_angle_convert_or_throw(pauli0.coeff, angle0); - auto converted_angle1 = pauli_angle_convert_or_throw(pauli1.coeff, angle1); - + Circuit &circ, const SpSymPauliTensor &pauli0, + const SpSymPauliTensor &pauli1, CXConfigType cx_config) { std::vector mapping; std::vector paulis0; std::vector paulis1; - - QubitPauliString pauli0_string(pauli0.string); - QubitPauliString pauli1_string(pauli1.string); - - // remove any identities - pauli0_string.compress(); - pauli1_string.compress(); - + QubitPauliMap p1map = pauli1.string; // add paulis for qubits in pauli0_string - for (const std::pair &term : pauli0_string.map) { + for (const std::pair &term : pauli0.string) { mapping.push_back(term.first); paulis0.push_back(term.second); - auto found = pauli1_string.map.find(term.first); - if (found == pauli1_string.map.end()) { + auto found = p1map.find(term.first); + if (found == p1map.end()) { paulis1.push_back(Pauli::I); } else { paulis1.push_back(found->second); - pauli1_string.map.erase(found); + p1map.erase(found); } } // add paulis for qubits in pauli1_string that weren't in pauli0_string - for (const std::pair &term : pauli1_string.map) { + for (const std::pair &term : p1map) { mapping.push_back(term.first); paulis1.push_back(term.second); paulis0.push_back(Pauli::I); // If pauli0_string contained qubit, would // have been handled above } PauliExpPairBox box( - paulis0, converted_angle0, paulis1, converted_angle1, cx_config); + SymPauliTensor(paulis0, pauli0.coeff), + SymPauliTensor(paulis1, pauli1.coeff), cx_config); circ.add_box(box, mapping); } void append_commuting_pauli_gadget_set_as_box( - Circuit &circ, const std::list> &gadgets, + Circuit &circ, const std::list &gadgets, CXConfigType cx_config) { - // Translate to QubitPauliTensors to vectors of Paulis of same length + // Translate SpSymPauliTensors to vectors of Paulis of same length // Preserves ordering of qubits std::set all_qubits; - for (const auto &gadget : gadgets) { - for (const auto &qubit_pauli : gadget.first.string.map) { + for (const SpSymPauliTensor &gadget : gadgets) { + for (const std::pair &qubit_pauli : gadget.string) { all_qubits.insert(qubit_pauli.first); } } std::vector mapping; - for (const auto &qubit : all_qubits) { + for (const Qubit &qubit : all_qubits) { mapping.push_back(qubit); } - std::vector, Expr>> pauli_gadgets; - for (const auto &gadget : gadgets) { - auto &new_gadget = pauli_gadgets.emplace_back(std::make_pair( - std::vector(), - pauli_angle_convert_or_throw(gadget.first.coeff, gadget.second))); - for (const auto &qubit : mapping) { - auto found = gadget.first.string.map.find(qubit); - if (found == gadget.first.string.map.end()) { - new_gadget.first.push_back(Pauli::I); - } else { - new_gadget.first.push_back(found->second); - } + std::vector pauli_gadgets; + for (const SpSymPauliTensor &gadget : gadgets) { + SymPauliTensor &new_gadget = + pauli_gadgets.emplace_back(DensePauliMap{}, gadget.coeff); + for (const Qubit &qubit : mapping) { + new_gadget.string.push_back(gadget.get(qubit)); } } @@ -141,8 +110,8 @@ void append_commuting_pauli_gadget_set_as_box( } static void reduce_shared_qs_by_CX_snake( - Circuit &circ, std::set &match, QubitPauliTensor &pauli0, - QubitPauliTensor &pauli1) { + Circuit &circ, std::set &match, SpSymPauliTensor &pauli0, + SpSymPauliTensor &pauli1) { unsigned match_size = match.size(); while (match_size > 1) { // We allow one match left over auto it = --match.end(); @@ -151,30 +120,30 @@ static void reduce_shared_qs_by_CX_snake( Qubit helper = *match.rbegin(); // extend CX snake circ.add_op(OpType::CX, {to_eliminate, helper}); - pauli0.string.map.erase(to_eliminate); - pauli1.string.map.erase(to_eliminate); + pauli0.string.erase(to_eliminate); + pauli1.string.erase(to_eliminate); match_size--; } } static void reduce_shared_qs_by_CX_star( - Circuit &circ, std::set &match, QubitPauliTensor &pauli0, - QubitPauliTensor &pauli1) { + Circuit &circ, std::set &match, SpSymPauliTensor &pauli0, + SpSymPauliTensor &pauli1) { std::set::iterator iter = match.begin(); for (std::set::iterator next = match.begin(); match.size() > 1; iter = next) { ++next; Qubit to_eliminate = *iter; circ.add_op(OpType::CX, {to_eliminate, *match.rbegin()}); - pauli0.string.map.erase(to_eliminate); - pauli1.string.map.erase(to_eliminate); + pauli0.string.erase(to_eliminate); + pauli1.string.erase(to_eliminate); match.erase(iter); } } static void reduce_shared_qs_by_CX_tree( - Circuit &circ, std::set &match, QubitPauliTensor &pauli0, - QubitPauliTensor &pauli1) { + Circuit &circ, std::set &match, SpSymPauliTensor &pauli0, + SpSymPauliTensor &pauli1) { while (match.size() > 1) { std::set remaining; std::set::iterator it = match.begin(); @@ -186,8 +155,8 @@ static void reduce_shared_qs_by_CX_tree( Qubit to_eliminate = *it; it++; circ.add_op(OpType::CX, {to_eliminate, maintained}); - pauli0.string.map.erase(to_eliminate); - pauli1.string.map.erase(to_eliminate); + pauli0.string.erase(to_eliminate); + pauli1.string.erase(to_eliminate); } } match = remaining; @@ -195,8 +164,8 @@ static void reduce_shared_qs_by_CX_tree( } static void reduce_shared_qs_by_CX_multiqgate( - Circuit &circ, std::set &match, QubitPauliTensor &pauli0, - QubitPauliTensor &pauli1) { + Circuit &circ, std::set &match, SpSymPauliTensor &pauli0, + SpSymPauliTensor &pauli1) { if (match.size() <= 1) { return; } @@ -208,21 +177,21 @@ static void reduce_shared_qs_by_CX_multiqgate( // use CX Qubit to_eliminate = *iter; match.erase(iter); - pauli0.string.map.erase(to_eliminate); - pauli1.string.map.erase(to_eliminate); + pauli0.string.erase(to_eliminate); + pauli1.string.erase(to_eliminate); circ.add_op(OpType::CX, {to_eliminate, target}); } else { // use XXPhase3 Qubit to_eliminate1 = *iter; match.erase(iter++); - pauli0.string.map.erase(to_eliminate1); - pauli1.string.map.erase(to_eliminate1); + pauli0.string.erase(to_eliminate1); + pauli1.string.erase(to_eliminate1); Qubit to_eliminate2 = *iter; match.erase(iter); - pauli0.string.map.erase(to_eliminate2); - pauli1.string.map.erase(to_eliminate2); + pauli0.string.erase(to_eliminate2); + pauli1.string.erase(to_eliminate2); circ.add_op(OpType::H, {to_eliminate1}); circ.add_op(OpType::H, {to_eliminate2}); @@ -234,8 +203,8 @@ static void reduce_shared_qs_by_CX_multiqgate( } void append_pauli_gadget_pair( - Circuit &circ, QubitPauliTensor pauli0, Expr angle0, - QubitPauliTensor pauli1, Expr angle1, CXConfigType cx_config) { + Circuit &circ, SpSymPauliTensor pauli0, SpSymPauliTensor pauli1, + CXConfigType cx_config) { /* * Cowtan, Dilkes, Duncan, Simmons, Sivarajah: Phase Gadget Synthesis for * Shallow Circuits, Lemma 4.9 @@ -274,16 +243,16 @@ void append_pauli_gadget_pair( * CXs */ for (const Qubit &qb : match) { - switch (pauli0.string.map.at(qb)) { + switch (pauli0.get(qb)) { case Pauli::X: u.add_op(OpType::H, {qb}); - pauli0.string.map.at(qb) = Pauli::Z; - pauli1.string.map.at(qb) = Pauli::Z; + pauli0.set(qb, Pauli::Z); + pauli1.set(qb, Pauli::Z); break; case Pauli::Y: u.add_op(OpType::V, {qb}); - pauli0.string.map.at(qb) = Pauli::Z; - pauli1.string.map.at(qb) = Pauli::Z; + pauli0.set(qb, Pauli::Z); + pauli1.set(qb, Pauli::Z); break; default: break; @@ -307,15 +276,16 @@ void append_pauli_gadget_pair( break; } default: - throw UnknownCXConfigType(); + throw std::logic_error( + "Unknown CXConfigType received when decomposing gadget."); } /* * Step 2.ii: Convert mismatches to Z in pauli0 and X in pauli1 */ for (const Qubit &qb : mismatch) { - switch (pauli0.string.map.at(qb)) { + switch (pauli0.get(qb)) { case Pauli::X: { - switch (pauli1.string.map.at(qb)) { + switch (pauli1.get(qb)) { case Pauli::Y: u.add_op(OpType::Sdg, {qb}); u.add_op(OpType::Vdg, {qb}); @@ -329,7 +299,7 @@ void append_pauli_gadget_pair( break; } case Pauli::Y: { - switch (pauli1.string.map.at(qb)) { + switch (pauli1.get(qb)) { case Pauli::X: u.add_op(OpType::V, {qb}); break; @@ -343,13 +313,12 @@ void append_pauli_gadget_pair( break; } default: { // Necessarily Z - if (pauli1.string.map.at(qb) == Pauli::Y) - u.add_op(OpType::Sdg, {qb}); + if (pauli1.get(qb) == Pauli::Y) u.add_op(OpType::Sdg, {qb}); // No need to act if already X } } - pauli0.string.map.at(qb) = Pauli::Z; - pauli1.string.map.at(qb) = Pauli::X; + pauli0.set(qb, Pauli::Z); + pauli1.set(qb, Pauli::X); } /* @@ -366,8 +335,8 @@ void append_pauli_gadget_pair( u.add_op(OpType::S, {mismatch_used}); u.add_op(OpType::CX, {last_match, mismatch_used}); u.add_op(OpType::Sdg, {mismatch_used}); - pauli0.string.map.erase(last_match); - pauli1.string.map.erase(last_match); + pauli0.string.erase(last_match); + pauli1.string.erase(last_match); } else { just0.insert(last_match); just1.insert(last_match); @@ -388,8 +357,8 @@ void append_pauli_gadget_pair( } else { Qubit x_in_1 = *mis_it; u.add_op(OpType::CX, {x_in_1, z_in_0}); - pauli0.string.map.erase(x_in_1); - pauli1.string.map.erase(z_in_0); + pauli0.string.erase(x_in_1); + pauli1.string.erase(z_in_0); just1.insert(x_in_1); mis_it++; } @@ -398,11 +367,15 @@ void append_pauli_gadget_pair( /* * Step 3: Combine circuits to give final result */ - append_single_pauli_gadget(v, pauli0, angle0); - append_single_pauli_gadget(v, pauli1, angle1); + append_single_pauli_gadget(v, pauli0); + append_single_pauli_gadget(v, pauli1); + // ConjugationBox components must be in the default register + qubit_vector_t all_qubits = u.all_qubits(); + u.flatten_registers(); + v.flatten_registers(); ConjugationBox cjbox( std::make_shared(u), std::make_shared(v)); - circ.add_box(cjbox, u.all_qubits()); + circ.add_box(cjbox, all_qubits); } } // namespace tket diff --git a/tket/src/Converters/PauliGraphConverters.cpp b/tket/src/Converters/PauliGraphConverters.cpp index 8f30dc9a8b..8f345432eb 100644 --- a/tket/src/Converters/PauliGraphConverters.cpp +++ b/tket/src/Converters/PauliGraphConverters.cpp @@ -39,7 +39,7 @@ PauliGraph circuit_to_pauli_graph(const Circuit &circ) { QubitPauliMap qpm; for (unsigned i = 0; i != args.size(); ++i) qpm.insert({Qubit(args[i]), paulis[i]}); - QubitPauliTensor qpt = pg.cliff_.get_row_product(QubitPauliTensor(qpm)); + SpPauliStabiliser qpt = pg.cliff_.get_row_product(SpPauliStabiliser(qpm)); pg.apply_pauli_gadget_at_end(qpt, phase); } else throw BadOpType( @@ -60,9 +60,10 @@ Circuit pauli_graph_to_pauli_exp_box_circuit_individually( circ.add_bit(b); } for (const PauliVert &vert : pg.vertices_in_order()) { - const QubitPauliTensor &pauli = pg.graph_[vert].tensor_; + const SpPauliStabiliser &pauli = pg.graph_[vert].tensor_; const Expr &angle = pg.graph_[vert].angle_; - append_single_pauli_gadget_as_pauli_exp_box(circ, pauli, angle, cx_config); + append_single_pauli_gadget_as_pauli_exp_box( + circ, SpSymPauliTensor(pauli) * SpSymPauliTensor({}, angle), cx_config); } Circuit cliff_circuit = unitary_rev_tableau_to_circuit(pg.cliff_); circ.append(cliff_circuit); @@ -85,22 +86,21 @@ Circuit pauli_graph_to_pauli_exp_box_circuit_pairwise( auto it = vertices.begin(); while (it != vertices.end()) { PauliVert vert0 = *it; - const QubitPauliTensor &pauli0 = pg.graph_[vert0].tensor_; + const SpPauliStabiliser &pauli0 = pg.graph_[vert0].tensor_; const Expr &angle0 = pg.graph_[vert0].angle_; ++it; if (it == vertices.end()) { - // append_single_pauli_gadget(circ, pauli0, angle0, cx_config); append_single_pauli_gadget_as_pauli_exp_box( - circ, pauli0, angle0, cx_config); + circ, SpSymPauliTensor(pauli0) * SpSymPauliTensor({}, angle0), + cx_config); } else { PauliVert vert1 = *it; - const QubitPauliTensor &pauli1 = pg.graph_[vert1].tensor_; + const SpPauliStabiliser &pauli1 = pg.graph_[vert1].tensor_; const Expr &angle1 = pg.graph_[vert1].angle_; ++it; append_pauli_gadget_pair_as_box( - circ, pauli0, angle0, pauli1, angle1, cx_config); - // append_pauli_gadget_pair(circ, pauli0, angle0, pauli1, angle1, - // cx_config); + circ, SpSymPauliTensor(pauli0) * SpSymPauliTensor({}, angle0), + SpSymPauliTensor(pauli1) * SpSymPauliTensor({}, angle1), cx_config); } } Circuit cliff_circuit = unitary_rev_tableau_to_circuit(pg.cliff_); @@ -129,41 +129,37 @@ Circuit pauli_graph_to_pauli_exp_box_circuit_sets( while (it != vertices.end()) { const PauliGadgetProperties &pgp = pg.graph_[*it]; QubitOperator gadget_map; - gadget_map[pgp.tensor_] = pgp.angle_; + insert_into_gadget_map(gadget_map, pgp); ++it; while (it != vertices.end()) { const PauliGadgetProperties &pauli_gadget = pg.graph_[*it]; - QubitOperator::iterator pgs_iter = gadget_map.find(pauli_gadget.tensor_); - if (pgs_iter != gadget_map.end()) { - insert_into_gadget_map(gadget_map, pauli_gadget); - } else { - bool commutes_with_all = true; - for (const std::pair &pv : gadget_map) { - if (!pauli_gadget.tensor_.commutes_with(pv.first)) { - commutes_with_all = false; - break; - } + bool commutes_with_all = true; + for (const std::pair &pv : gadget_map) { + if (!pauli_gadget.tensor_.commutes_with(pv.first)) { + commutes_with_all = false; + break; } - if (!commutes_with_all) break; - insert_into_gadget_map(gadget_map, pauli_gadget); } + if (!commutes_with_all) break; + insert_into_gadget_map(gadget_map, pauli_gadget); ++it; } if (gadget_map.size() == 1) { - const std::pair &pgp0 = *gadget_map.begin(); + const std::pair &pgp0 = *gadget_map.begin(); append_single_pauli_gadget_as_pauli_exp_box( - circ, pgp0.first, pgp0.second, cx_config); + circ, SpSymPauliTensor(pgp0.first.string, pgp0.second), cx_config); } else if (gadget_map.size() == 2) { - const std::pair &pgp0 = *gadget_map.begin(); - const std::pair &pgp1 = + const std::pair &pgp0 = *gadget_map.begin(); + const std::pair &pgp1 = *(++gadget_map.begin()); append_pauli_gadget_pair_as_box( - circ, pgp0.first, pgp0.second, pgp1.first, pgp1.second, cx_config); + circ, SpSymPauliTensor(pgp0.first.string, pgp0.second), + SpSymPauliTensor(pgp1.first.string, pgp1.second), cx_config); } else { - std::list> gadgets; - for (const std::pair &qps_pair : - gadget_map) { - gadgets.push_back(qps_pair); + std::list gadgets; + for (const std::pair &qps_pair : gadget_map) { + gadgets.push_back( + SpSymPauliTensor(qps_pair.first.string, qps_pair.second)); } append_commuting_pauli_gadget_set_as_box(circ, gadgets, cx_config); } diff --git a/tket/src/Diagonalisation/DiagUtils.cpp b/tket/src/Diagonalisation/DiagUtils.cpp index 3177d34675..70d5a5962d 100644 --- a/tket/src/Diagonalisation/DiagUtils.cpp +++ b/tket/src/Diagonalisation/DiagUtils.cpp @@ -18,14 +18,14 @@ namespace tket { void insert_into_gadget_map( QubitOperator &gadget_map, const PauliGadgetProperties &pgp) { - QubitOperator::iterator iter = gadget_map.find(pgp.tensor_); + SpSymPauliTensor gadget(pgp.tensor_); + gadget.coeff *= pgp.angle_; + SpPauliString ps(gadget); + QubitOperator::iterator iter = gadget_map.find(ps); if (iter == gadget_map.end()) - gadget_map[pgp.tensor_] = pgp.angle_; + gadget_map[ps] = gadget.coeff; else { - QubitPauliTensor string_to_insert = pgp.tensor_ * iter->first; - Expr ang_to_insert = pgp.angle_ * iter->second; - gadget_map.erase(iter); - gadget_map[string_to_insert] = ang_to_insert; + iter->second += gadget.coeff; } } diff --git a/tket/src/Diagonalisation/Diagonalisation.cpp b/tket/src/Diagonalisation/Diagonalisation.cpp index a2e30ffb33..354f522d3d 100644 --- a/tket/src/Diagonalisation/Diagonalisation.cpp +++ b/tket/src/Diagonalisation/Diagonalisation.cpp @@ -23,8 +23,8 @@ namespace tket { void check_easy_diagonalise( - std::list> &gadgets, - std::set &qubits, Circuit &circ) { + std::list &gadgets, std::set &qubits, + Circuit &circ) { Conjugations conjugations; std::set::iterator qb_iter = qubits.begin(); for (std::set::iterator next = qb_iter; qb_iter != qubits.end(); @@ -32,11 +32,8 @@ void check_easy_diagonalise( ++next; Pauli p1 = Pauli::I; bool remove_qb = true; - for (const std::pair &pgp : gadgets) { - std::map::const_iterator map_iter = - pgp.first.string.map.find(*qb_iter); - if (map_iter == pgp.first.string.map.end()) continue; - Pauli p2 = map_iter->second; + for (const SpSymPauliTensor &gadget : gadgets) { + Pauli p2 = gadget.get(*qb_iter); if (p2 == Pauli::I) continue; if (p1 == Pauli::I) { p1 = p2; @@ -60,21 +57,20 @@ void check_easy_diagonalise( case Pauli::Z: break; default: - throw UnknownPauli(); + throw std::logic_error( + "Unknown Pauli encountered in checking diagonalisation"); } qubits.erase(qb_iter); } } - for (std::list>::iterator iter = - gadgets.begin(); - iter != gadgets.end(); ++iter) { - apply_conjugations(iter->first, conjugations); + for (SpSymPauliTensor &gadget : gadgets) { + apply_conjugations(gadget, conjugations); } } std::optional> check_pair_compatibility( const Qubit &qb1, const Qubit &qb2, - const std::list> &gadgets) { + const std::list &gadgets) { if (qb1 == qb2) return std::nullopt; /* Do exhaustive search for a Pauli A and Pauli B that @@ -83,20 +79,9 @@ std::optional> check_pair_compatibility( for (Pauli pauli1 : paulis) { for (Pauli pauli2 : paulis) { bool found_pair = true; - for (const std::pair &pgp : gadgets) { - Pauli inner_p_1; - QubitPauliMap::const_iterator iter1 = pgp.first.string.map.find(qb1); - if (iter1 == pgp.first.string.map.end()) - inner_p_1 = Pauli::I; - else - inner_p_1 = iter1->second; - - Pauli inner_p_2; - QubitPauliMap::const_iterator iter2 = pgp.first.string.map.find(qb2); - if (iter2 == pgp.first.string.map.end()) - inner_p_2 = Pauli::I; - else - inner_p_2 = iter2->second; + for (const SpSymPauliTensor &gadget : gadgets) { + Pauli inner_p_1 = gadget.get(qb1); + Pauli inner_p_2 = gadget.get(qb2); if (inner_p_1 == Pauli::I || inner_p_1 == pauli1) { if (!(inner_p_2 == Pauli::I || inner_p_2 == pauli2)) { @@ -120,23 +105,18 @@ std::optional> check_pair_compatibility( } void greedy_diagonalise( - const std::list> &gadgets, - std::set &qubits, Conjugations &conjugations, Circuit &circ, - CXConfigType cx_config) { + const std::list &gadgets, std::set &qubits, + Conjugations &conjugations, Circuit &circ, CXConfigType cx_config) { unsigned total_counter = UINT_MAX; QubitPauliMap to_diag; - for (std::list>::const_iterator pgp_iter = - gadgets.begin(); - pgp_iter != gadgets.end(); ++pgp_iter) { + for (const SpSymPauliTensor &gadget : gadgets) { unsigned support_counter = 0; QubitPauliMap to_diag_candidates; for (const Qubit &qb : qubits) { - QubitPauliMap::const_iterator pauli_iter = - pgp_iter->first.string.map.find(qb); - if (pauli_iter == pgp_iter->first.string.map.end()) continue; - if (pauli_iter->second != Pauli::I) { + Pauli p = gadget.get(qb); + if (p != Pauli::I) { ++support_counter; - to_diag_candidates.insert(*pauli_iter); + to_diag_candidates.insert({qb, p}); } } if (support_counter < total_counter && support_counter > 1) { @@ -147,11 +127,9 @@ void greedy_diagonalise( if (to_diag.empty()) { throw std::logic_error("Brute Force Diagonalise can't find a candidate!"); } - for (QubitPauliMap::iterator qb_p_iter = to_diag.begin(); - qb_p_iter != to_diag.end(); ++qb_p_iter) { - const Qubit &qb = qb_p_iter->first; - Pauli p = qb_p_iter->second; - switch (p) { + for (const std::pair &qp : to_diag) { + const Qubit &qb = qp.first; + switch (qp.second) { case Pauli::X: { conjugations.push_back({OpType::H, {qb}}); circ.add_op(OpType::H, {qb}); @@ -167,7 +145,7 @@ void greedy_diagonalise( } case Pauli::I: default: - throw UnknownPauli(); + throw std::logic_error("Unknown Pauli in greedy diagonalisation."); } } qubit_vector_t diag_qubits; @@ -238,15 +216,15 @@ void greedy_diagonalise( break; } default: - throw UnknownCXConfigType(); + throw std::logic_error("Unknown CXConfigType in greedy diagonalisation."); } qubits.erase(first_qb); } /* Diagonalise a set of Pauli Gadgets simultaneously using Cliffords*/ Circuit mutual_diagonalise( - std::list> &gadgets, - std::set qubits, CXConfigType cx_config) { + std::list &gadgets, std::set qubits, + CXConfigType cx_config) { Circuit cliff_circ; for (const Qubit &qb : qubits) { cliff_circ.add_qubit(qb); @@ -292,7 +270,7 @@ Circuit mutual_diagonalise( } case Pauli::I: default: - throw UnknownPauli(); + throw std::logic_error("Unknown Pauli in mutual diagonalisation."); } switch (p2) { case Pauli::X: { @@ -310,7 +288,7 @@ Circuit mutual_diagonalise( } case Pauli::I: default: - throw UnknownPauli(); + throw std::logic_error("Unknown Pauli in mutual diagonalisation."); } conjugations.push_back({OpType::CX, {qb_a, qb_b}}); cliff_circ.add_op(OpType::CX, {qb_a, qb_b}); @@ -321,10 +299,8 @@ Circuit mutual_diagonalise( if (!found_match) { greedy_diagonalise(gadgets, qubits, conjugations, cliff_circ, cx_config); } - for (std::list>::iterator iter = - gadgets.begin(); - iter != gadgets.end(); ++iter) { - apply_conjugations(iter->first, conjugations); + for (SpSymPauliTensor &gadget : gadgets) { + apply_conjugations(gadget, conjugations); } // we may have made some easy-to-remove qubits check_easy_diagonalise(gadgets, qubits, cliff_circ); @@ -333,7 +309,8 @@ Circuit mutual_diagonalise( } void apply_conjugations( - QubitPauliTensor &qps, const Conjugations &conjugations) { + SpSymPauliTensor &qps, const Conjugations &conjugations) { + SpPauliStabiliser stab(qps.string); for (const auto &optype_qubit_pair : conjugations) { OpType ot = optype_qubit_pair.first; const qubit_vector_t &qbs = optype_qubit_pair.second; @@ -348,18 +325,21 @@ void apply_conjugations( case OpType::Vdg: case OpType::X: case OpType::Z: - conjugate_PauliTensor(qps, ot, qbs[0]); + conjugate_PauliTensor(stab, ot, qbs[0]); break; case OpType::CX: - conjugate_PauliTensor(qps, ot, qbs[0], qbs[1]); + conjugate_PauliTensor(stab, ot, qbs[0], qbs[1]); break; case OpType::XXPhase3: - conjugate_PauliTensor(qps, ot, qbs[0], qbs[1], qbs[2]); + conjugate_PauliTensor(stab, ot, qbs[0], qbs[1], qbs[2]); break; default: - throw UnknownOpType(); + throw std::logic_error( + "Unknown OpType received when applying conjugations."); } } + qps.string = stab.string; + qps.coeff *= cast_coeff(stab.coeff); } } // namespace tket diff --git a/tket/src/Diagonalisation/PauliPartition.cpp b/tket/src/Diagonalisation/PauliPartition.cpp index 39b7f19675..b784284029 100644 --- a/tket/src/Diagonalisation/PauliPartition.cpp +++ b/tket/src/Diagonalisation/PauliPartition.cpp @@ -24,9 +24,9 @@ namespace tket { PauliPartitionerGraph::PauliPartitionerGraph( - const std::list& strings, PauliPartitionStrat strat) { + const std::list& strings, PauliPartitionStrat strat) { pac_graph = {}; - for (const QubitPauliString& tensor : strings) { + for (const SpPauliString& tensor : strings) { PauliACVertex new_vert = boost::add_vertex(tensor, pac_graph); BGL_FORALL_VERTICES(v, pac_graph, PauliACGraph) { if (v != new_vert) { @@ -64,13 +64,13 @@ class AbstractGraphData { // Return the ID of the string (and also assign a new ID if the string // was not seen before); the eventual IDs will form an interval {0,1,2,...,n}. - std::size_t get_vertex_id(const QubitPauliString& pauli_string); + std::size_t get_vertex_id(const SpPauliString& pauli_string); typedef // KEY: the Pauli string present in a vertex // VALUE: an integer label for that vertex. // The labels will be a contiguous interval {0,1,2,...,m}. - std::map + std::map VertexMap; const graphs::AdjacencyData& get_adjacency_data() const; @@ -83,7 +83,7 @@ class AbstractGraphData { }; std::size_t AbstractGraphData::get_vertex_id( - const QubitPauliString& pauli_string) { + const SpPauliString& pauli_string) { const auto citer = m_vertex_map.find(pauli_string); if (citer != m_vertex_map.cend()) { return citer->second; @@ -125,7 +125,7 @@ AbstractGraphData::AbstractGraphData(const PauliACGraph& pac_graph) } } -static std::map> +static std::map> get_partitioned_paulis_for_exhaustive_method(const PauliACGraph& pac_graph) { const AbstractGraphData data(pac_graph); const graphs::GraphColouringResult colouring = @@ -133,10 +133,10 @@ get_partitioned_paulis_for_exhaustive_method(const PauliACGraph& pac_graph) { TKET_ASSERT(data.get_vertex_map().size() == colouring.colours.size()); - std::map> colour_map; + std::map> colour_map; for (const auto& entry : data.get_vertex_map()) { - const QubitPauliString& vertex = entry.first; + const SpPauliString& vertex = entry.first; const std::size_t id = entry.second; TKET_ASSERT(id < colouring.colours.size()); @@ -153,7 +153,7 @@ get_partitioned_paulis_for_exhaustive_method(const PauliACGraph& pac_graph) { return colour_map; } -static std::map> +static std::map> get_partitioned_paulis_for_largest_first_method(const PauliACGraph& pac_graph) { std::vector order_vec(boost::num_vertices(pac_graph)); std::iota(order_vec.begin(), order_vec.end(), 0); @@ -175,7 +175,7 @@ get_partitioned_paulis_for_largest_first_method(const PauliACGraph& pac_graph) { order_vec.begin(), boost::identity_property_map()), colour_prop_map); - std::map> colour_map; + std::map> colour_map; BGL_FORALL_VERTICES(v, pac_graph, PauliACGraph) { unsigned v_colour = colour_prop_map[v]; colour_map[v_colour].push_back(pac_graph[v]); @@ -183,7 +183,7 @@ get_partitioned_paulis_for_largest_first_method(const PauliACGraph& pac_graph) { return colour_map; } -std::map> +std::map> PauliPartitionerGraph::partition_paulis(GraphColourMethod method) const { switch (method) { case GraphColourMethod::LargestFirst: @@ -202,23 +202,20 @@ PauliPartitionerGraph::partition_paulis(GraphColourMethod method) const { } } -static std::list> +static std::list> get_term_sequence_for_lazy_colouring_method( - const std::list& strings, PauliPartitionStrat strat) { - std::list> terms; - for (const QubitPauliString& qpt : strings) { + const std::list& strings, PauliPartitionStrat strat) { + std::list> terms; + for (const SpPauliString& qpt : strings) { if (terms.empty()) { terms.push_back({qpt}); continue; } bool found_bin = false; - for (std::list>::iterator term_iter = - terms.begin(); - term_iter != terms.end(); ++term_iter) { - const std::list& qpt_list = *term_iter; + for (std::list& qpt_list : terms) { bool viable_bin = true; - for (const QubitPauliString& qpt2 : qpt_list) { + for (const SpPauliString& qpt2 : qpt_list) { switch (strat) { case (PauliPartitionStrat::NonConflictingSets): { bool conflict = !qpt.conflicting_qubits(qpt2).empty(); @@ -237,7 +234,7 @@ get_term_sequence_for_lazy_colouring_method( if (viable_bin == false) break; } if (viable_bin) { - term_iter->push_back(qpt); + qpt_list.push_back(qpt); found_bin = true; break; } @@ -250,24 +247,24 @@ get_term_sequence_for_lazy_colouring_method( return terms; } -static std::list> +static std::list> get_term_sequence_with_constructed_dependency_graph( - const std::list& strings, PauliPartitionStrat strat, + const std::list& strings, PauliPartitionStrat strat, GraphColourMethod method) { - std::list> terms; + std::list> terms; PauliPartitionerGraph pp(strings, strat); - std::map> colour_map = + std::map> colour_map = pp.partition_paulis(method); - for (const std::pair>& - colour_pair : colour_map) { + for (const std::pair>& colour_pair : + colour_map) { terms.push_back(colour_pair.second); } return terms; } -std::list> term_sequence( - const std::list& strings, PauliPartitionStrat strat, +std::list> term_sequence( + const std::list& strings, PauliPartitionStrat strat, GraphColourMethod method) { switch (method) { case GraphColourMethod::Lazy: diff --git a/tket/src/Gate/Gate.cpp b/tket/src/Gate/Gate.cpp index af81603356..94c316d8cf 100644 --- a/tket/src/Gate/Gate.cpp +++ b/tket/src/Gate/Gate.cpp @@ -28,7 +28,7 @@ #include "tket/OpType/OpTypeInfo.hpp" #include "tket/Ops/Op.hpp" #include "tket/Utils/Expression.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" namespace tket { using std::stringstream; diff --git a/tket/src/MeasurementSetup/MeasurementReduction.cpp b/tket/src/MeasurementSetup/MeasurementReduction.cpp index e37e3a55f3..b0a4a09f07 100644 --- a/tket/src/MeasurementSetup/MeasurementReduction.cpp +++ b/tket/src/MeasurementSetup/MeasurementReduction.cpp @@ -17,11 +17,11 @@ namespace tket { MeasurementSetup measurement_reduction( - const std::list& strings, PauliPartitionStrat strat, + const std::list& strings, PauliPartitionStrat strat, GraphColourMethod method, CXConfigType cx_config) { std::set qubits; - for (const QubitPauliString& qpt : strings) { - for (const std::pair& qb_p : qpt.map) + for (const SpPauliString& qpt : strings) { + for (const std::pair& qb_p : qpt.string) qubits.insert(qb_p.first); } @@ -32,15 +32,14 @@ MeasurementSetup measurement_reduction( ++u; } - std::list> all_terms = + std::list> all_terms = term_sequence(strings, strat, method); MeasurementSetup ms; unsigned i = 0; - for (const std::list& terms : all_terms) { - std::list> gadgets; - for (const QubitPauliString& string : terms) { - QubitPauliTensor qps(string); - gadgets.push_back({qps, 1.}); + for (const std::list& terms : all_terms) { + std::list gadgets; + for (const SpPauliString& string : terms) { + gadgets.push_back(string); } std::set mutable_qb_set(qubits); @@ -53,18 +52,15 @@ MeasurementSetup measurement_reduction( } ms.add_measurement_circuit(cliff_circ); - std::list>::const_iterator gadgets_iter = - gadgets.begin(); - for (const QubitPauliString& string : terms) { - const std::pair& new_gadget = *gadgets_iter; + std::list::const_iterator gadgets_iter = gadgets.begin(); + for (const SpPauliString& string : terms) { + SpPauliStabiliser stab(*gadgets_iter); // Force coeff to be real std::vector bits; - for (const std::pair& qp_pair : - new_gadget.first.string.map) { + for (const std::pair& qp_pair : stab.string) { if (qp_pair.second == Pauli::Z) bits.push_back(qb_location_map.at(qp_pair.first)); } - bool invert = (std::abs(new_gadget.first.coeff + Complex(1)) < EPS); - ms.add_result_for_term(string, {i, bits, invert}); + ms.add_result_for_term(string, {i, bits, stab.is_real_negative()}); ++gadgets_iter; } ++i; diff --git a/tket/src/MeasurementSetup/MeasurementSetup.cpp b/tket/src/MeasurementSetup/MeasurementSetup.cpp index 8b556166a5..3b8aead2dd 100644 --- a/tket/src/MeasurementSetup/MeasurementSetup.cpp +++ b/tket/src/MeasurementSetup/MeasurementSetup.cpp @@ -40,17 +40,12 @@ void MeasurementSetup::add_measurement_circuit(const Circuit &circ) { } void MeasurementSetup::add_result_for_term( - const QubitPauliString &term, const MeasurementBitMap &result) { + const SpPauliString &term, const MeasurementBitMap &result) { result_map[term].push_back(result); } -void MeasurementSetup::add_result_for_term( - const QubitPauliTensor &term, const MeasurementBitMap &result) { - add_result_for_term(term.string, result); -} - bool MeasurementSetup::verify() const { - std::map, QubitPauliTensor> pauli_map; + std::map, SpPauliStabiliser> pauli_map; // Identify Paulis measured onto each bit for (unsigned circ_id = 0; circ_id < measurement_circs.size(); ++circ_id) { Circuit circ = measurement_circs[circ_id]; @@ -68,15 +63,15 @@ bool MeasurementSetup::verify() const { pauli_map.insert({{circ_id, readout[qb]}, tab.get_zrow(qb)}); } } - for (const std::pair> + for (const std::pair> &term : result_map) { for (const MeasurementBitMap &bits : term.second) { - QubitPauliTensor total; + SpPauliStabiliser total; for (unsigned bit : bits.bits) { total = total * pauli_map[{bits.circ_index, bit}]; } - if (bits.invert) total.coeff *= -1.; - QubitPauliTensor term_tensor(term.first); + if (bits.invert) total.coeff = (total.coeff + 2) % 4; + SpPauliStabiliser term_tensor(term.first); if (total != term_tensor) { std::stringstream out; out << "Invalid MeasurementSetup: expecting to measure " @@ -94,7 +89,7 @@ std::string MeasurementSetup::to_str() const { ss << "Circuits: "; ss << measurement_circs.size(); ss << "\n"; - for (const std::pair> + for (const std::pair> &tensor_map : result_map) { ss << "|| "; ss << tensor_map.first.to_str(); @@ -123,10 +118,10 @@ void from_json( void to_json(nlohmann::json &j, const MeasurementSetup &setup) { std::vector>> + SpPauliString, std::vector>> map_list; for (const std::pair< - const QubitPauliString, + const SpPauliString, std::vector> &tensor_map : setup.get_result_map()) { map_list.push_back(tensor_map); @@ -135,7 +130,17 @@ void to_json(nlohmann::json &j, const MeasurementSetup &setup) { std::sort(map_list.begin(), map_list.end(), [](auto pair1, auto pair2) { return pair1.first < pair2.first; }); - j["result_map"] = map_list; + std::vector>> + map_encoding; + for (const std::pair< + SpPauliString, std::vector> + &tensor_map : map_list) { + map_encoding.push_back({tensor_map.first.string, tensor_map.second}); + } + // Convert SpPauliString to QubitPauliMap for backwards compatibility with + // before templated PauliTensor + j["result_map"] = map_encoding; j["circs"] = setup.get_circs(); } @@ -147,7 +152,7 @@ void from_json(const nlohmann::json &j, MeasurementSetup &setup) { for (auto second_it = it->at(1).begin(); second_it != it->at(1).end(); ++second_it) { setup.add_result_for_term( - it->at(0).get(), + SpPauliString(it->at(0).get()), second_it->get()); } } diff --git a/tket/src/PauliGraph/ConjugatePauliFunctions.cpp b/tket/src/PauliGraph/ConjugatePauliFunctions.cpp index 7515545d59..31a2b26852 100644 --- a/tket/src/PauliGraph/ConjugatePauliFunctions.cpp +++ b/tket/src/PauliGraph/ConjugatePauliFunctions.cpp @@ -99,20 +99,20 @@ std::pair conjugate_Pauli(OpType op, Pauli p, bool reverse) { } void conjugate_PauliTensor( - QubitPauliTensor& qpt, OpType op, const Qubit& q, bool reverse) { - QubitPauliMap::iterator it = qpt.string.map.find(q); - if (it == qpt.string.map.end()) { + SpPauliStabiliser& qpt, OpType op, const Qubit& q, bool reverse) { + QubitPauliMap::iterator it = qpt.string.find(q); + if (it == qpt.string.end()) { return; } std::pair conj = conjugate_Pauli(op, it->second, reverse); it->second = conj.first; if (conj.second) { - qpt.coeff *= -1; + qpt.coeff = (qpt.coeff + 2) % 4; } } void conjugate_PauliTensor( - QubitPauliTensor& qpt, OpType op, const Qubit& q0, const Qubit& q1) { + SpPauliStabiliser& qpt, OpType op, const Qubit& q0, const Qubit& q1) { static const std::map, std::tuple> cx_conj_lut{ {{Pauli::I, Pauli::I}, {Pauli::I, Pauli::I, false}}, @@ -135,29 +135,18 @@ void conjugate_PauliTensor( if (op != OpType::CX) { throw BadOpType("Conjugations of Pauli strings only defined for CXs", op); } - QubitPauliMap::iterator it0 = qpt.string.map.find(q0); - QubitPauliMap::iterator it1 = qpt.string.map.find(q1); - Pauli p0, p1; - if (it0 == qpt.string.map.end()) { - p0 = Pauli::I; - } else { - p0 = it0->second; - } - if (it1 == qpt.string.map.end()) { - p1 = Pauli::I; - } else { - p1 = it1->second; - } + Pauli p0 = qpt.get(q0); + Pauli p1 = qpt.get(q1); std::tuple conj = cx_conj_lut.at({p0, p1}); - qpt.string.map[q0] = std::get<0>(conj); - qpt.string.map[q1] = std::get<1>(conj); + qpt.set(q0, std::get<0>(conj)); + qpt.set(q1, std::get<1>(conj)); if (std::get<2>(conj)) { - qpt.coeff *= -1; + qpt.coeff = (qpt.coeff + 2) % 4; } } void conjugate_PauliTensor( - QubitPauliTensor& qpt, OpType op, const Qubit& q0, const Qubit& q1, + SpPauliStabiliser& qpt, OpType op, const Qubit& q0, const Qubit& q1, const Qubit& q2) { /* XXPhase3 gates used for conjugations always implicitly use angle π/2 * i.e. XXPhase3(1/2). Note that up to phase the 3-qb gate is self-inverse: @@ -179,20 +168,12 @@ void conjugate_PauliTensor( throw BadOpType( "3qb-Conjugations of Pauli strings only defined for XXPhase3", op); } - Conjugations equiv = {{OpType::H, {q1}}, {OpType::CX, {q1, q2}}, - {OpType::CX, {q1, q0}}, {OpType::H, {q0}}, - {OpType::H, {q1}}, {OpType::CX, {q0, q2}}, - {OpType::H, {q0}}, {OpType::X, {q0}}, - {OpType::X, {q1}}, {OpType::X, {q2}}}; - - for (auto [op, qbs] : equiv) { - if (qbs.size() == 1) { - conjugate_PauliTensor(qpt, op, qbs[0]); - } else { - TKET_ASSERT(qbs.size() == 2); - conjugate_PauliTensor(qpt, op, qbs[0], qbs[1]); - } - } + SpPauliStabiliser xxi_i({{q0, Pauli::X}, {q1, Pauli::X}}, 1); + SpPauliStabiliser xix_i({{q0, Pauli::X}, {q2, Pauli::X}}, 1); + SpPauliStabiliser ixx_i({{q1, Pauli::X}, {q2, Pauli::X}}, 1); + if (!xxi_i.commutes_with(qpt)) qpt = qpt * xxi_i; + if (!xix_i.commutes_with(qpt)) qpt = qpt * xix_i; + if (!ixx_i.commutes_with(qpt)) qpt = qpt * ixx_i; } } // namespace tket diff --git a/tket/src/PauliGraph/PauliGraph.cpp b/tket/src/PauliGraph/PauliGraph.cpp index 1ec7de2a87..7e7f7dc366 100644 --- a/tket/src/PauliGraph/PauliGraph.cpp +++ b/tket/src/PauliGraph/PauliGraph.cpp @@ -19,13 +19,13 @@ #include "tket/Gate/Gate.hpp" #include "tket/OpType/OpType.hpp" #include "tket/Utils/GraphHeaders.hpp" -#include "tket/Utils/PauliStrings.hpp" +#include "tket/Utils/PauliTensor.hpp" namespace tket { bool operator<( const PauliGadgetProperties &pgp1, const PauliGadgetProperties &pgp2) { - return (pgp1.tensor_.string < pgp2.tensor_.string); + return (SpPauliString)pgp1.tensor_ < (SpPauliString)pgp2.tensor_; } PauliGraph::PauliGraph(unsigned n) : cliff_(n) {} @@ -119,7 +119,7 @@ void PauliGraph::apply_gate_at_end( break; } case OpType::Rz: { - QubitPauliTensor pauli = cliff_.get_zrow(qbs.at(0)); + SpPauliStabiliser pauli = cliff_.get_zrow(qbs.at(0)); Expr angle = gate.get_params().at(0); std::optional cliff_angle = equiv_Clifford(angle); if (cliff_angle) { @@ -131,7 +131,7 @@ void PauliGraph::apply_gate_at_end( break; } case OpType::Rx: { - QubitPauliTensor pauli = cliff_.get_xrow(qbs.at(0)); + SpPauliStabiliser pauli = cliff_.get_xrow(qbs.at(0)); Expr angle = gate.get_params().at(0); std::optional cliff_angle = equiv_Clifford(angle); if (cliff_angle) { @@ -154,8 +154,8 @@ void PauliGraph::apply_gate_at_end( cliff_.apply_gate_at_end(OpType::Vdg, qbs); } } else { - QubitPauliTensor ypauli = - cliff_.get_row_product(QubitPauliTensor(qbs.at(0), Pauli::Y)); + SpPauliStabiliser ypauli = + cliff_.get_row_product(SpPauliStabiliser(qbs.at(0), Pauli::Y)); apply_pauli_gadget_at_end(ypauli, angle); } break; @@ -163,8 +163,8 @@ void PauliGraph::apply_gate_at_end( case OpType::PhasedX: { Expr alpha = gate.get_params().at(0); Expr beta = gate.get_params().at(1); - QubitPauliTensor zpauli = cliff_.get_zrow(qbs.at(0)); - QubitPauliTensor xpauli = cliff_.get_xrow(qbs.at(0)); + SpPauliStabiliser zpauli = cliff_.get_zrow(qbs.at(0)); + SpPauliStabiliser xpauli = cliff_.get_xrow(qbs.at(0)); std::optional cliff_alpha = equiv_Clifford(alpha); std::optional cliff_beta = equiv_Clifford(beta); // Rz(-b) @@ -194,12 +194,12 @@ void PauliGraph::apply_gate_at_end( break; } case OpType::T: { - QubitPauliTensor pauli = cliff_.get_zrow(qbs.at(0)); + SpPauliStabiliser pauli = cliff_.get_zrow(qbs.at(0)); apply_pauli_gadget_at_end(pauli, 0.25); break; } case OpType::Tdg: { - QubitPauliTensor pauli = cliff_.get_zrow(qbs.at(0)); + SpPauliStabiliser pauli = cliff_.get_zrow(qbs.at(0)); apply_pauli_gadget_at_end(pauli, -0.25); break; } @@ -220,21 +220,15 @@ void PauliGraph::apply_gate_at_end( std::optional cliff_angle = equiv_Clifford(angle); if (cliff_angle) { if (cliff_angle.value() != 0) { - for (unsigned i = 1; i < qbs.size(); i++) { - cliff_.apply_gate_at_end(OpType::CX, {qbs.at(i - 1), qbs.at(i)}); - } - for (unsigned i = 0; i < cliff_angle.value(); i++) { - cliff_.apply_gate_at_end(OpType::S, {qbs.back()}); - } - for (unsigned i = qbs.size() - 1; i > 0; i--) { - cliff_.apply_gate_at_end(OpType::CX, {qbs.at(i - 1), qbs.at(i)}); - } + QubitPauliMap qpm; + for (const Qubit &q : qbs) qpm.insert({q, Pauli::Z}); + cliff_.apply_pauli_at_end(SpPauliStabiliser(qpm), *cliff_angle); } } else { - QubitPauliTensor pauli = - cliff_.get_row_product(QubitPauliTensor(QubitPauliString( - std::list{qbs.begin(), qbs.end()}, - std::list{qbs.size(), Pauli::Z}))); + QubitPauliMap qpm; + for (const Qubit &q : qbs) qpm.insert({q, Pauli::Z}); + SpPauliStabiliser pauli = + cliff_.get_row_product(SpPauliStabiliser(qpm)); apply_pauli_gadget_at_end(pauli, angle); } break; @@ -244,15 +238,13 @@ void PauliGraph::apply_gate_at_end( std::optional cliff_angle = equiv_Clifford(angle); if (cliff_angle) { if (cliff_angle.value() != 0) { - cliff_.apply_gate_at_end(OpType::CX, {qbs.at(1), qbs.at(0)}); - for (unsigned i = 0; i < cliff_angle.value(); i++) { - cliff_.apply_gate_at_end(OpType::V, {qbs.back()}); - } - cliff_.apply_gate_at_end(OpType::CX, {qbs.at(1), qbs.at(0)}); + cliff_.apply_pauli_at_end( + SpPauliStabiliser({{qbs.at(0), Pauli::X}, {qbs.at(1), Pauli::X}}), + *cliff_angle); } } else { - QubitPauliTensor pauli = cliff_.get_row_product(QubitPauliTensor( - QubitPauliString({qbs.at(0), qbs.at(1)}, {Pauli::X, Pauli::X}))); + SpPauliStabiliser pauli = cliff_.get_row_product( + SpPauliStabiliser({{qbs.at(0), Pauli::X}, {qbs.at(1), Pauli::X}})); apply_pauli_gadget_at_end(pauli, angle); } break; @@ -262,21 +254,13 @@ void PauliGraph::apply_gate_at_end( std::optional cliff_angle = equiv_Clifford(angle); if (cliff_angle) { if (cliff_angle.value() != 0) { - const Qubit &arg0 = qbs.at(0); - const Qubit &arg1 = qbs.at(1); - cliff_.apply_gate_at_end(OpType::S, {arg0}); - cliff_.apply_gate_at_end(OpType::S, {arg1}); - cliff_.apply_gate_at_end(OpType::CX, {arg1, arg0}); - for (unsigned i = 0; i < cliff_angle.value(); i++) { - cliff_.apply_gate_at_end(OpType::V, {arg1}); - } - cliff_.apply_gate_at_end(OpType::CX, {arg1, arg0}); - cliff_.apply_gate_at_end(OpType::Sdg, {arg0}); - cliff_.apply_gate_at_end(OpType::Sdg, {arg1}); + cliff_.apply_pauli_at_end( + SpPauliStabiliser({{qbs.at(0), Pauli::Y}, {qbs.at(1), Pauli::Y}}), + *cliff_angle); } } else { - QubitPauliTensor pauli = cliff_.get_row_product(QubitPauliTensor( - QubitPauliString({qbs.at(0), qbs.at(1)}, {Pauli::Y, Pauli::Y}))); + SpPauliStabiliser pauli = cliff_.get_row_product( + SpPauliStabiliser({{qbs.at(0), Pauli::Y}, {qbs.at(1), Pauli::Y}})); apply_pauli_gadget_at_end(pauli, angle); } break; @@ -288,7 +272,7 @@ void PauliGraph::apply_gate_at_end( } void PauliGraph::apply_pauli_gadget_at_end( - const QubitPauliTensor &pauli, const Expr &angle) { + const SpPauliStabiliser &pauli, const Expr &angle) { PauliVertSet to_search = end_line_; PauliVertSet commuted; PauliVert new_vert = boost::add_vertex(graph_); @@ -309,11 +293,11 @@ void PauliGraph::apply_pauli_gadget_at_end( if (!ready) continue; // Check if we can commute past it - QubitPauliTensor compare_pauli = graph_[to_compare].tensor_; + SpPauliStabiliser compare_pauli = graph_[to_compare].tensor_; if (pauli.commutes_with(compare_pauli)) { if (pauli.string == compare_pauli.string) { // Identical strings - we can merge vertices - if (pauli.coeff == compare_pauli.coeff) { + if (pauli.is_real_negative() == compare_pauli.is_real_negative()) { graph_[to_compare].angle_ += angle; } else { graph_[to_compare].angle_ -= angle; diff --git a/tket/src/Transformations/PauliOptimisation.cpp b/tket/src/Transformations/PauliOptimisation.cpp index 7d4c0f8624..003c5e228c 100644 --- a/tket/src/Transformations/PauliOptimisation.cpp +++ b/tket/src/Transformations/PauliOptimisation.cpp @@ -59,7 +59,7 @@ Transform pairwise_pauli_gadgets(CXConfigType cx_config) { // We effectively commute non-Clifford rotations to the front of the circuit // This gives a sequence of just Pauli gadgets (gadget_circ), followed by // all of the Clifford operations (clifford_circ) - std::vector> pauli_gadgets; + std::vector pauli_gadgets; // rx_pauli[i] specifies which Pauli gadget would be built by applying an Rx // rotation on qubit i and then pushing it through the Cliffords to the // front of the circuit. Likewise for rz_pauli with Rz rotations. Clifford @@ -67,13 +67,13 @@ Transform pairwise_pauli_gadgets(CXConfigType cx_config) { // Pauli gadgets accordingly Circuit gadget_circ; Circuit clifford_circ; - std::map rx_pauli; - std::map rz_pauli; + std::map rx_pauli; + std::map rz_pauli; for (const Qubit &qb : circ.all_qubits()) { gadget_circ.add_qubit(qb); clifford_circ.add_qubit(qb); - rx_pauli.insert({qb, QubitPauliTensor(qb, Pauli::X)}); - rz_pauli.insert({qb, QubitPauliTensor(qb, Pauli::Z)}); + rx_pauli.insert({qb, SpPauliStabiliser(qb, Pauli::X)}); + rz_pauli.insert({qb, SpPauliStabiliser(qb, Pauli::Z)}); } for (const Bit &cb : circ.all_bits()) { gadget_circ.add_bit(cb); @@ -88,32 +88,32 @@ Transform pairwise_pauli_gadgets(CXConfigType cx_config) { // Update rx_pauli and rz_pauli case OpType::S: { Qubit q(args[0]); - rx_pauli[q] = i_ * rz_pauli[q] * rx_pauli[q]; + rx_pauli[q] = SpPauliStabiliser({}, 1) * rz_pauli[q] * rx_pauli[q]; break; } case OpType::V: { Qubit q(args[0]); - rz_pauli[q] = i_ * rx_pauli[q] * rz_pauli[q]; + rz_pauli[q] = SpPauliStabiliser({}, 1) * rx_pauli[q] * rz_pauli[q]; break; } case OpType::Z: { Qubit q(args[0]); - rx_pauli[q] = -1. * rx_pauli[q]; + rx_pauli[q] = SpPauliStabiliser({}, 2) * rx_pauli[q]; break; } case OpType::X: { Qubit q(args[0]); - rz_pauli[q] = -1. * rz_pauli[q]; + rz_pauli[q] = SpPauliStabiliser({}, 2) * rz_pauli[q]; break; } case OpType::Sdg: { Qubit q(args[0]); - rx_pauli[q] = -i_ * rz_pauli[q] * rx_pauli[q]; + rx_pauli[q] = SpPauliStabiliser({}, 3) * rz_pauli[q] * rx_pauli[q]; break; } case OpType::Vdg: { Qubit q(args[0]); - rz_pauli[q] = -i_ * rx_pauli[q] * rz_pauli[q]; + rz_pauli[q] = SpPauliStabiliser({}, 3) * rx_pauli[q] * rz_pauli[q]; break; } case OpType::CX: { @@ -127,13 +127,17 @@ Transform pairwise_pauli_gadgets(CXConfigType cx_config) { case OpType::Rz: { Qubit q(args[0]); Expr angle = (op_ptr)->get_params()[0]; - pauli_gadgets.push_back({rz_pauli[q], angle}); + SpSymPauliTensor g = + (SpSymPauliTensor)rz_pauli[q] * SpSymPauliTensor({}, angle); + pauli_gadgets.push_back(g); break; } case OpType::Rx: { Qubit q(args[0]); Expr angle = (op_ptr)->get_params()[0]; - pauli_gadgets.push_back({rx_pauli[q], angle}); + SpSymPauliTensor g = + (SpSymPauliTensor)rx_pauli[q] * SpSymPauliTensor({}, angle); + pauli_gadgets.push_back(g); break; } case OpType::noop: @@ -164,17 +168,14 @@ Transform pairwise_pauli_gadgets(CXConfigType cx_config) { // Synthesise pairs of Pauli Gadgets unsigned g = 0; while (g + 1 < pauli_gadgets.size()) { - auto [pauli0, angle0] = pauli_gadgets[g]; - auto [pauli1, angle1] = pauli_gadgets[g + 1]; append_pauli_gadget_pair( - gadget_circ, pauli0, angle0, pauli1, angle1, cx_config); + gadget_circ, pauli_gadgets[g], pauli_gadgets[g + 1], cx_config); g += 2; } // As we synthesised Pauli gadgets 2 at a time, if there were an odd // number, we will have one left over, so add that one on its own if (g < pauli_gadgets.size()) { - auto [pauli, angle] = pauli_gadgets[g]; - append_single_pauli_gadget(gadget_circ, pauli, angle, cx_config); + append_single_pauli_gadget(gadget_circ, pauli_gadgets[g], cx_config); } // Stitch gadget circuit and Clifford circuit together circ = gadget_circ >> clifford_circ; diff --git a/tket/src/Utils/PauliStrings.cpp b/tket/src/Utils/PauliStrings.cpp deleted file mode 100644 index c322dfcf11..0000000000 --- a/tket/src/Utils/PauliStrings.cpp +++ /dev/null @@ -1,580 +0,0 @@ -// Copyright 2019-2023 Cambridge Quantum Computing -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#include "tket/Utils/PauliStrings.hpp" - -#include -#include -#include -#include -#include -#include -#include - -#include "tket/Utils/Constants.hpp" -#include "tket/Utils/EigenConfig.hpp" -#include "tket/Utils/Json.hpp" - -namespace tket { - -static const CmplxSpMat const_2x2_matrix( - Complex tl, Complex tr, Complex bl, Complex br) { - CmplxSpMat m(2, 2); - if (tl != czero) { - m.insert(0, 0) = tl; - } - if (tr != czero) { - m.insert(0, 1) = tr; - } - if (bl != czero) { - m.insert(1, 0) = bl; - } - if (br != czero) { - m.insert(1, 1) = br; - } - return m; -} - -static const CmplxSpMat &pauli_sparse_mat(Pauli p) { - static const CmplxSpMat I_mat = const_2x2_matrix(1, 0, 0, 1); - static const CmplxSpMat X_mat = const_2x2_matrix(0, 1, 1, 0); - static const CmplxSpMat Y_mat = const_2x2_matrix(0, -i_, i_, 0); - static const CmplxSpMat Z_mat = const_2x2_matrix(1, 0, 0, -1); - switch (p) { - case Pauli::X: - return X_mat; - case Pauli::Y: - return Y_mat; - case Pauli::Z: - return Z_mat; - default: - TKET_ASSERT(p == Pauli::I); - return I_mat; - } -} - -class StateNotPowerTwo : public std::logic_error { - public: - StateNotPowerTwo() - : std::logic_error("Statevector size is not a power of two.") {} -}; - -unsigned get_n_qb_from_statevector(const Eigen::VectorXcd &state) { - // allowing room for big states - unsigned long long n = state.size(); - if (!(n && (!(n & (n - 1))))) { - throw StateNotPowerTwo(); - } - - unsigned count = 0; - while (n) { - n >>= 1; - ++count; - } - return count - 1; -} - -CmplxSpMat QubitPauliString::to_sparse_matrix() const { - qubit_vector_t qubits(map.size()); - unsigned i = 0; - for (const std::pair &pair : map) { - qubits[i] = pair.first; - ++i; - } - return to_sparse_matrix(qubits); -} - -CmplxSpMat QubitPauliString::to_sparse_matrix(const unsigned n_qubits) const { - qubit_vector_t qubits(n_qubits); - for (unsigned i = 0; i < n_qubits; ++i) { - qubits[i] = Qubit(i); - } - return to_sparse_matrix(qubits); -} - -CmplxSpMat QubitPauliString::to_sparse_matrix( - const qubit_vector_t &qubits) const { - std::vector paulis(qubits.size(), Pauli::I); - std::map index_map; - unsigned index = 0; - for (const Qubit &q : qubits) { - index_map.insert({q, index}); - ++index; - } - if (index_map.size() != qubits.size()) - throw std::logic_error( - "Qubit list given to to_sparse_matrix contains repeats"); - for (const std::pair &pair : map) { - std::map::iterator found = index_map.find(pair.first); - if (found == index_map.end()) - throw std::logic_error( - "Qubit list given to to_sparse_matrix doesn't contain " + - pair.first.repr()); - paulis.at(found->second) = pair.second; - } - CmplxSpMat result(1, 1); - result.insert(0, 0) = 1; - for (Pauli p : paulis) { - const CmplxSpMat pauli_mat = pauli_sparse_mat(p); - result = Eigen::KroneckerProductSparse(result, pauli_mat).eval(); - } - return result; -} - -CmplxSpMat operator_tensor( - const OperatorSum &total_operator, unsigned n_qubits) { - qubit_vector_t qubits(n_qubits); - for (unsigned i = 0; i < n_qubits; ++i) { - qubits[i] = Qubit(i); - } - return operator_tensor(total_operator, qubits); -} - -CmplxSpMat operator_tensor( - const OperatorSum &total_operator, const qubit_vector_t &qubits) { - CmplxSpMat sum = total_operator[0].second * - total_operator[0].first.to_sparse_matrix(qubits); - for (unsigned j = 1; j < total_operator.size(); j++) { - sum += total_operator[j].second * - total_operator[j].first.to_sparse_matrix(qubits); - } - return sum; -} - -Eigen::VectorXcd QubitPauliString::dot_state( - const Eigen::VectorXcd &state) const { - const unsigned n_qubits = get_n_qb_from_statevector(state); - return (to_sparse_matrix(n_qubits) * state); -} - -Eigen::VectorXcd QubitPauliString::dot_state( - const Eigen::VectorXcd &state, const qubit_vector_t &qubits) const { - if (state.size() != 1 << qubits.size()) - throw std::logic_error( - "Size of statevector does not match number of qubits passed to " - "dot_state"); - return (to_sparse_matrix(qubits) * state); -} - -Complex QubitPauliString::state_expectation( - const Eigen::VectorXcd &state) const { - return state.dot(dot_state(state)); -} - -Complex QubitPauliString::state_expectation( - const Eigen::VectorXcd &state, const qubit_vector_t &qubits) const { - return state.dot(dot_state(state, qubits)); -} - -Complex operator_expectation( - const OperatorSum &total_operator, const Eigen::VectorXcd &state) { - Complex exp(0, 0); - - for (unsigned j = 0; j < total_operator.size(); j++) { - exp += total_operator[j].second * - total_operator[j].first.state_expectation(state); - } - - return exp; -} - -Complex operator_expectation( - const OperatorSum &total_operator, const Eigen::VectorXcd &state, - const qubit_vector_t &qubits) { - Complex exp(0, 0); - - for (unsigned j = 0; j < total_operator.size(); j++) { - exp += total_operator[j].second * - total_operator[j].first.state_expectation(state, qubits); - } - - return exp; -} - -QubitPauliString::QubitPauliString( - const std::initializer_list &_paulis) { - unsigned qb_i = 0; - for (Pauli p : _paulis) { - map[Qubit(qb_i)] = p; - ++qb_i; - } -} - -QubitPauliString::QubitPauliString(const std::list &_paulis) { - unsigned qb_i = 0; - for (Pauli p : _paulis) { - map[Qubit(qb_i)] = p; - ++qb_i; - } -} - -QubitPauliString::QubitPauliString(const std::vector &_paulis) { - unsigned qb_i = 0; - for (Pauli p : _paulis) { - map[Qubit(qb_i)] = p; - ++qb_i; - } -} - -QubitPauliString::QubitPauliString( - const std::list &qubits, const std::list &paulis) { - if (qubits.size() != paulis.size()) { - throw std::logic_error( - "Mismatch of Qubits and Paulis upon QubitPauliString " - "construction"); - } - std::list::const_iterator p_it = paulis.begin(); - for (const Qubit &qb : qubits) { - Pauli p = *p_it; - if (map.find(qb) != map.end()) { - throw std::logic_error( - "Non-unique Qubit inserted into QubitPauliString map"); - } - map[qb] = p; - ++p_it; - } -} - -bool QubitPauliString::operator==(const QubitPauliString &other) const { - return compare(other) == 0; -} - -bool QubitPauliString::operator!=(const QubitPauliString &other) const { - return !(*this == other); -} - -bool QubitPauliString::operator<(const QubitPauliString &other) const { - return compare(other) < 0; -} - -int QubitPauliString::compare(const QubitPauliString &other) const { - QubitPauliMap::const_iterator p1_it = this->map.begin(); - QubitPauliMap::const_iterator p2_it = other.map.begin(); - while (p1_it != this->map.end()) { - if (p1_it->second == Pauli::I) { - ++p1_it; - continue; - } - while (p2_it != other.map.end() && p2_it->second == Pauli::I) { - ++p2_it; - } - if (p2_it == other.map.end()) return 1; - // QubitPauliString order should reflect ILO - // i.e. IZ < ZI (Zq1 < Zq0) - // Hence we first order by reverse of leading qubit - if (p1_it->first < p2_it->first) return 1; - if (p2_it->first < p1_it->first) return -1; - // and then by increasing order of Pauli letter on the same qubit - if (p1_it->second < p2_it->second) return -1; - if (p1_it->second > p2_it->second) return 1; - ++p1_it; - ++p2_it; - } - while (p2_it != other.map.end() && p2_it->second == Pauli::I) { - ++p2_it; - } - return (p2_it == other.map.end()) ? 0 : -1; -} - -void QubitPauliString::compress() { - QubitPauliMap::iterator i = map.begin(); - while (i != map.end()) { - if (i->second == Pauli::I) { - i = map.erase(i); - } else { - ++i; - } - } -} - -bool QubitPauliString::commutes_with(const QubitPauliString &other) const { - return (conflicting_qubits(other).size() % 2) == 0; -} - -std::set QubitPauliString::common_qubits( - const QubitPauliString &other) const { - std::set common; - for (const std::pair &p : map) { - QubitPauliMap::const_iterator found = other.map.find(p.first); - if (p.second == Pauli::I) continue; - if (found != other.map.end() && found->second == p.second) { - common.insert(p.first); - } - } - return common; -} - -std::set QubitPauliString::own_qubits( - const QubitPauliString &other) const { - std::set own; - for (const std::pair &p : map) { - if (p.second == Pauli::I) continue; - QubitPauliMap::const_iterator found = other.map.find(p.first); - if (found == other.map.end() || found->second == Pauli::I) { - own.insert(p.first); - } - } - return own; -} - -std::set QubitPauliString::conflicting_qubits( - const QubitPauliString &other) const { - std::set conflicts; - for (const std::pair &p : map) { - if (p.second == Pauli::I) continue; - QubitPauliMap::const_iterator found = other.map.find(p.first); - if (found != other.map.end() && found->second != Pauli::I && - found->second != p.second) { - conflicts.insert(p.first); - } - } - return conflicts; -} - -std::string QubitPauliString::to_str() const { - std::stringstream d; - d << "("; - QubitPauliMap::const_iterator i = map.begin(); - while (i != map.end()) { - switch (i->second) { - case Pauli::I: { - d << "I"; - break; - } - case Pauli::X: { - d << "X"; - break; - } - case Pauli::Y: { - d << "Y"; - break; - } - case Pauli::Z: { - d << "Z"; - break; - } - } - d << i->first.repr(); - i++; - if (i != map.end()) d << ", "; - } - d << ")"; - return d.str(); -} - -Pauli QubitPauliString::get(const Qubit &q) const { - QubitPauliMap::const_iterator i = map.find(q); - if (i == map.end()) - return Pauli::I; - else - return i->second; -} - -void QubitPauliString::set(const Qubit &q, Pauli p) { - QubitPauliMap::iterator i = map.find(q); - if (i == map.end()) { - if (p != Pauli::I) map.insert({q, p}); - } else { - if (p == Pauli::I) - map.erase(i); - else - i->second = p; - } -} - -std::size_t hash_value(const QubitPauliString &qps) { - std::size_t seed = 0; - for (const std::pair &qb_p : qps.map) { - if (qb_p.second != Pauli::I) { - boost::hash_combine(seed, qb_p.first); - boost::hash_combine(seed, qb_p.second); - } - } - return seed; -} - -void to_json(nlohmann::json &j, const QubitPauliString &paulistr) { - j = nlohmann::json::array(); - for (const auto &[qb, pauli] : paulistr.map) { - j.push_back({qb, pauli}); - } -} - -void from_json(const nlohmann::json &j, QubitPauliString &paulistr) { - for (const auto &qb_pauli : j) { - paulistr.set(qb_pauli[0].get(), qb_pauli[1].get()); - } -} - -const QubitPauliTensor::Mult_Matrix &QubitPauliTensor::get_mult_matrix() { - static const Mult_Matrix mult_matrix{ - {{Pauli::I, Pauli::I}, {1., Pauli::I}}, - {{Pauli::I, Pauli::X}, {1., Pauli::X}}, - {{Pauli::I, Pauli::Y}, {1., Pauli::Y}}, - {{Pauli::I, Pauli::Z}, {1., Pauli::Z}}, - {{Pauli::X, Pauli::I}, {1., Pauli::X}}, - {{Pauli::X, Pauli::X}, {1., Pauli::I}}, - {{Pauli::X, Pauli::Y}, {i_, Pauli::Z}}, - {{Pauli::X, Pauli::Z}, {-i_, Pauli::Y}}, - {{Pauli::Y, Pauli::I}, {1., Pauli::Y}}, - {{Pauli::Y, Pauli::X}, {-i_, Pauli::Z}}, - {{Pauli::Y, Pauli::Y}, {1., Pauli::I}}, - {{Pauli::Y, Pauli::Z}, {i_, Pauli::X}}, - {{Pauli::Z, Pauli::I}, {1., Pauli::Z}}, - {{Pauli::Z, Pauli::X}, {i_, Pauli::Y}}, - {{Pauli::Z, Pauli::Y}, {-i_, Pauli::X}}, - {{Pauli::Z, Pauli::Z}, {1., Pauli::I}}}; - return mult_matrix; -} - -QubitPauliTensor QubitPauliTensor::operator*( - const QubitPauliTensor &other) const { - QubitPauliTensor result(this->coeff * other.coeff); - QubitPauliMap::const_iterator p1i = this->string.map.begin(); - QubitPauliMap::const_iterator p2i = other.string.map.begin(); - while (p1i != this->string.map.end()) { - while (p2i != other.string.map.end() && p2i->first < p1i->first) { - result.string.map.insert(*p2i); - p2i++; - } - if (p2i != other.string.map.end() && p2i->first == p1i->first) { - // Pauli in the same position, so need to multiply - const std::pair &prod = - QubitPauliTensor::get_mult_matrix().at({p1i->second, p2i->second}); - result.coeff *= prod.first; - if (prod.second != Pauli::I) { - result.string.map.insert({p1i->first, prod.second}); - } - p2i++; - } else { - result.string.map.insert(*p1i); - } - p1i++; - } - while (p2i != other.string.map.end()) { - result.string.map.insert(*p2i); - p2i++; - } - return result; -} - -void QubitPauliTensor::transpose() { - for (const std::pair &pair : string.map) { - if (pair.second == Pauli::Y) coeff *= -1.; - } -} - -bool QubitPauliTensor::operator==(const QubitPauliTensor &other) const { - if (this->coeff != other.coeff) return false; - return (this->string == other.string); -} - -bool QubitPauliTensor::operator!=(const QubitPauliTensor &other) const { - return !(*this == other); -} - -bool QubitPauliTensor::operator<(const QubitPauliTensor &other) const { - int comp = this->string.compare(other.string); - if (comp < 0) return true; - if (comp > 0) return false; - if (this->coeff.real() < other.coeff.real()) return true; - if (this->coeff.real() > other.coeff.real()) return false; - return (this->coeff.imag() < other.coeff.imag()); -} - -void QubitPauliTensor::compress() { string.compress(); } - -bool QubitPauliTensor::commutes_with(const QubitPauliTensor &other) const { - return (string.commutes_with(other.string)); -} - -std::set QubitPauliTensor::common_qubits( - const QubitPauliTensor &other) const { - return string.common_qubits(other.string); -} - -std::set QubitPauliTensor::own_qubits( - const QubitPauliTensor &other) const { - return string.own_qubits(other.string); -} - -std::set QubitPauliTensor::conflicting_qubits( - const QubitPauliTensor &other) const { - return (string.conflicting_qubits(other.string)); -} - -std::string QubitPauliTensor::to_str() const { - std::stringstream d; - if (coeff == -1.) { - d << "-"; - } else if (coeff != 1.) { - d << coeff << "*"; - } - d << string.to_str(); - return d.str(); -} - -std::size_t hash_value(const QubitPauliTensor &qpt) { - std::size_t seed = hash_value(qpt.string); - boost::hash_combine(seed, qpt.coeff); - return seed; -} - -QubitPauliTensor operator*(Complex a, const QubitPauliTensor &qpt) { - QubitPauliTensor result = qpt; - result.coeff *= a; - return result; -} - -PauliStabiliser::PauliStabiliser( - const std::vector string, const bool coeff) - : string(string), coeff(coeff) { - if (string.size() == 0) { - throw std::invalid_argument("Pauli stabiliser cannot be empty."); - } - if (std::adjacent_find(string.begin(), string.end(), std::not_equal_to<>()) == - string.end() && - string[0] == Pauli::I) { - throw std::invalid_argument("Pauli stabiliser cannot be identity."); - } -} - -bool PauliStabiliser::operator==(const PauliStabiliser &other) const { - return coeff == other.coeff && string == other.string; -} - -bool PauliStabiliser::operator!=(const PauliStabiliser &other) const { - return coeff != other.coeff || string != other.string; -} - -void to_json(nlohmann::json &j, const PauliStabiliser &pauli_stabiliser) { - j["string"] = pauli_stabiliser.string; - j["coeff"] = pauli_stabiliser.coeff; -} - -void from_json(const nlohmann::json &j, PauliStabiliser &pauli_stabiliser) { - pauli_stabiliser = PauliStabiliser( - j.at("string").get>(), j.at("coeff").get()); -} - -void to_json(nlohmann::json &j, const QubitPauliTensor &qubitPauliTensor) { - j["string"] = qubitPauliTensor.string; - j["coeff"] = qubitPauliTensor.coeff; -} - -void from_json(const nlohmann::json &j, QubitPauliTensor &qubitPauliTensor) { - qubitPauliTensor = QubitPauliTensor( - j.at("string").get(), j.at("coeff").get()); -} -} // namespace tket diff --git a/tket/src/Utils/PauliTensor.cpp b/tket/src/Utils/PauliTensor.cpp new file mode 100644 index 0000000000..680c178dd0 --- /dev/null +++ b/tket/src/Utils/PauliTensor.cpp @@ -0,0 +1,734 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "tket/Utils/PauliTensor.hpp" + +#include + +namespace tket { + +void to_json(nlohmann::json &, const no_coeff_t &) {} +void from_json(const nlohmann::json &, no_coeff_t &) {} + +template <> +no_coeff_t default_coeff() { + return {}; +} +template <> +quarter_turns_t default_coeff() { + return 0; +} +template <> +Complex default_coeff() { + return 1.; +} +template <> +Expr default_coeff() { + return 1; +} + +template <> +QubitPauliMap cast_container( + const QubitPauliMap &cont) { + return cont; +} + +template <> +QubitPauliMap cast_container( + const DensePauliMap &cont) { + QubitPauliMap res; + for (unsigned i = 0; i < cont.size(); ++i) { + Pauli pi = cont.at(i); + if (pi != Pauli::I) res.insert({Qubit(i), cont.at(i)}); + } + return res; +} + +template <> +DensePauliMap cast_container( + const QubitPauliMap &cont) { + if (cont.empty()) return {}; + unsigned max_index = 0; + for (const std::pair &pair : cont) { + if (pair.first.reg_info() != register_info_t{UnitType::Qubit, 1} || + pair.first.reg_name() != q_default_reg()) + throw std::logic_error( + "Cannot cast a QubitPauliMap with non-default register qubits to a " + "DensePauliMap"); + unsigned i = pair.first.index().front(); + if (i > max_index) max_index = i; + } + DensePauliMap res(max_index + 1, Pauli::I); + for (const std::pair &pair : cont) { + res.at(pair.first.index().front()) = pair.second; + } + return res; +} + +template <> +DensePauliMap cast_container( + const DensePauliMap &cont) { + return cont; +} + +template <> +no_coeff_t cast_coeff(const no_coeff_t &) { + return {}; +} +template <> +quarter_turns_t cast_coeff(const no_coeff_t &) { + return 0; +} +template <> +Complex cast_coeff(const no_coeff_t &) { + return 1.; +} +template <> +Expr cast_coeff(const no_coeff_t &) { + return 1.; +} + +template <> +no_coeff_t cast_coeff(const quarter_turns_t &) { + return {}; +} +template <> +quarter_turns_t cast_coeff( + const quarter_turns_t &coeff) { + return coeff; +} +template <> +Complex cast_coeff(const quarter_turns_t &coeff) { + switch (coeff % 4) { + case 0: { + return 1.; + } + case 1: { + return i_; + } + case 2: { + return -1.; + } + default: { + return -i_; + } + } +} +template <> +Expr cast_coeff(const quarter_turns_t &coeff) { + switch (coeff % 4) { + case 0: { + return Expr(1); + } + case 1: { + return Expr(SymEngine::I); + } + case 2: { + return Expr(-1); + } + default: { + return -Expr(SymEngine::I); + } + } +} + +template <> +no_coeff_t cast_coeff(const Complex &) { + return {}; +} +template <> +quarter_turns_t cast_coeff(const Complex &coeff) { + if (std::abs(coeff - 1.) < EPS) + return 0; + else if (std::abs(coeff - i_) < EPS) + return 1; + else if (std::abs(coeff + 1.) < EPS) + return 2; + else if (std::abs(coeff + i_) < EPS) + return 3; + else + throw std::logic_error( + "Could not cast PauliTensor coefficient to quarter turns: not a power " + "of i."); +} +template <> +Complex cast_coeff(const Complex &coeff) { + return coeff; +} +template <> +Expr cast_coeff(const Complex &coeff) { + return Expr(SymEngine::make_rcp(coeff)); +} + +template <> +no_coeff_t cast_coeff(const Expr &) { + return {}; +} +template <> +quarter_turns_t cast_coeff(const Expr &coeff) { + std::optional ev = eval_expr_c(coeff); + if (ev) + return cast_coeff(*ev); + else + throw std::logic_error( + "Could not cast symbolic PauliTensor to quarter turns."); +} +template <> +Complex cast_coeff(const Expr &coeff) { + std::optional ev = eval_expr_c(coeff); + if (ev) + return *ev; + else + throw std::logic_error( + "Could not cast symbolic PauliTensor to complex coefficient."); +} +template <> +Expr cast_coeff(const Expr &coeff) { + return coeff; +} + +template <> +int compare_containers( + const QubitPauliMap &first, const QubitPauliMap &second) { + QubitPauliMap::const_iterator p1_it = first.begin(); + QubitPauliMap::const_iterator p2_it = second.begin(); + while (p1_it != first.end()) { + if (p1_it->second == Pauli::I) { + ++p1_it; + continue; + } + while (p2_it != second.end() && p2_it->second == Pauli::I) { + ++p2_it; + } + if (p2_it == second.end()) return 1; + // QubitPauliMap order should reflect ILO + // i.e. IZ < ZI (Zq1 < Zq0) + // Hence we first order by reverse of leading qubit + if (p1_it->first < p2_it->first) return 1; + if (p2_it->first < p1_it->first) return -1; + // and then by increasing order of Pauli letter on the same qubit + if (p1_it->second < p2_it->second) return -1; + if (p1_it->second > p2_it->second) return 1; + ++p1_it; + ++p2_it; + } + while (p2_it != second.end() && p2_it->second == Pauli::I) { + ++p2_it; + } + return (p2_it == second.end()) ? 0 : -1; +} + +template <> +int compare_containers( + const DensePauliMap &first, const DensePauliMap &second) { + DensePauliMap::const_iterator p1_it = first.begin(); + DensePauliMap::const_iterator p2_it = second.begin(); + while (p1_it != first.end() && p2_it != second.end()) { + if (*p1_it == Pauli::I) { + if (*p2_it != Pauli::I) return -1; + } else if (*p2_it == Pauli::I) + return 1; + else if (*p1_it < *p2_it) + return -1; + else if (*p1_it > *p2_it) + return 1; + ++p1_it; + ++p2_it; + } + while (p1_it != first.end() && *p1_it == Pauli::I) ++p1_it; + if (p1_it != first.end()) return 1; + while (p2_it != second.end() && *p2_it == Pauli::I) ++p2_it; + return (p2_it == second.end()) ? 0 : -1; +} + +template <> +int compare_coeffs(const no_coeff_t &, const no_coeff_t &) { + return 0; +} +template <> +int compare_coeffs( + const quarter_turns_t &first, const quarter_turns_t &second) { + if (first % 4 < second % 4) return -1; + return (first % 4 == second % 4) ? 0 : 1; +} +template <> +int compare_coeffs(const Complex &first, const Complex &second) { + if (first.real() < second.real()) return -1; + if (first.real() > second.real()) return 1; + if (first.imag() < second.imag()) return -1; + return (first.imag() == second.imag()) ? 0 : 1; +} +template <> +int compare_coeffs(const Expr &first, const Expr &second) { + // Comparison of SymEngine expressions will distinguish between e.g. integer + // 1, double 1., and complex 1., so only use for actual symbolic expressions + std::optional reduced_first = eval_expr_c(first); + std::optional reduced_second = eval_expr_c(second); + if (reduced_first && reduced_second) + return compare_coeffs(*reduced_first, *reduced_second); + else + return first.get_basic()->compare(second); +} + +std::set common_qubits( + const QubitPauliMap &first, const QubitPauliMap &second) { + std::set common; + for (const std::pair &p : first) { + if (p.second == Pauli::I) continue; + QubitPauliMap::const_iterator found = second.find(p.first); + if (found != second.end() && found->second == p.second) + common.insert(p.first); + } + return common; +} + +std::set common_indices( + const DensePauliMap &first, const DensePauliMap &second) { + std::set common; + unsigned min_size = std::min(first.size(), second.size()); + for (unsigned i = 0; i < min_size; ++i) { + Pauli p = first.at(i); + if (p != Pauli::I && p == second.at(i)) common.insert(i); + } + return common; +} + +std::set own_qubits( + const QubitPauliMap &first, const QubitPauliMap &second) { + std::set own; + for (const std::pair &p : first) { + if (p.second == Pauli::I) continue; + QubitPauliMap::const_iterator found = second.find(p.first); + if (found == second.end() || found->second == Pauli::I) own.insert(p.first); + } + return own; +} + +std::set own_indices( + const DensePauliMap &first, const DensePauliMap &second) { + std::set own; + unsigned min_size = std::min(first.size(), second.size()); + for (unsigned i = 0; i < min_size; ++i) { + if (first.at(i) != Pauli::I && second.at(i) == Pauli::I) own.insert(i); + } + for (unsigned i = min_size; i < first.size(); ++i) { + if (first.at(i) != Pauli::I) own.insert(i); + } + return own; +} + +std::set conflicting_qubits( + const QubitPauliMap &first, const QubitPauliMap &second) { + std::set conflicts; + for (const std::pair &p : first) { + if (p.second == Pauli::I) continue; + QubitPauliMap::const_iterator found = second.find(p.first); + if (found != second.end() && found->second != Pauli::I && + found->second != p.second) + conflicts.insert(p.first); + } + return conflicts; +} + +std::set conflicting_indices( + const DensePauliMap &first, const DensePauliMap &second) { + std::set conflicts; + unsigned min_size = std::min(first.size(), second.size()); + for (unsigned i = 0; i < min_size; ++i) { + Pauli p = first.at(i); + Pauli p2 = second.at(i); + if (p != Pauli::I && p2 != Pauli::I && p != p2) conflicts.insert(i); + } + return conflicts; +} + +template <> +bool commuting_containers( + const QubitPauliMap &first, const QubitPauliMap &second) { + return (conflicting_qubits(first, second).size() % 2) == 0; +} + +template <> +bool commuting_containers( + const DensePauliMap &first, const DensePauliMap &second) { + return (conflicting_indices(first, second).size() % 2) == 0; +} + +template <> +void print_paulis( + std::ostream &os, const QubitPauliMap &paulis) { + os << "("; + QubitPauliMap::const_iterator i = paulis.begin(); + while (i != paulis.end()) { + switch (i->second) { + case Pauli::I: { + os << "I"; + break; + } + case Pauli::X: { + os << "X"; + break; + } + case Pauli::Y: { + os << "Y"; + break; + } + case Pauli::Z: { + os << "Z"; + break; + } + } + os << i->first.repr(); + ++i; + if (i != paulis.end()) os << ", "; + } + os << ")"; +} + +template <> +void print_paulis( + std::ostream &os, const DensePauliMap &paulis) { + for (const Pauli &p : paulis) { + switch (p) { + case Pauli::I: { + os << "I"; + break; + } + case Pauli::X: { + os << "X"; + break; + } + case Pauli::Y: { + os << "Y"; + break; + } + case Pauli::Z: { + os << "Z"; + break; + } + } + } +} + +template <> +void print_coeff(std::ostream &, const no_coeff_t &) {} + +template <> +void print_coeff( + std::ostream &os, const quarter_turns_t &coeff) { + switch (coeff % 4) { + case 1: { + os << "i*"; + break; + } + case 2: { + os << "-"; + break; + } + case 3: { + os << "-i*"; + break; + } + default: { + break; + } + } +} + +template <> +void print_coeff(std::ostream &os, const Complex &coeff) { + if (coeff == -1.) { + os << "-"; + } else if (coeff != 1.) { + os << coeff << "*"; + } +} + +template <> +void print_coeff(std::ostream &os, const Expr &coeff) { + // Expressions distinguish integers from floating-points + if (coeff == -1. || coeff == -1) { + os << "-"; + } else if (coeff != 1. && coeff != 1) { + os << "(" << coeff << ")*"; + } +} + +template <> +void hash_combine_paulis( + std::size_t &seed, const QubitPauliMap &paulis) { + for (const std::pair &qp : paulis) { + if (qp.second != Pauli::I) { + boost::hash_combine(seed, qp.first); + boost::hash_combine(seed, qp.second); + } + } +} + +template <> +void hash_combine_paulis( + std::size_t &seed, const DensePauliMap &paulis) { + DensePauliMap::const_reverse_iterator i = paulis.rbegin(); + while (i != paulis.rend() && *i == Pauli::I) { + ++i; + } + while (i != paulis.rend()) { + boost::hash_combine(seed, *i); + ++i; + } +} + +template <> +void hash_combine_coeff(std::size_t &, const no_coeff_t &) {} + +template <> +void hash_combine_coeff( + std::size_t &seed, const quarter_turns_t &coeff) { + boost::hash_combine(seed, coeff % 4); +} + +template <> +void hash_combine_coeff(std::size_t &seed, const Complex &coeff) { + boost::hash_combine(seed, coeff); +} + +template <> +void hash_combine_coeff(std::size_t &seed, const Expr &coeff) { + boost::hash_combine(seed, coeff.get_basic()->hash()); +} + +template <> +unsigned n_ys(const QubitPauliMap &paulis) { + unsigned n = 0; + for (const std::pair &qp : paulis) { + if (qp.second == Pauli::Y) ++n; + } + return n; +} + +template <> +unsigned n_ys(const DensePauliMap &paulis) { + unsigned n = 0; + for (const Pauli &p : paulis) { + if (p == Pauli::Y) ++n; + } + return n; +} + +const std::map, std::pair> & +get_mult_matrix() { + static const std::map< + std::pair, std::pair> + mult_matrix{ + {{Pauli::I, Pauli::I}, {0, Pauli::I}}, + {{Pauli::I, Pauli::X}, {0, Pauli::X}}, + {{Pauli::I, Pauli::Y}, {0, Pauli::Y}}, + {{Pauli::I, Pauli::Z}, {0, Pauli::Z}}, + {{Pauli::X, Pauli::I}, {0, Pauli::X}}, + {{Pauli::X, Pauli::X}, {0, Pauli::I}}, + {{Pauli::X, Pauli::Y}, {1, Pauli::Z}}, + {{Pauli::X, Pauli::Z}, {3, Pauli::Y}}, + {{Pauli::Y, Pauli::I}, {0, Pauli::Y}}, + {{Pauli::Y, Pauli::X}, {3, Pauli::Z}}, + {{Pauli::Y, Pauli::Y}, {0, Pauli::I}}, + {{Pauli::Y, Pauli::Z}, {1, Pauli::X}}, + {{Pauli::Z, Pauli::I}, {0, Pauli::Z}}, + {{Pauli::Z, Pauli::X}, {1, Pauli::Y}}, + {{Pauli::Z, Pauli::Y}, {3, Pauli::X}}, + {{Pauli::Z, Pauli::Z}, {0, Pauli::I}}, + }; + return mult_matrix; +} + +template <> +std::pair multiply_strings( + const QubitPauliMap &first, const QubitPauliMap &second) { + quarter_turns_t total_turns = 0; + QubitPauliMap result; + QubitPauliMap::const_iterator fi = first.begin(); + QubitPauliMap::const_iterator si = second.begin(); + while (fi != first.end()) { + while (si != second.end() && si->first < fi->first) { + result.insert(*si); + ++si; + } + if (si != second.end() && si->first == fi->first) { + // Pauli in the same position, so need to multiply + const std::pair &prod = + get_mult_matrix().at({fi->second, si->second}); + total_turns += prod.first; + if (prod.second != Pauli::I) { + result.insert({fi->first, prod.second}); + } + ++si; + } else { + result.insert(*fi); + } + ++fi; + } + while (si != second.end()) { + result.insert(*si); + ++si; + } + return {total_turns, result}; +} + +template <> +std::pair multiply_strings( + const DensePauliMap &first, const DensePauliMap &second) { + quarter_turns_t total_turns = 0; + DensePauliMap result; + DensePauliMap::const_iterator fi = first.begin(); + DensePauliMap::const_iterator si = second.begin(); + while (fi != first.end() && si != second.end()) { + const std::pair &prod = + get_mult_matrix().at({*fi, *si}); + total_turns += prod.first; + result.push_back(prod.second); + ++fi; + ++si; + } + while (fi != first.end()) { + result.push_back(*fi); + ++fi; + } + while (si != second.end()) { + result.push_back(*si); + ++si; + } + return {total_turns, result}; +} + +template <> +no_coeff_t multiply_coeffs(const no_coeff_t &, const no_coeff_t &) { + return {}; +} + +template <> +quarter_turns_t multiply_coeffs( + const quarter_turns_t &first, const quarter_turns_t &second) { + return (first + second) % 4; +} + +template <> +Complex multiply_coeffs(const Complex &first, const Complex &second) { + return first * second; +} + +template <> +Expr multiply_coeffs(const Expr &first, const Expr &second) { + return first * second; +} + +static const CmplxSpMat const_2x2_matrix( + Complex tl, Complex tr, Complex bl, Complex br) { + CmplxSpMat m(2, 2); + if (tl != czero) { + m.insert(0, 0) = tl; + } + if (tr != czero) { + m.insert(0, 1) = tr; + } + if (bl != czero) { + m.insert(1, 0) = bl; + } + if (br != czero) { + m.insert(1, 1) = br; + } + return m; +} + +static const CmplxSpMat &pauli_sparse_mat(Pauli p) { + static const CmplxSpMat I_mat = const_2x2_matrix(1, 0, 0, 1); + static const CmplxSpMat X_mat = const_2x2_matrix(0, 1, 1, 0); + static const CmplxSpMat Y_mat = const_2x2_matrix(0, -i_, i_, 0); + static const CmplxSpMat Z_mat = const_2x2_matrix(1, 0, 0, -1); + switch (p) { + case Pauli::X: + return X_mat; + case Pauli::Y: + return Y_mat; + case Pauli::Z: + return Z_mat; + default: + TKET_ASSERT(p == Pauli::I); + return I_mat; + } +} + +template <> +CmplxSpMat to_sparse_matrix(const QubitPauliMap &paulis) { + DensePauliMap matrix_paulis; + for (const std::pair &pair : paulis) + matrix_paulis.push_back(pair.second); + return to_sparse_matrix(matrix_paulis); +} +template <> +CmplxSpMat to_sparse_matrix(const DensePauliMap &paulis) { + CmplxSpMat result = CmplxSpMat(1, 1); + result.insert(0, 0) = 1.; + for (Pauli p : paulis) { + const CmplxSpMat pauli_mat = pauli_sparse_mat(p); + result = Eigen::KroneckerProductSparse(result, pauli_mat).eval(); + } + return result; +} + +template <> +CmplxSpMat to_sparse_matrix( + const QubitPauliMap &paulis, unsigned n_qubits) { + qubit_vector_t qubits(n_qubits); + for (unsigned i = 0; i < n_qubits; ++i) qubits.at(i) = Qubit(i); + return to_sparse_matrix(paulis, qubits); +} +template <> +CmplxSpMat to_sparse_matrix( + const DensePauliMap &paulis, unsigned n_qubits) { + if (n_qubits < paulis.size()) + throw std::logic_error( + "Called to_sparse_matrix for fewer qubits than in the Pauli string."); + DensePauliMap matrix_paulis = paulis; + for (unsigned i = paulis.size(); i < n_qubits; ++i) + matrix_paulis.push_back(Pauli::I); + return to_sparse_matrix(matrix_paulis); +} + +template <> +CmplxSpMat to_sparse_matrix( + const QubitPauliMap &paulis, const qubit_vector_t &qubits) { + DensePauliMap matrix_paulis(qubits.size(), Pauli::I); + std::map index_map; + for (const Qubit &q : qubits) + index_map.insert({q, (unsigned)index_map.size()}); + if (index_map.size() != qubits.size()) + throw std::logic_error( + "Qubit list given to to_sparse_matrix contains repeats."); + for (const std::pair &pair : paulis) { + std::map::iterator found = index_map.find(pair.first); + if (found == index_map.end()) + throw std::logic_error( + "Qubit list given to to_sparse_matrix doesn't contain " + + pair.first.repr()); + matrix_paulis.at(found->second) = pair.second; + } + return to_sparse_matrix(matrix_paulis); +} +template <> +CmplxSpMat to_sparse_matrix( + const DensePauliMap &paulis, const qubit_vector_t &qubits) { + return to_sparse_matrix( + cast_container(paulis), qubits); +} + +} // namespace tket diff --git a/tket/test/CMakeLists.txt b/tket/test/CMakeLists.txt index 93ec203b6f..37b4eed2be 100644 --- a/tket/test/CMakeLists.txt +++ b/tket/test/CMakeLists.txt @@ -98,7 +98,7 @@ add_executable(test-tket src/TokenSwapping/test_SwapsFromQubitMapping.cpp src/TokenSwapping/test_VariousPartialTsa.cpp src/Architecture/test_SubgraphMonomorphisms.cpp - src/test_PauliString.cpp + src/test_PauliTensor.cpp src/Ops/test_ClassicalOps.cpp src/Ops/test_Expression.cpp src/Ops/test_Ops.cpp diff --git a/tket/test/src/Circuit/test_Boxes.cpp b/tket/test/src/Circuit/test_Boxes.cpp index a5cde9a26f..e2c8afd1ac 100644 --- a/tket/test/src/Circuit/test_Boxes.cpp +++ b/tket/test/src/Circuit/test_Boxes.cpp @@ -256,7 +256,7 @@ SCENARIO("box daggers", "[boxes]") { 4., 2. + 3. * i_, 5.; ExpBox ebox(A, -0.5); // PauliExpBox - PauliExpBox pbox({Pauli::X, Pauli::Y, Pauli::Z}, 0.8); + PauliExpBox pbox(SymPauliTensor({Pauli::X, Pauli::Y, Pauli::Z}, 0.8)); // Put all these boxes into a circuit Circuit w(3); @@ -1069,10 +1069,10 @@ SCENARIO("Checking equality", "[boxes]") { } GIVEN("Pauli gadgets") { double t = 1.687029013593215; - PauliExpBox pbox({Pauli::X}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::X}, t)); WHEN("both arguments are equal") { REQUIRE(pbox == pbox); } WHEN("both arguments are different") { - PauliExpBox pbox2({Pauli::Y}, t); + PauliExpBox pbox2(SymPauliTensor({Pauli::Y}, t)); REQUIRE(pbox != pbox2); } } @@ -1163,9 +1163,9 @@ SCENARIO("Checking equality", "[boxes]") { } } GIVEN("StabiliserAssertionBox") { - PauliStabiliser p1 = {{Pauli::X, Pauli::X}, true}; - PauliStabiliser p2 = {{Pauli::Z, Pauli::Z}, true}; - PauliStabiliser p3 = {{Pauli::Z, Pauli::Z}, false}; + PauliStabiliser p1 = {{Pauli::X, Pauli::X}, 0}; + PauliStabiliser p2 = {{Pauli::Z, Pauli::Z}, 0}; + PauliStabiliser p3 = {{Pauli::Z, Pauli::Z}, 2}; StabiliserAssertionBox box({p1, p2}); WHEN("both arguments are equal") { REQUIRE(box == box); } WHEN("different ids but equivalent stabilisers") { @@ -1302,52 +1302,72 @@ SCENARIO("Checking equality", "[boxes]") { } } GIVEN("PauliExpBox") { - PauliExpBox pbox({Pauli::X, Pauli::Y, Pauli::Z}, 0.8); + PauliExpBox pbox(SymPauliTensor({Pauli::X, Pauli::Y, Pauli::Z}, 0.8)); WHEN("both arguments are equal") { REQUIRE(pbox == pbox); } WHEN("different ids but same arguments") { - REQUIRE(pbox == PauliExpBox({Pauli::X, Pauli::Y, Pauli::Z}, 0.8)); + REQUIRE( + pbox == + PauliExpBox(SymPauliTensor({Pauli::X, Pauli::Y, Pauli::Z}, 0.8))); } WHEN("different ids, equivalent angle") { - REQUIRE(pbox == PauliExpBox({Pauli::X, Pauli::Y, Pauli::Z}, 4.8)); + REQUIRE( + pbox == + PauliExpBox(SymPauliTensor({Pauli::X, Pauli::Y, Pauli::Z}, 4.8))); } WHEN("different arguments") { - REQUIRE(pbox != PauliExpBox({Pauli::X, Pauli::Y, Pauli::Z}, 0.9)); + REQUIRE( + pbox != + PauliExpBox(SymPauliTensor({Pauli::X, Pauli::Y, Pauli::Z}, 0.9))); } } GIVEN("PauliExpPairBox") { - PauliExpPairBox pbox({Pauli::X}, 1.0, {Pauli::I}, 0.0); + PauliExpPairBox pbox( + SymPauliTensor({Pauli::X}, 1.0), SymPauliTensor({Pauli::I}, 0.0)); WHEN("both arguments are equal") { REQUIRE(pbox == pbox); } WHEN("different ids but same arguments") { - REQUIRE(pbox == PauliExpPairBox({Pauli::X}, 1.0, {Pauli::I}, 0.0)); + REQUIRE( + pbox == PauliExpPairBox( + SymPauliTensor({Pauli::X}, 1.0), + SymPauliTensor({Pauli::I}, 0.0))); } WHEN("different ids, equivalent angle") { - REQUIRE(pbox == PauliExpPairBox({Pauli::X}, 1.0, {Pauli::I}, 4.0)); + REQUIRE( + pbox == PauliExpPairBox( + SymPauliTensor({Pauli::X}, 1.0), + SymPauliTensor({Pauli::I}, 4.0))); } WHEN("different arguments") { - REQUIRE(pbox != PauliExpPairBox({Pauli::X}, -1.0, {Pauli::I}, 0.0)); + REQUIRE( + pbox != PauliExpPairBox( + SymPauliTensor({Pauli::X}, -1.0), + SymPauliTensor({Pauli::I}, 0.0))); } } GIVEN("PauliExpCommutingSetBox") { PauliExpCommutingSetBox pbox( - {{{Pauli::X}, 1.0}, {{Pauli::I}, 1.2}, {{Pauli::I}, -0.5}}); + {SymPauliTensor({Pauli::X}, 1.0), SymPauliTensor({Pauli::I}, 1.2), + SymPauliTensor({Pauli::I}, -0.5)}); WHEN("both arguments are equal") { REQUIRE(pbox == pbox); } WHEN("different ids but same arguments") { REQUIRE( pbox == PauliExpCommutingSetBox( - {{{Pauli::X}, 1.0}, {{Pauli::I}, 1.2}, {{Pauli::I}, -0.5}})); + {SymPauliTensor({Pauli::X}, 1.0), SymPauliTensor({Pauli::I}, 1.2), + SymPauliTensor({Pauli::I}, -0.5)})); } WHEN("different ids, equivalent angles") { REQUIRE( - pbox == - PauliExpCommutingSetBox( - {{{Pauli::X}, -3.0}, {{Pauli::I}, 5.2}, {{Pauli::I}, -0.5}})); + pbox == PauliExpCommutingSetBox( + {SymPauliTensor({Pauli::X}, -3.0), + SymPauliTensor({Pauli::I}, 5.2), + SymPauliTensor({Pauli::I}, -0.5)})); } WHEN("different arguments") { REQUIRE( pbox != PauliExpCommutingSetBox( - {{{Pauli::Y}, 1.0}, {{Pauli::I}, 1.2}, {{Pauli::I}, -0.5}})); + {SymPauliTensor({Pauli::Y}, 1.0), SymPauliTensor({Pauli::I}, 1.2), + SymPauliTensor({Pauli::I}, -0.5)})); } } GIVEN("ConjugationBox") { diff --git a/tket/test/src/Circuit/test_Circ.cpp b/tket/test/src/Circuit/test_Circ.cpp index 98ff1ccf10..a2536bf2e4 100644 --- a/tket/test/src/Circuit/test_Circ.cpp +++ b/tket/test/src/Circuit/test_Circ.cpp @@ -37,7 +37,6 @@ #include "tket/Transformations/Replacement.hpp" #include "tket/Transformations/Transform.hpp" #include "tket/Utils/MatrixAnalysis.hpp" -#include "tket/Utils/PauliStrings.hpp" namespace tket { namespace test_Circ { @@ -2067,8 +2066,7 @@ SCENARIO("Decomposing a multi-qubit operation into CXs") { WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } const auto u = tket_sim::get_unitary(rep); - const QubitPauliString pauliop( - {{Qubit(0), Pauli::Z}, {Qubit(1), Pauli::Z}}); + const PauliString pauliop({Pauli::Z, Pauli::Z}); Eigen::MatrixXcd exponent = -pauliop.to_sparse_matrix(2) * 0.15 * PI * i_; Eigen::MatrixXcd correct = exponent.exp(); REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); @@ -2122,8 +2120,7 @@ SCENARIO("Decomposing a multi-qubit operation into CXs") { WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } const auto u = tket_sim::get_unitary(rep); - const QubitPauliString pauliop( - {{Qubit(0), Pauli::X}, {Qubit(1), Pauli::X}}); + const PauliString pauliop({Pauli::X, Pauli::X}); Eigen::MatrixXcd exponent = -pauliop.to_sparse_matrix(2) * 0.25 * PI * i_; Eigen::MatrixXcd correct = exponent.exp(); REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); @@ -2138,12 +2135,9 @@ SCENARIO("Decomposing a multi-qubit operation into CXs") { WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } const auto u = tket_sim::get_unitary(rep); - const QubitPauliString pauliop01( - {{Qubit(0), Pauli::X}, {Qubit(1), Pauli::X}, {Qubit(2), Pauli::I}}); - const QubitPauliString pauliop12( - {{Qubit(0), Pauli::I}, {Qubit(1), Pauli::X}, {Qubit(2), Pauli::X}}); - const QubitPauliString pauliop02( - {{Qubit(0), Pauli::X}, {Qubit(1), Pauli::I}, {Qubit(2), Pauli::X}}); + const PauliString pauliop01({Pauli::X, Pauli::X, Pauli::I}); + const PauliString pauliop12({Pauli::I, Pauli::X, Pauli::X}); + const PauliString pauliop02({Pauli::X, Pauli::I, Pauli::X}); Eigen::MatrixXcd exponent = -(pauliop01.to_sparse_matrix(3) + pauliop12.to_sparse_matrix(3) + pauliop02.to_sparse_matrix(3)) * @@ -2162,8 +2156,7 @@ SCENARIO("Decomposing a multi-qubit operation into CXs") { WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } const auto u = tket_sim::get_unitary(rep); - const QubitPauliString pauliop( - {{Qubit(0), Pauli::Z}, {Qubit(1), Pauli::Z}}); + const PauliString pauliop({Pauli::Z, Pauli::Z}); Eigen::MatrixXcd exponent = -pauliop.to_sparse_matrix(2) * 0.25 * PI * i_; Eigen::MatrixXcd correct = exponent.exp(); REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); @@ -2430,7 +2423,7 @@ SCENARIO("Decomposing a single qubit gate") { WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } const auto u = tket_sim::get_unitary(rep); - const QubitPauliString pauliop({{Qubit(0), Pauli::X}}); + const PauliString pauliop({Pauli::X}); Eigen::MatrixXcd exponent = -pauliop.to_sparse_matrix(1) * 0.15 * PI * i_; Eigen::MatrixXcd correct = exponent.exp(); REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); @@ -2449,7 +2442,7 @@ SCENARIO("Decomposing a single qubit gate") { WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } const auto u = tket_sim::get_unitary(rep); - const QubitPauliString pauliop({{Qubit(0), Pauli::Y}}); + const PauliString pauliop({Pauli::Y}); Eigen::MatrixXcd exponent = -pauliop.to_sparse_matrix(1) * 0.2 * PI * i_; Eigen::MatrixXcd correct = exponent.exp(); REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); @@ -2468,7 +2461,7 @@ SCENARIO("Decomposing a single qubit gate") { WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } const auto u = tket_sim::get_unitary(rep); - const QubitPauliString pauliop({{Qubit(0), Pauli::Z}}); + const PauliString pauliop({Pauli::Z}); Eigen::MatrixXcd exponent = -pauliop.to_sparse_matrix(1) * 0.35 * PI * i_; Eigen::MatrixXcd correct = exponent.exp(); REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); @@ -2507,11 +2500,10 @@ SCENARIO("Decomposing a single qubit gate") { WHEN("ZX circuit replacement") { rep = CX_ZX_circ_from_op(op); } const auto u = tket_sim::get_unitary(rep); - const QubitPauliString pauliop({{Qubit(0), Pauli::Z}}); + const PauliString pauliop({Pauli::Z}); Eigen::MatrixXcd exponent = -pauliop.to_sparse_matrix(1) * 0.65 * PI * i_; Eigen::MatrixXcd phaser = exponent.exp(); - exponent = -QubitPauliString({{Qubit(0), Pauli::X}}).to_sparse_matrix(1) * - 0.3 * PI * i_; + exponent = -PauliString({Pauli::X}).to_sparse_matrix(1) * 0.3 * PI * i_; Eigen::MatrixXcd correct = phaser * exponent.exp() * phaser.adjoint(); REQUIRE((u - correct).cwiseAbs().sum() < ERR_EPS); } diff --git a/tket/test/src/Circuit/test_PauliExpBoxes.cpp b/tket/test/src/Circuit/test_PauliExpBoxes.cpp index a0af652a06..96b3f368da 100644 --- a/tket/test/src/Circuit/test_PauliExpBoxes.cpp +++ b/tket/test/src/Circuit/test_PauliExpBoxes.cpp @@ -27,7 +27,7 @@ namespace test_PauliExpBoxes { SCENARIO("Pauli gadgets", "[boxes]") { GIVEN("Basis Circuit check") { - PauliExpBox pbox({Pauli::X}, 1.0); + PauliExpBox pbox(SymPauliTensor({Pauli::X}, 1.0)); auto circ = pbox.to_circuit(); circ->decompose_boxes_recursively(); Circuit comp(1); @@ -46,8 +46,8 @@ SCENARIO("Pauli gadgets", "[boxes]") { // ---PauliExpBox([X], t)----Rx(-t)--- should be the identity double t = 1.687029013593215; Circuit c(1); - std::vector pauli_x = {Pauli::X}; - PauliExpBox pbox(pauli_x, t); + DensePauliMap pauli_x = {Pauli::X}; + PauliExpBox pbox(SymPauliTensor(pauli_x, t)); REQUIRE(pbox.get_paulis() == pauli_x); c.add_box(pbox, uvec{0}); c.add_op(OpType::Rx, -t, {0}); @@ -58,7 +58,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { // ---PauliExpBox([Y], t)----Ry(-t)--- should be the identity double t = 1.6791969622440162; Circuit c(1); - PauliExpBox pbox({Pauli::Y}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Y}, t)); c.add_box(pbox, uvec{0}); c.add_op(OpType::Ry, -t, {0}); Eigen::Matrix2Xcd u = tket_sim::get_unitary(c); @@ -68,7 +68,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { // ---PauliExpBox([Z], t)----Rz(-t)--- should be the identity double t = 1.7811410013115163; Circuit c(1); - PauliExpBox pbox({Pauli::Z}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Z}, t)); c.add_box(pbox, uvec{0}); c.add_op(OpType::Rz, -t, {0}); Eigen::Matrix2Xcd u = tket_sim::get_unitary(c); @@ -81,7 +81,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::I, Pauli::I}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::I, Pauli::I}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -93,7 +93,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::I, Pauli::X}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::I, Pauli::X}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -105,7 +105,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::I, Pauli::Y}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::I, Pauli::Y}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -117,7 +117,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::I, Pauli::Z}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::I, Pauli::Z}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -129,7 +129,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::X, Pauli::I}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::X, Pauli::I}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -141,7 +141,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::X, Pauli::X}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::X, Pauli::X}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -153,7 +153,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::X, Pauli::Y}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::X, Pauli::Y}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -165,7 +165,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::X, Pauli::Z}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::X, Pauli::Z}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -177,7 +177,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::Y, Pauli::I}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Y, Pauli::I}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -189,7 +189,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::Y, Pauli::X}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Y, Pauli::X}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -201,7 +201,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::Y, Pauli::Y}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Y, Pauli::Y}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -213,7 +213,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::Y, Pauli::Z}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Y, Pauli::Z}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -225,7 +225,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::Z, Pauli::I}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Z, Pauli::I}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -237,7 +237,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::Z, Pauli::X}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Z, Pauli::X}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -249,7 +249,7 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::Z, Pauli::Y}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Z, Pauli::Y}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -261,21 +261,22 @@ SCENARIO("Pauli gadgets", "[boxes]") { ExpBox ebox(a, +0.5 * PI * t); Circuit c(2); c.add_box(ebox, {0, 1}); - PauliExpBox pbox({Pauli::Z, Pauli::Z}, t); + PauliExpBox pbox(SymPauliTensor({Pauli::Z, Pauli::Z}, t)); c.add_box(pbox, {0, 1}); Eigen::MatrixXcd u = tket_sim::get_unitary(c); REQUIRE((u - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); } GIVEN("complex coefficient") { Expr ei{SymEngine::I}; - PauliExpBox pebox({Pauli::Z}, ei); + PauliExpBox pebox(SymPauliTensor({Pauli::Z}, ei)); Expr p = pebox.get_phase(); REQUIRE(p == ei); } } SCENARIO("Pauli gadget pairs", "[boxes]") { GIVEN("Basis Circuit check") { - PauliExpPairBox pbox({Pauli::X}, 1.0, {Pauli::I}, 0.0); + PauliExpPairBox pbox( + SymPauliTensor({Pauli::X}, 1.0), SymPauliTensor({Pauli::I}, 0.0)); auto circ = pbox.to_circuit(); circ->decompose_boxes_recursively(); Circuit comp(1); @@ -292,15 +293,18 @@ SCENARIO("Pauli gadget pairs", "[boxes]") { REQUIRE(*empty_pbox_circuit == empty_circuit); } GIVEN("Construction with two pauli strings of different length throws") { - auto pauli_string0 = std::vector({Pauli::X, Pauli::Z}); - auto pauli_string1 = std::vector({Pauli::X, Pauli::Z, Pauli::I}); + DensePauliMap pauli_string0{Pauli::X, Pauli::Z}; + DensePauliMap pauli_string1{Pauli::X, Pauli::Z, Pauli::I}; REQUIRE_THROWS_AS( - PauliExpPairBox(pauli_string0, 1.0, pauli_string1, 1.0), + PauliExpPairBox( + SymPauliTensor(pauli_string0, 1.0), + SymPauliTensor(pauli_string1, 1.0)), PauliExpBoxInvalidity); } GIVEN("is_clifford test cases") { SECTION("Empty Paulis") { - REQUIRE(PauliExpPairBox({}, 1.2, {}, 0.1).is_clifford()); + REQUIRE(PauliExpPairBox(SymPauliTensor({}, 1.2), SymPauliTensor({}, 0.1)) + .is_clifford()); } SECTION("Various phases") { auto phase_case = GENERATE( @@ -312,8 +316,8 @@ SCENARIO("Pauli gadget pairs", "[boxes]") { std::make_tuple(0.5, 2.0, true), std::make_tuple(0.0, 0.3, false), std::make_tuple(0.1, 0.3, false), std::make_tuple(1.1, 2.0, false)); auto pbox = PauliExpPairBox( - {Pauli::X, Pauli::Y}, get<0>(phase_case), {Pauli::X, Pauli::Y}, - get<1>(phase_case)); + SymPauliTensor({Pauli::X, Pauli::Y}, get<0>(phase_case)), + SymPauliTensor({Pauli::X, Pauli::Y}, get<1>(phase_case))); REQUIRE(pbox.is_clifford() == get<2>(phase_case)); } } @@ -322,23 +326,32 @@ SCENARIO("Pauli gadget pairs", "[boxes]") { auto b = SymTable::fresh_symbol("b"); auto ea = Expr(a); auto eb = Expr(b); - auto paulis0 = std::vector{Pauli::X}; - auto paulis1 = std::vector{Pauli::Z}; - REQUIRE(PauliExpPairBox(paulis0, 0.2, paulis1, 0.4).free_symbols().empty()); + DensePauliMap paulis0{Pauli::X}; + DensePauliMap paulis1{Pauli::Z}; + REQUIRE(PauliExpPairBox( + SymPauliTensor(paulis0, 0.2), SymPauliTensor(paulis1, 0.4)) + .free_symbols() + .empty()); REQUIRE( - PauliExpPairBox(paulis0, ea, paulis1, 0.4).free_symbols() == SymSet{a}); + PauliExpPairBox( + SymPauliTensor(paulis0, ea), SymPauliTensor(paulis1, 0.4)) + .free_symbols() == SymSet{a}); REQUIRE( - PauliExpPairBox(paulis0, 1.0, paulis1, eb).free_symbols() == SymSet{b}); + PauliExpPairBox( + SymPauliTensor(paulis0, 1.0), SymPauliTensor(paulis1, eb)) + .free_symbols() == SymSet{b}); REQUIRE( - PauliExpPairBox(paulis0, ea, paulis1, eb).free_symbols() == - SymSet{a, b}); + PauliExpPairBox( + SymPauliTensor(paulis0, ea), SymPauliTensor(paulis1, eb)) + .free_symbols() == SymSet{a, b}); } GIVEN("dagger") { auto ea = Expr(SymTable::fresh_symbol("a")); - auto paulis0 = std::vector{Pauli::X}; - auto paulis1 = std::vector{Pauli::Z}; + DensePauliMap paulis0{Pauli::X}; + DensePauliMap paulis1{Pauli::Z}; auto cx_config = CXConfigType::Star; - auto box = PauliExpPairBox(paulis0, ea, paulis1, 0.4, cx_config); + auto box = PauliExpPairBox( + SymPauliTensor(paulis0, ea), SymPauliTensor(paulis1, 0.4), cx_config); auto dagger_box = std::dynamic_pointer_cast(box.dagger()); @@ -352,14 +365,13 @@ SCENARIO("Pauli gadget pairs", "[boxes]") { } GIVEN("transpose") { auto ea = Expr(SymTable::fresh_symbol("a")); - auto paulis0 = - std::vector{Pauli::X, Pauli::Y, Pauli::Z, Pauli::I, Pauli::Y}; - auto paulis1 = - std::vector{Pauli::Y, Pauli::Y, Pauli::Z, Pauli::I, Pauli::Y}; + DensePauliMap paulis0{Pauli::X, Pauli::Y, Pauli::Z, Pauli::I, Pauli::Y}; + DensePauliMap paulis1{Pauli::Y, Pauli::Y, Pauli::Z, Pauli::I, Pauli::Y}; auto cx_config = CXConfigType::MultiQGate; WHEN("paulis1 contains odd number of Y") { - auto box = PauliExpPairBox(paulis0, ea, paulis1, 0.4, cx_config); + auto box = PauliExpPairBox( + SymPauliTensor(paulis0, ea), SymPauliTensor(paulis1, 0.4), cx_config); auto transpose_box = std::dynamic_pointer_cast(box.transpose()); const auto [actual_paulis0, actual_paulis1] = @@ -375,7 +387,8 @@ SCENARIO("Pauli gadget pairs", "[boxes]") { std::swap(paulis0, paulis1); WHEN("paulis0 contains odd number of Y") { - auto box = PauliExpPairBox(paulis0, ea, paulis1, 0.4, cx_config); + auto box = PauliExpPairBox( + SymPauliTensor(paulis0, ea), SymPauliTensor(paulis1, 0.4), cx_config); auto transpose_box = std::dynamic_pointer_cast(box.transpose()); const auto [actual_paulis0, actual_paulis1] = @@ -394,10 +407,11 @@ SCENARIO("Pauli gadget pairs", "[boxes]") { auto b = SymTable::fresh_symbol("b"); auto ea = Expr(a); auto eb = Expr(b); - auto paulis0 = std::vector{Pauli::X}; - auto paulis1 = std::vector{Pauli::Z}; + DensePauliMap paulis0{Pauli::X}; + DensePauliMap paulis1{Pauli::Z}; - auto box = PauliExpPairBox(paulis0, ea, paulis1, eb); + auto box = PauliExpPairBox( + SymPauliTensor(paulis0, ea), SymPauliTensor(paulis1, eb)); WHEN("only first phase is substituted") { SymEngine::map_basic_basic sub_map{std::make_pair(a, Expr(0.8))}; @@ -450,26 +464,25 @@ SCENARIO("Pauli gadget commuting sets", "[boxes]") { } GIVEN("Construction with no gadgets throws") { REQUIRE_THROWS_AS( - PauliExpCommutingSetBox( - std::vector, Expr>>{}), + PauliExpCommutingSetBox(std::vector{}), PauliExpBoxInvalidity); } GIVEN("Construction with pauli strings of different length throws") { - auto pauli_string0 = std::vector({Pauli::X, Pauli::Z}); - auto pauli_string1 = std::vector({Pauli::X, Pauli::I}); - auto pauli_string2 = std::vector({Pauli::X, Pauli::Z, Pauli::I}); + DensePauliMap pauli_string0{Pauli::X, Pauli::Z}; + DensePauliMap pauli_string1{Pauli::X, Pauli::I}; + DensePauliMap pauli_string2{Pauli::X, Pauli::Z, Pauli::I}; REQUIRE_THROWS_AS( PauliExpCommutingSetBox({ - {pauli_string0, 1.0}, - {pauli_string1, 1.0}, - {pauli_string2, 1.0}, + SymPauliTensor(pauli_string0, 1.0), + SymPauliTensor(pauli_string1, 1.0), + SymPauliTensor(pauli_string2, 1.0), }), PauliExpBoxInvalidity); } GIVEN("Construction with non-commuting pauli strings throws") { - auto pauli_string0 = std::vector({Pauli::X, Pauli::Z}); - auto pauli_string1 = std::vector({Pauli::Z, Pauli::I}); - auto pauli_string2 = std::vector({Pauli::X, Pauli::Z}); + DensePauliMap pauli_string0{Pauli::X, Pauli::Z}; + DensePauliMap pauli_string1{Pauli::Z, Pauli::I}; + DensePauliMap pauli_string2{Pauli::X, Pauli::Z}; REQUIRE_THROWS_AS( PauliExpCommutingSetBox({ {pauli_string0, 1.0}, @@ -562,12 +575,12 @@ SCENARIO("Pauli gadget commuting sets", "[boxes]") { auto pauli_gadgets = dagger_box->get_pauli_gadgets(); REQUIRE(pauli_gadgets.size() == 3); - REQUIRE(pauli_gadgets[0].first == paulis0); - REQUIRE(pauli_gadgets[0].second == -phase0); - REQUIRE(pauli_gadgets[1].first == paulis1); - REQUIRE(pauli_gadgets[1].second == -phase1); - REQUIRE(pauli_gadgets[2].first == paulis2); - REQUIRE(pauli_gadgets[2].second == -phase2); + REQUIRE(pauli_gadgets[0].string == paulis0); + REQUIRE(pauli_gadgets[0].coeff == -phase0); + REQUIRE(pauli_gadgets[1].string == paulis1); + REQUIRE(pauli_gadgets[1].coeff == -phase1); + REQUIRE(pauli_gadgets[2].string == paulis2); + REQUIRE(pauli_gadgets[2].coeff == -phase2); REQUIRE(dagger_box->get_cx_config() == cx_config); } GIVEN("transpose") { @@ -593,14 +606,14 @@ SCENARIO("Pauli gadget commuting sets", "[boxes]") { auto pauli_gadgets = transpose_box->get_pauli_gadgets(); REQUIRE(pauli_gadgets.size() == 4); - REQUIRE(pauli_gadgets[0].first == paulis0); - REQUIRE(pauli_gadgets[0].second == phase0); - REQUIRE(pauli_gadgets[1].first == paulis1); - REQUIRE(pauli_gadgets[1].second == -phase1); - REQUIRE(pauli_gadgets[2].first == paulis2); - REQUIRE(pauli_gadgets[2].second == phase2); - REQUIRE(pauli_gadgets[3].first == paulis3); - REQUIRE(pauli_gadgets[3].second == -phase3); + REQUIRE(pauli_gadgets[0].string == paulis0); + REQUIRE(pauli_gadgets[0].coeff == phase0); + REQUIRE(pauli_gadgets[1].string == paulis1); + REQUIRE(pauli_gadgets[1].coeff == -phase1); + REQUIRE(pauli_gadgets[2].string == paulis2); + REQUIRE(pauli_gadgets[2].coeff == phase2); + REQUIRE(pauli_gadgets[3].string == paulis3); + REQUIRE(pauli_gadgets[3].coeff == -phase3); REQUIRE(transpose_box->get_cx_config() == cx_config); } GIVEN("symbol_substitution") { @@ -624,34 +637,34 @@ SCENARIO("Pauli gadget commuting sets", "[boxes]") { auto sub_box1 = std::dynamic_pointer_cast( box.symbol_substitution(sub_map1)); auto pauli_gadgets1 = sub_box1->get_pauli_gadgets(); - REQUIRE(pauli_gadgets1[0].second == sub_a); - REQUIRE(pauli_gadgets1[1].second == eb); - REQUIRE(pauli_gadgets1[2].second == ec); + REQUIRE(pauli_gadgets1[0].coeff == sub_a); + REQUIRE(pauli_gadgets1[1].coeff == eb); + REQUIRE(pauli_gadgets1[2].coeff == ec); SymEngine::map_basic_basic sub_map2{std::make_pair(b, sub_b)}; auto sub_box2 = std::dynamic_pointer_cast( box.symbol_substitution(sub_map2)); auto pauli_gadgets2 = sub_box2->get_pauli_gadgets(); - REQUIRE(pauli_gadgets2[0].second == ea); - REQUIRE(pauli_gadgets2[1].second == sub_b); - REQUIRE(pauli_gadgets2[2].second == ec); + REQUIRE(pauli_gadgets2[0].coeff == ea); + REQUIRE(pauli_gadgets2[1].coeff == sub_b); + REQUIRE(pauli_gadgets2[2].coeff == ec); SymEngine::map_basic_basic sub_map3{std::make_pair(c, sub_c)}; auto sub_box3 = std::dynamic_pointer_cast( box.symbol_substitution(sub_map3)); auto pauli_gadgets3 = sub_box3->get_pauli_gadgets(); - REQUIRE(pauli_gadgets3[0].second == ea); - REQUIRE(pauli_gadgets3[1].second == eb); - REQUIRE(pauli_gadgets3[2].second == sub_c); + REQUIRE(pauli_gadgets3[0].coeff == ea); + REQUIRE(pauli_gadgets3[1].coeff == eb); + REQUIRE(pauli_gadgets3[2].coeff == sub_c); sub_map1.merge(sub_map2); sub_map1.merge(sub_map3); auto sub_box4 = std::dynamic_pointer_cast( box.symbol_substitution(sub_map1)); auto pauli_gadgets4 = sub_box4->get_pauli_gadgets(); - REQUIRE(pauli_gadgets4[0].second == sub_a); - REQUIRE(pauli_gadgets4[1].second == sub_b); - REQUIRE(pauli_gadgets4[2].second == sub_c); + REQUIRE(pauli_gadgets4[0].coeff == sub_a); + REQUIRE(pauli_gadgets4[1].coeff == sub_b); + REQUIRE(pauli_gadgets4[2].coeff == sub_c); } } diff --git a/tket/test/src/Ops/test_Ops.cpp b/tket/test/src/Ops/test_Ops.cpp index 6bf741f9d5..786f76cf67 100644 --- a/tket/test/src/Ops/test_Ops.cpp +++ b/tket/test/src/Ops/test_Ops.cpp @@ -242,7 +242,7 @@ SCENARIO("Check op retrieval overloads are working correctly.", "[ops]") { double t = 0.5; // Construct a Pauli box with an even number of Y-gates const PauliExpBox pbox_e( - {Pauli::X, Pauli::Y, Pauli::Z, Pauli::Y, Pauli::X}, t); + SymPauliTensor({Pauli::X, Pauli::Y, Pauli::Z, Pauli::Y, Pauli::X}, t)); const Op_ptr pbox_t_ptr = pbox_e.transpose(); // Casting the PauliExpBox type std::shared_ptr pbox_t = @@ -251,7 +251,8 @@ SCENARIO("Check op retrieval overloads are working correctly.", "[ops]") { REQUIRE(pbox_t->get_phase() == t); // Construct a Pauli box with an odd number of Y-gates - const PauliExpBox pbox_o({Pauli::X, Pauli::Y, Pauli::Z, Pauli::X}, t); + const PauliExpBox pbox_o( + SymPauliTensor({Pauli::X, Pauli::Y, Pauli::Z, Pauli::X}, t)); const Op_ptr pbox_o_t_ptr = pbox_o.transpose(); // Casting the PauliExpBox type std::shared_ptr pbox_o_t = diff --git a/tket/test/src/Simulation/test_PauliExpBoxUnitaryCalculator.cpp b/tket/test/src/Simulation/test_PauliExpBoxUnitaryCalculator.cpp index ec9b126ca3..c4686dc3d9 100644 --- a/tket/test/src/Simulation/test_PauliExpBoxUnitaryCalculator.cpp +++ b/tket/test/src/Simulation/test_PauliExpBoxUnitaryCalculator.cpp @@ -43,7 +43,7 @@ struct GroupPropertyPauliTester { const auto matrix_size = get_matrix_size(pauli_string.size()); for (unsigned ii = 0; ii < phases.size(); ++ii) { - PauliExpBox pe_box(pauli_string, phases[ii]); + PauliExpBox pe_box(SymPauliTensor(pauli_string, phases[ii])); const auto triplets = tket_sim::internal::get_triplets(pe_box); sparse_matrices[ii] = get_sparse_square_matrix(triplets, matrix_size); } @@ -58,7 +58,7 @@ struct GroupPropertyPauliTester { CHECK(dense_matr1.isApprox(dense_matr2)); // Inverse. - PauliExpBox pe_box(pauli_string, -phases[0]); + PauliExpBox pe_box(SymPauliTensor(pauli_string, -phases[0])); const auto triplets = tket_sim::internal::get_triplets(pe_box); sparse_matrices[1] = get_sparse_square_matrix(triplets, matrix_size); dense_matr1 = sparse_matrices[0] * sparse_matrices[1]; @@ -106,7 +106,7 @@ struct DirectTensorProductTester { void test(const std::vector& pauli_string) { const auto matrix_size = get_matrix_size(pauli_string.size()); - PauliExpBox pe_box(pauli_string, phase); + PauliExpBox pe_box(SymPauliTensor(pauli_string, phase)); const auto triplets = tket_sim::internal::get_triplets(pe_box); sparse_matrix = get_sparse_square_matrix(triplets, matrix_size); dense_matrix = sparse_matrix; @@ -181,7 +181,7 @@ struct CompareWithSimulatorPauliTester { REQUIRE(simulator_result.rows() == matr_size); REQUIRE(simulator_result.cols() == matr_size); - PauliExpBox pe_box(paulis, phase[0]); + PauliExpBox pe_box(SymPauliTensor(paulis, phase[0])); const auto triplets = tket_sim::internal::get_triplets(pe_box); result = get_sparse_square_matrix(triplets, matr_size); dense_result = result; diff --git a/tket/test/src/test_Assertion.cpp b/tket/test/src/test_Assertion.cpp index 4ad958f183..8467b2ab62 100644 --- a/tket/test/src/test_Assertion.cpp +++ b/tket/test/src/test_Assertion.cpp @@ -21,7 +21,6 @@ #include "tket/Predicates/CompilationUnit.hpp" #include "tket/Predicates/PassLibrary.hpp" #include "tket/Utils/MatrixAnalysis.hpp" -#include "tket/Utils/PauliStrings.hpp" namespace tket { SCENARIO("Testing projector based assertion synthesis") { @@ -168,10 +167,10 @@ SCENARIO("Testing stabiliser based assertion") { Circuit circ(3); circ.add_op(OpType::Rz, 1.5, {0}); circ.add_op(OpType::CX, {1, 0}); - PauliStabiliser pauli1 = {{Pauli::X, Pauli::X}, true}; - PauliStabiliser pauli2 = {{Pauli::Z, Pauli::Z}, true}; - PauliStabiliser pauli3 = {{Pauli::Z, Pauli::Z}, false}; - PauliStabiliserList stabilisers = {pauli1, pauli2, pauli3}; + PauliStabiliser pauli1 = {{Pauli::X, Pauli::X}, 0}; + PauliStabiliser pauli2 = {{Pauli::Z, Pauli::Z}, 0}; + PauliStabiliser pauli3 = {{Pauli::Z, Pauli::Z}, 2}; + PauliStabiliserVec stabilisers = {pauli1, pauli2, pauli3}; StabiliserAssertionBox box(stabilisers); circ.add_assertion( box, {Qubit(0), Qubit(2)}, Qubit(1), "random stabiliser"); @@ -214,9 +213,9 @@ SCENARIO("Testing stabiliser based assertion") { Circuit circ(3); circ.add_op(OpType::Rz, 1.5, {0}); circ.add_op(OpType::CX, {1, 0}); - PauliStabiliser pauli1 = {{Pauli::X}, true}; - PauliStabiliser pauli2 = {{Pauli::Z}, true}; - PauliStabiliserList stabilisers = {pauli1, pauli2}; + PauliStabiliser pauli1 = {{Pauli::X}, 0}; + PauliStabiliser pauli2 = {{Pauli::Z}, 0}; + PauliStabiliserVec stabilisers = {pauli1, pauli2}; StabiliserAssertionBox box(stabilisers); REQUIRE_THROWS(circ.add_assertion( box, {Qubit(0), Qubit(2)}, Qubit(1), "random stabiliser")); @@ -224,21 +223,21 @@ SCENARIO("Testing stabiliser based assertion") { GIVEN("Invalid input") { WHEN("Empty input") { - PauliStabiliserList stabilisers = {}; + PauliStabiliserVec stabilisers = {}; REQUIRE_THROWS_AS(StabiliserAssertionBox(stabilisers), CircuitInvalidity); } WHEN("Unequal lengths") { - PauliStabiliser pauli1 = {{Pauli::X}, true}; - PauliStabiliser pauli2 = {{Pauli::Z, Pauli::Z}, true}; - PauliStabiliserList stabilisers = {pauli1, pauli2}; + PauliStabiliser pauli1 = {{Pauli::X}, 0}; + PauliStabiliser pauli2 = {{Pauli::Z, Pauli::Z}, 0}; + PauliStabiliserVec stabilisers = {pauli1, pauli2}; REQUIRE_THROWS_AS(StabiliserAssertionBox(stabilisers), CircuitInvalidity); } WHEN("Identity") { REQUIRE_THROWS_AS( - PauliStabiliser({Pauli::I, Pauli::I, Pauli::I}, true), + StabiliserAssertionBox({{{Pauli::I, Pauli::I, Pauli::I}, 0}}), std::invalid_argument); REQUIRE_THROWS_AS( - PauliStabiliser({Pauli::I, Pauli::I, Pauli::I}, false), + StabiliserAssertionBox({{{Pauli::I, Pauli::I, Pauli::I}, 1}}), std::invalid_argument); } } @@ -246,14 +245,14 @@ SCENARIO("Testing stabiliser based assertion") { SCENARIO("Testing stibiliser based assertion serialization") { GIVEN("Serialise a stabiliser box") { - PauliStabiliser pauli1 = {{Pauli::X, Pauli::X}, true}; - PauliStabiliser pauli2 = {{Pauli::Z, Pauli::Z}, true}; + PauliStabiliser pauli1 = {{Pauli::X, Pauli::X}, 0}; + PauliStabiliser pauli2 = {{Pauli::Z, Pauli::Z}, 0}; nlohmann::json j_pauli1 = pauli1; PauliStabiliser new_pauli1 = j_pauli1.get(); REQUIRE(new_pauli1 == pauli1); - PauliStabiliserList bell = {pauli1, pauli2}; + PauliStabiliserVec bell = {pauli1, pauli2}; nlohmann::json j_bell = bell; - PauliStabiliserList new_bell = j_bell.get(); + PauliStabiliserVec new_bell = j_bell.get(); REQUIRE(new_bell == bell); StabiliserAssertionBox bell_box(new_bell); Circuit circ(3); diff --git a/tket/test/src/test_ChoiMixTableau.cpp b/tket/test/src/test_ChoiMixTableau.cpp index f8c10eb5ea..c6b87d72ef 100644 --- a/tket/test/src/test_ChoiMixTableau.cpp +++ b/tket/test/src/test_ChoiMixTableau.cpp @@ -76,20 +76,20 @@ SCENARIO("Correct creation of ChoiMixTableau") { tab.gaussian_form(); REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::X), - QubitPauliTensor(Qubit(0), Pauli::X)}); + SpPauliStabiliser(Qubit(0), Pauli::X), + SpPauliStabiliser(Qubit(0), Pauli::X)}); REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z)}); + SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z)}); REQUIRE( - tab.get_row(2) == - ChoiMixTableau::row_tensor_t{{}, QubitPauliTensor(Qubit(2), Pauli::Z)}); + tab.get_row(2) == ChoiMixTableau::row_tensor_t{ + {}, SpPauliStabiliser(Qubit(2), Pauli::Z)}); REQUIRE( tab.get_row_product({0, 1}) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Y), - QubitPauliTensor(Qubit(0), Pauli::Y, -1.)}); + SpPauliStabiliser(Qubit(0), Pauli::Y), + SpPauliStabiliser(Qubit(0), Pauli::Y, 2)}); THEN("Serialize and deserialize") { nlohmann::json j_tab = tab; ChoiMixTableau tab2{{}}; @@ -112,46 +112,46 @@ SCENARIO("Correct creation of ChoiMixTableau") { // e^{-i Z pi/4} X id X = (-iZX) e^{-i Z pi/4} X = +Y S X REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::X), - QubitPauliTensor(Qubit(0), Pauli::Y)}); + SpPauliStabiliser(Qubit(0), Pauli::X), + SpPauliStabiliser(Qubit(0), Pauli::Y)}); REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z)}); + SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z)}); REQUIRE( - tab.get_row(2) == - ChoiMixTableau::row_tensor_t{QubitPauliTensor(Qubit(1), Pauli::Z), {}}); + tab.get_row(2) == ChoiMixTableau::row_tensor_t{ + SpPauliStabiliser(Qubit(1), Pauli::Z), {}}); REQUIRE( - tab.get_row(3) == - ChoiMixTableau::row_tensor_t{{}, QubitPauliTensor(Qubit(2), Pauli::Z)}); + tab.get_row(3) == ChoiMixTableau::row_tensor_t{ + {}, SpPauliStabiliser(Qubit(2), Pauli::Z)}); // Applying an S at the input end adds up to a net Z tab.apply_S(Qubit(0), ChoiMixTableau::TableauSegment::Input); tab.canonical_column_order(); tab.gaussian_form(); REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::X), - QubitPauliTensor(Qubit(0), Pauli::X, -1.)}); + SpPauliStabiliser(Qubit(0), Pauli::X), + SpPauliStabiliser(Qubit(0), Pauli::X, 2)}); REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z)}); + SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z)}); REQUIRE( - tab.get_row(2) == - ChoiMixTableau::row_tensor_t{QubitPauliTensor(Qubit(1), Pauli::Z), {}}); + tab.get_row(2) == ChoiMixTableau::row_tensor_t{ + SpPauliStabiliser(Qubit(1), Pauli::Z), {}}); REQUIRE( - tab.get_row(3) == - ChoiMixTableau::row_tensor_t{{}, QubitPauliTensor(Qubit(2), Pauli::Z)}); + tab.get_row(3) == ChoiMixTableau::row_tensor_t{ + {}, SpPauliStabiliser(Qubit(2), Pauli::Z)}); THEN("Compare to explicitly generated tableau") { std::list rows; rows.push_back( - {QubitPauliTensor(Qubit(0), Pauli::X), - QubitPauliTensor(Qubit(0), Pauli::X, -1.)}); + {SpPauliStabiliser(Qubit(0), Pauli::X), + SpPauliStabiliser(Qubit(0), Pauli::X, 2)}); rows.push_back( - {QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z)}); - rows.push_back({QubitPauliTensor(Qubit(1), Pauli::Z), {}}); - rows.push_back({{}, QubitPauliTensor(Qubit(2), Pauli::Z)}); + {SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z)}); + rows.push_back({SpPauliStabiliser(Qubit(1), Pauli::Z), {}}); + rows.push_back({{}, SpPauliStabiliser(Qubit(2), Pauli::Z)}); ChoiMixTableau tab2(rows); tab2.canonical_column_order(); REQUIRE(tab == tab2); @@ -167,60 +167,60 @@ SCENARIO("Correct creation of ChoiMixTableau") { tab.gaussian_form(); REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::X), - QubitPauliTensor(Qubit(0), Pauli::X)}); + SpPauliStabiliser(Qubit(0), Pauli::X), + SpPauliStabiliser(Qubit(0), Pauli::X)}); REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z)}); + SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z)}); // Affecting the input segment should give the same effect as for // UnitaryRevTableau (since lhs is transposed, +Y is flipped to -Y, and // phase is returned on rhs) REQUIRE( tab.get_row(2) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::Y), QubitPauliTensor(-1.)}); + SpPauliStabiliser(Qubit(1), Pauli::Y), SpPauliStabiliser({}, 2)}); // Affecting the output segment should give the same effect as for // UnitaryTableau REQUIRE( tab.get_row(3) == ChoiMixTableau::row_tensor_t{ - {}, QubitPauliTensor(Qubit(2), Pauli::Y, -1.)}); + {}, SpPauliStabiliser(Qubit(2), Pauli::Y, 2)}); // Check V on identity tab.apply_V(Qubit(0), ChoiMixTableau::TableauSegment::Output); REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::X), - QubitPauliTensor(Qubit(0), Pauli::X)}); + SpPauliStabiliser(Qubit(0), Pauli::X), + SpPauliStabiliser(Qubit(0), Pauli::X)}); // e^{-i X pi/4} Z C Z = (-iXZ) e^{-i X pi/4} C Z = -Y V C Z REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Y, -1.)}); + SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Y, 2)}); REQUIRE( tab.get_row(2) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::Y), QubitPauliTensor(-1.)}); + SpPauliStabiliser(Qubit(1), Pauli::Y), SpPauliStabiliser({}, 2)}); REQUIRE( tab.get_row(3) == ChoiMixTableau::row_tensor_t{ - {}, QubitPauliTensor(Qubit(2), Pauli::Y, -1.)}); + {}, SpPauliStabiliser(Qubit(2), Pauli::Y, 2)}); // Applying a V at the input end adds up to a net X tab.apply_V(Qubit(0), ChoiMixTableau::TableauSegment::Input); tab.gaussian_form(); REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::X), - QubitPauliTensor(Qubit(0), Pauli::X)}); + SpPauliStabiliser(Qubit(0), Pauli::X), + SpPauliStabiliser(Qubit(0), Pauli::X)}); REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z, -1.)}); + SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z, 2)}); REQUIRE( tab.get_row(2) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::Y), QubitPauliTensor(-1.)}); + SpPauliStabiliser(Qubit(1), Pauli::Y), SpPauliStabiliser({}, 2)}); REQUIRE( tab.get_row(3) == ChoiMixTableau::row_tensor_t{ - {}, QubitPauliTensor(Qubit(2), Pauli::Y, -1.)}); + {}, SpPauliStabiliser(Qubit(2), Pauli::Y, 2)}); } GIVEN("Applying CX gates") { ChoiMixTableau tab(4); @@ -237,27 +237,27 @@ SCENARIO("Correct creation of ChoiMixTableau") { REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::X), - QubitPauliTensor({{Qubit(0), Pauli::X}, {Qubit(1), Pauli::X}})}); + SpPauliStabiliser(Qubit(0), Pauli::X), + SpPauliStabiliser({{Qubit(0), Pauli::X}, {Qubit(1), Pauli::X}})}); REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z)}); + SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z)}); REQUIRE( tab.get_row(2) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::X), - QubitPauliTensor(Qubit(1), Pauli::X)}); + SpPauliStabiliser(Qubit(1), Pauli::X), + SpPauliStabiliser(Qubit(1), Pauli::X)}); REQUIRE( tab.get_row(3) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::Z), - QubitPauliTensor({{Qubit(0), Pauli::Z}, {Qubit(1), Pauli::Z}})}); + SpPauliStabiliser(Qubit(1), Pauli::Z), + SpPauliStabiliser({{Qubit(0), Pauli::Z}, {Qubit(1), Pauli::Z}})}); REQUIRE( - tab.get_row(4) == - ChoiMixTableau::row_tensor_t{QubitPauliTensor(Qubit(2), Pauli::Z), {}}); + tab.get_row(4) == ChoiMixTableau::row_tensor_t{ + SpPauliStabiliser(Qubit(2), Pauli::Z), {}}); REQUIRE( - tab.get_row(5) == - ChoiMixTableau::row_tensor_t{{}, QubitPauliTensor(Qubit(3), Pauli::Z)}); + tab.get_row(5) == ChoiMixTableau::row_tensor_t{ + {}, SpPauliStabiliser(Qubit(3), Pauli::Z)}); // CX on input cancels back to original tab.apply_CX(Qubit(0), Qubit(1), ChoiMixTableau::TableauSegment::Input); tab.gaussian_form(); @@ -269,30 +269,30 @@ SCENARIO("Correct creation of ChoiMixTableau") { REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor({{Qubit(0), Pauli::X}, {Qubit(2), Pauli::X}}), - QubitPauliTensor(Qubit(0), Pauli::X)}); + SpPauliStabiliser({{Qubit(0), Pauli::X}, {Qubit(2), Pauli::X}}), + SpPauliStabiliser(Qubit(0), Pauli::X)}); REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(0), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z)}); + SpPauliStabiliser(Qubit(0), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z)}); REQUIRE( tab.get_row(2) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::X), - QubitPauliTensor({{Qubit(1), Pauli::X}, {Qubit(3), Pauli::X}})}); + SpPauliStabiliser(Qubit(1), Pauli::X), + SpPauliStabiliser({{Qubit(1), Pauli::X}, {Qubit(3), Pauli::X}})}); REQUIRE( tab.get_row(3) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::Z), - QubitPauliTensor(Qubit(1), Pauli::Z)}); + SpPauliStabiliser(Qubit(1), Pauli::Z), + SpPauliStabiliser(Qubit(1), Pauli::Z)}); REQUIRE( tab.get_row(4) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(2), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z)}); + SpPauliStabiliser(Qubit(2), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z)}); REQUIRE( tab.get_row(5) == ChoiMixTableau::row_tensor_t{ {}, - QubitPauliTensor({{Qubit(1), Pauli::Z}, {Qubit(3), Pauli::Z}})}); + SpPauliStabiliser({{Qubit(1), Pauli::Z}, {Qubit(3), Pauli::Z}})}); } GIVEN("A full circuit") { Circuit circ = get_test_circ(); @@ -305,7 +305,7 @@ SCENARIO("Correct creation of ChoiMixTableau") { GIVEN("A PI/2 rotation at end") { Circuit circ = get_test_circ(); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - QubitPauliTensor pauli{ + SpPauliStabiliser pauli{ {{Qubit(0), Pauli::X}, {Qubit(1), Pauli::Y}, {Qubit(2), Pauli::Z}}}; tab.apply_pauli(pauli, 3); tab.gaussian_form(); @@ -317,10 +317,7 @@ SCENARIO("Correct creation of ChoiMixTableau") { } GIVEN("A PI/2 rotation at front") { ChoiMixTableau tab = get_tableau_with_gates_applied_at_front(); - QubitPauliTensor pauli = - QubitPauliTensor(Qubit(q_default_reg(), 0), Pauli::X) * - QubitPauliTensor(Qubit(q_default_reg(), 1), Pauli::Y) * - QubitPauliTensor(Qubit(q_default_reg(), 2), Pauli::Z); + SpPauliStabiliser pauli({Pauli::X, Pauli::Y, Pauli::Z}); tab.apply_pauli(pauli, 1, ChoiMixTableau::TableauSegment::Input); tab.gaussian_form(); @@ -370,26 +367,26 @@ SCENARIO("Correct creation of ChoiMixTableau") { REQUIRE( tab.get_row(0) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::X), - QubitPauliTensor( - {{Qubit(0), Pauli::X}, {Qubit(2), Pauli::X}}, -1.)}); + SpPauliStabiliser(Qubit(1), Pauli::X), + SpPauliStabiliser( + {{Qubit(0), Pauli::X}, {Qubit(2), Pauli::X}}, 2)}); REQUIRE( tab.get_row(1) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(1), Pauli::Z), - QubitPauliTensor(Qubit(0), Pauli::Z, -1.)}); + SpPauliStabiliser(Qubit(1), Pauli::Z), + SpPauliStabiliser(Qubit(0), Pauli::Z, 2)}); REQUIRE( tab.get_row(2) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(2), Pauli::X), - QubitPauliTensor(Qubit(2), Pauli::X)}); + SpPauliStabiliser(Qubit(2), Pauli::X), + SpPauliStabiliser(Qubit(2), Pauli::X)}); REQUIRE( tab.get_row(3) == ChoiMixTableau::row_tensor_t{ - QubitPauliTensor(Qubit(2), Pauli::Z), - QubitPauliTensor( - {{Qubit(0), Pauli::Z}, {Qubit(2), Pauli::Z}}, -1.)}); + SpPauliStabiliser(Qubit(2), Pauli::Z), + SpPauliStabiliser( + {{Qubit(0), Pauli::Z}, {Qubit(2), Pauli::Z}}, 2)}); REQUIRE( - tab.get_row(4) == - ChoiMixTableau::row_tensor_t{{}, QubitPauliTensor(Qubit(1), Pauli::Z)}); + tab.get_row(4) == ChoiMixTableau::row_tensor_t{ + {}, SpPauliStabiliser(Qubit(1), Pauli::Z)}); } GIVEN("Combining post-selections and discarding") { ChoiMixTableau tab(5); diff --git a/tket/test/src/test_Clifford.cpp b/tket/test/src/test_Clifford.cpp index cb76b9a4d1..cb1d332400 100644 --- a/tket/test/src/test_Clifford.cpp +++ b/tket/test/src/test_Clifford.cpp @@ -27,7 +27,6 @@ #include "tket/Transformations/OptimisationPass.hpp" #include "tket/Transformations/Rebase.hpp" #include "tket/Transformations/Transform.hpp" -#include "tket/Utils/PauliStrings.hpp" namespace tket { namespace test_Clifford { diff --git a/tket/test/src/test_CompilerPass.cpp b/tket/test/src/test_CompilerPass.cpp index ef546dfad5..dc1540613c 100644 --- a/tket/test/src/test_CompilerPass.cpp +++ b/tket/test/src/test_CompilerPass.cpp @@ -1171,9 +1171,9 @@ SCENARIO("Test Pauli Graph Synthesis Pass") { Transforms::PauliSynthStrat::Sets, CXConfigType::Star); GIVEN("Two PauliExpBoxes") { Circuit circ(3, "test"); - PauliExpBox peb({Pauli::Z, Pauli::X, Pauli::Z}, 0.333); + PauliExpBox peb({{Pauli::Z, Pauli::X, Pauli::Z}, 0.333}); circ.add_box(peb, {0, 1, 2}); - PauliExpBox peb2({Pauli::Y, Pauli::X, Pauli::X}, 0.174); + PauliExpBox peb2({{Pauli::Y, Pauli::X, Pauli::X}, 0.174}); circ.add_box(peb2, {0, 1, 2}); CompilationUnit cu(circ); diff --git a/tket/test/src/test_MeasurementReduction.cpp b/tket/test/src/test_MeasurementReduction.cpp index 70f1e1f3cb..fa05084ef2 100644 --- a/tket/test/src/test_MeasurementReduction.cpp +++ b/tket/test/src/test_MeasurementReduction.cpp @@ -21,11 +21,11 @@ namespace test_MeasurementReduction { SCENARIO("Some QubitOperators") { GIVEN("4 string QubitOperator") { - QubitPauliString qp_map0(Qubit(0), Pauli::I); - QubitPauliString qp_map1(Qubit(0), Pauli::X); - QubitPauliString qp_map2(Qubit(0), Pauli::Y); - QubitPauliString qp_map3(Qubit(0), Pauli::Z); - std::list pts{qp_map0, qp_map1, qp_map2, qp_map3}; + SpPauliString qp_map0(Qubit(0), Pauli::I); + SpPauliString qp_map1(Qubit(0), Pauli::X); + SpPauliString qp_map2(Qubit(0), Pauli::Y); + SpPauliString qp_map3(Qubit(0), Pauli::Z); + std::list pts{qp_map0, qp_map1, qp_map2, qp_map3}; WHEN("Commuting sets") { MeasurementSetup measurements = @@ -44,15 +44,15 @@ SCENARIO("Some QubitOperators") { } } GIVEN("7 string QubitOperator") { - QubitPauliString qp_map0(Qubit(0), Pauli::Z); - QubitPauliString qp_map1(Qubit(1), Pauli::Z); - QubitPauliString qp_map2(Qubit(2), Pauli::Z); - QubitPauliString qp_map3(Qubit(3), Pauli::Z); - QubitPauliString qp_map4({Pauli::Z, Pauli::Z, Pauli::Z, Pauli::Z}); - QubitPauliString qp_map5({Pauli::X, Pauli::X, Pauli::Y, Pauli::Y}); - QubitPauliString qp_map6({Pauli::Y, Pauli::Y, Pauli::X, Pauli::X}); - std::list pts{qp_map0, qp_map1, qp_map2, qp_map3, - qp_map4, qp_map5, qp_map6}; + SpPauliString qp_map0(Qubit(0), Pauli::Z); + SpPauliString qp_map1(Qubit(1), Pauli::Z); + SpPauliString qp_map2(Qubit(2), Pauli::Z); + SpPauliString qp_map3(Qubit(3), Pauli::Z); + SpPauliString qp_map4({Pauli::Z, Pauli::Z, Pauli::Z, Pauli::Z}); + SpPauliString qp_map5({Pauli::X, Pauli::X, Pauli::Y, Pauli::Y}); + SpPauliString qp_map6({Pauli::Y, Pauli::Y, Pauli::X, Pauli::X}); + std::list pts{qp_map0, qp_map1, qp_map2, qp_map3, + qp_map4, qp_map5, qp_map6}; WHEN("Commuting sets") { MeasurementSetup measurements = @@ -68,17 +68,17 @@ SCENARIO("Some QubitOperators") { } } GIVEN("8 strings over 4 qubits") { - QubitPauliString qp_map0({Pauli::X, Pauli::X, Pauli::X, Pauli::Y}); - QubitPauliString qp_map1({Pauli::X, Pauli::X, Pauli::Y, Pauli::X}); - QubitPauliString qp_map2({Pauli::X, Pauli::Y, Pauli::X, Pauli::X}); - QubitPauliString qp_map3({Pauli::X, Pauli::Y, Pauli::Y, Pauli::Y}); - QubitPauliString qp_map4({Pauli::Y, Pauli::X, Pauli::X, Pauli::X}); - QubitPauliString qp_map5({Pauli::Y, Pauli::X, Pauli::Y, Pauli::Y}); - QubitPauliString qp_map6({Pauli::Y, Pauli::Y, Pauli::X, Pauli::Y}); - QubitPauliString qp_map7({Pauli::Y, Pauli::Y, Pauli::Y, Pauli::X}); - QubitPauliString qp_map8({Pauli::I, Pauli::I, Pauli::I, Pauli::I}); - std::list pts{qp_map0, qp_map1, qp_map2, qp_map3, qp_map4, - qp_map5, qp_map6, qp_map7, qp_map8}; + SpPauliString qp_map0({Pauli::X, Pauli::X, Pauli::X, Pauli::Y}); + SpPauliString qp_map1({Pauli::X, Pauli::X, Pauli::Y, Pauli::X}); + SpPauliString qp_map2({Pauli::X, Pauli::Y, Pauli::X, Pauli::X}); + SpPauliString qp_map3({Pauli::X, Pauli::Y, Pauli::Y, Pauli::Y}); + SpPauliString qp_map4({Pauli::Y, Pauli::X, Pauli::X, Pauli::X}); + SpPauliString qp_map5({Pauli::Y, Pauli::X, Pauli::Y, Pauli::Y}); + SpPauliString qp_map6({Pauli::Y, Pauli::Y, Pauli::X, Pauli::Y}); + SpPauliString qp_map7({Pauli::Y, Pauli::Y, Pauli::Y, Pauli::X}); + SpPauliString qp_map8({Pauli::I, Pauli::I, Pauli::I, Pauli::I}); + std::list pts{qp_map0, qp_map1, qp_map2, qp_map3, qp_map4, + qp_map5, qp_map6, qp_map7, qp_map8}; WHEN("Commuting sets") { MeasurementSetup measurements = measurement_reduction(pts, PauliPartitionStrat::CommutingSets); diff --git a/tket/test/src/test_MeasurementSetup.cpp b/tket/test/src/test_MeasurementSetup.cpp index 4312bddaee..6bfc5785ed 100644 --- a/tket/test/src/test_MeasurementSetup.cpp +++ b/tket/test/src/test_MeasurementSetup.cpp @@ -33,10 +33,10 @@ SCENARIO("verify_measurement_setup") { ms.add_measurement_circuit(mc); Qubit q0(q_default_reg(), 0); Qubit q1(q_default_reg(), 1); - QubitPauliString ii; - QubitPauliString zi({{q0, Pauli::Z}}); - QubitPauliString iz({{q1, Pauli::Z}}); - QubitPauliString zz({{q0, Pauli::Z}, {q1, Pauli::Z}}); + SpPauliString ii; + SpPauliString zi({{q0, Pauli::Z}}); + SpPauliString iz({{q1, Pauli::Z}}); + SpPauliString zz({{q0, Pauli::Z}, {q1, Pauli::Z}}); ms.add_result_for_term(ii, {0, {}, false}); ms.add_result_for_term(zi, {0, {0}, false}); ms.add_result_for_term(iz, {0, {1}, false}); @@ -56,7 +56,7 @@ SCENARIO("verify_measurement_setup") { ms.add_measurement_circuit(mc1); Qubit q0(q_default_reg(), 0); Qubit q1(q_default_reg(), 1); - QubitPauliString zi({{q0, Pauli::Z}}); + SpPauliString zi({{q0, Pauli::Z}}); ms.add_result_for_term(zi, {0, {0}, false}); ms.add_result_for_term(zi, {1, {0}, false}); REQUIRE(ms.verify()); @@ -68,7 +68,7 @@ SCENARIO("verify_measurement_setup") { mc.add_measure(0, 0); ms.add_measurement_circuit(mc); Qubit q0(q_default_reg(), 0); - QubitPauliString z({{q0, Pauli::Z}}); + SpPauliString z({{q0, Pauli::Z}}); ms.add_result_for_term(z, {0, {0}, true}); REQUIRE(ms.verify()); } @@ -83,17 +83,17 @@ SCENARIO("verify_measurement_setup") { Qubit q0(q_default_reg(), 0); Qubit q1(q_default_reg(), 1); WHEN("Wrong parity") { - QubitPauliString zi({{q0, Pauli::Z}}); + SpPauliString zi({{q0, Pauli::Z}}); ms.add_result_for_term(zi, {0, {0}, false}); REQUIRE_FALSE(ms.verify()); } WHEN("Wrong string") { - QubitPauliString ix({{q1, Pauli::X}}); + SpPauliString ix({{q1, Pauli::X}}); ms.add_result_for_term(ix, {0, {1}, false}); REQUIRE_FALSE(ms.verify()); } WHEN("Wrong bit set") { - QubitPauliString iy({{q1, Pauli::Y}}); + SpPauliString iy({{q1, Pauli::Y}}); ms.add_result_for_term(iy, {0, {0, 1}, false}); REQUIRE_FALSE(ms.verify()); } @@ -149,18 +149,18 @@ SCENARIO("verify_measurement_setup") { Qubit q2(q_default_reg(), 2); Qubit q3(q_default_reg(), 3); - QubitPauliTensor x0(q0, Pauli::X); - QubitPauliTensor y0(q0, Pauli::Y); - QubitPauliTensor z0(q0, Pauli::Z); - QubitPauliTensor x1(q1, Pauli::X); - QubitPauliTensor y1(q1, Pauli::Y); - QubitPauliTensor z1(q1, Pauli::Z); - QubitPauliTensor x2(q2, Pauli::X); - QubitPauliTensor y2(q2, Pauli::Y); - QubitPauliTensor z2(q2, Pauli::Z); - QubitPauliTensor x3(q3, Pauli::X); - QubitPauliTensor y3(q3, Pauli::Y); - QubitPauliTensor z3(q3, Pauli::Z); + SpPauliString x0(q0, Pauli::X); + SpPauliString y0(q0, Pauli::Y); + SpPauliString z0(q0, Pauli::Z); + SpPauliString x1(q1, Pauli::X); + SpPauliString y1(q1, Pauli::Y); + SpPauliString z1(q1, Pauli::Z); + SpPauliString x2(q2, Pauli::X); + SpPauliString y2(q2, Pauli::Y); + SpPauliString z2(q2, Pauli::Z); + SpPauliString x3(q3, Pauli::X); + SpPauliString y3(q3, Pauli::Y); + SpPauliString z3(q3, Pauli::Z); ms.add_result_for_term(z0, {1, {0}, false}); ms.add_result_for_term(z0 * z1, {1, {0, 1}, false}); @@ -289,24 +289,24 @@ SCENARIO("verify_measurement_setup") { Qubit q4(q_default_reg(), 4); Qubit q5(q_default_reg(), 5); - QubitPauliTensor x0(q0, Pauli::X); - QubitPauliTensor y0(q0, Pauli::Y); - QubitPauliTensor z0(q0, Pauli::Z); - QubitPauliTensor x1(q1, Pauli::X); - QubitPauliTensor y1(q1, Pauli::Y); - QubitPauliTensor z1(q1, Pauli::Z); - QubitPauliTensor x2(q2, Pauli::X); - QubitPauliTensor y2(q2, Pauli::Y); - QubitPauliTensor z2(q2, Pauli::Z); - QubitPauliTensor x3(q3, Pauli::X); - QubitPauliTensor y3(q3, Pauli::Y); - QubitPauliTensor z3(q3, Pauli::Z); - QubitPauliTensor x4(q4, Pauli::X); - QubitPauliTensor y4(q4, Pauli::Y); - QubitPauliTensor z4(q4, Pauli::Z); - QubitPauliTensor x5(q5, Pauli::X); - QubitPauliTensor y5(q5, Pauli::Y); - QubitPauliTensor z5(q5, Pauli::Z); + SpPauliString x0(q0, Pauli::X); + SpPauliString y0(q0, Pauli::Y); + SpPauliString z0(q0, Pauli::Z); + SpPauliString x1(q1, Pauli::X); + SpPauliString y1(q1, Pauli::Y); + SpPauliString z1(q1, Pauli::Z); + SpPauliString x2(q2, Pauli::X); + SpPauliString y2(q2, Pauli::Y); + SpPauliString z2(q2, Pauli::Z); + SpPauliString x3(q3, Pauli::X); + SpPauliString y3(q3, Pauli::Y); + SpPauliString z3(q3, Pauli::Z); + SpPauliString x4(q4, Pauli::X); + SpPauliString y4(q4, Pauli::Y); + SpPauliString z4(q4, Pauli::Z); + SpPauliString x5(q5, Pauli::X); + SpPauliString y5(q5, Pauli::Y); + SpPauliString z5(q5, Pauli::Z); ms.add_result_for_term(y0 * z1 * y2 * z3, {0, {0, 1, 3}, false}); ms.add_result_for_term( diff --git a/tket/test/src/test_Partition.cpp b/tket/test/src/test_Partition.cpp index 62894ff408..c33e7c5a93 100644 --- a/tket/test/src/test_Partition.cpp +++ b/tket/test/src/test_Partition.cpp @@ -36,8 +36,8 @@ SCENARIO("Small sets of Gadgets are partitioned correctly") { GIVEN("No gadgets") { for (auto colouring_method : colouring_methods) { for (PauliPartitionStrat strat : strats) { - std::list tensors; - std::list> void_terms = + std::list tensors; + std::list> void_terms = term_sequence(tensors, strat, colouring_method); REQUIRE(void_terms.empty()); } @@ -49,13 +49,13 @@ SCENARIO("Small sets of Gadgets are partitioned correctly") { Qubit q0(0); Qubit q1(1); Qubit q2(2); - QubitPauliString qp_map0({{q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}}); - QubitPauliString qp_map1({{q0, Pauli::Z}, {q1, Pauli::Z}, {q2, Pauli::Y}}); - std::list tensors{qp_map0, qp_map1}; + SpPauliString qp_map0({{q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}}); + SpPauliString qp_map1({{q0, Pauli::Z}, {q1, Pauli::Z}, {q2, Pauli::Y}}); + std::list tensors{qp_map0, qp_map1}; for (auto colouring_method : colouring_methods) { for (PauliPartitionStrat strat : strats) { - std::list> terms = + std::list> terms = term_sequence(tensors, strat, colouring_method); REQUIRE(terms.size() == 2); @@ -67,20 +67,20 @@ SCENARIO("Small sets of Gadgets are partitioned correctly") { } } GIVEN("Three partitions of four gadgets") { - QubitPauliString qp_map0(Qubit(0), Pauli::I); - QubitPauliString qp_map1(Qubit(0), Pauli::X); - QubitPauliString qp_map2(Qubit(0), Pauli::Y); - QubitPauliString qp_map3(Qubit(0), Pauli::Z); - std::list tensors{qp_map0, qp_map1, qp_map2, qp_map3}; + SpPauliString qp_map0(Qubit(0), Pauli::I); + SpPauliString qp_map1(Qubit(0), Pauli::X); + SpPauliString qp_map2(Qubit(0), Pauli::Y); + SpPauliString qp_map3(Qubit(0), Pauli::Z); + std::list tensors{qp_map0, qp_map1, qp_map2, qp_map3}; for (auto colouring_method : colouring_methods) { for (PauliPartitionStrat strat : strats) { - std::list> terms = + std::list> terms = term_sequence(tensors, strat, colouring_method); REQUIRE(terms.size() == 3); unsigned total_terms = 0; - for (const std::list& g_map : terms) { + for (const std::list& g_map : terms) { REQUIRE((g_map.size() == 1 || g_map.size() == 2)); total_terms += g_map.size(); } diff --git a/tket/test/src/test_PauliGraph.cpp b/tket/test/src/test_PauliGraph.cpp index 01fbd61f2e..c8d4758dc4 100644 --- a/tket/test/src/test_PauliGraph.cpp +++ b/tket/test/src/test_PauliGraph.cpp @@ -207,7 +207,7 @@ SCENARIO("Correct creation of PauliGraphs") { circ.add_op(OpType::ZZPhase, 0.2, {0, 1}); circ.add_op(OpType::Vdg, {0}); circ.add_op(OpType::H, {1}); - PauliExpBox peb({Pauli::Y, Pauli::X}, 0.333); + PauliExpBox peb({{Pauli::Y, Pauli::X}, 0.333}); circ.add_box(peb, {0, 1}); PauliGraph pg = circuit_to_pauli_graph(circ); REQUIRE(pg.n_vertices() == 1); @@ -292,7 +292,7 @@ static void add_ops_to_prepend_2(Circuit& circ) { SCENARIO("Test mutual diagonalisation of fully commuting sets") { GIVEN("A 2 qb Identity gadget") { Circuit circ(2); - PauliExpBox peb({Pauli::I, Pauli::I}, 0.333); + PauliExpBox peb({{Pauli::I, Pauli::I}, 0.333}); circ.add_box(peb, {0, 1}); const auto& prepend = CircuitsForTesting::get().prepend_2qb_circuit; Circuit test1 = prepend >> circ; @@ -308,7 +308,7 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { GIVEN("2 qb 1 Pauli gadget circuit") { const auto& prepend = CircuitsForTesting::get().prepend_2qb_circuit; Circuit circ(2); - PauliExpBox peb({Pauli::Z, Pauli::X}, 0.333); + PauliExpBox peb({{Pauli::Z, Pauli::X}, 0.333}); circ.add_box(peb, {0, 1}); Circuit test1 = prepend >> circ; @@ -321,9 +321,9 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { GIVEN("2 qb 2 Pauli gadget circuit") { const auto& prepend = CircuitsForTesting::get().prepend_2qb_circuit; Circuit circ(2); - PauliExpBox peb({Pauli::Z, Pauli::X}, 0.333); + PauliExpBox peb({{Pauli::Z, Pauli::X}, 0.333}); circ.add_box(peb, {0, 1}); - PauliExpBox peb2({Pauli::Y, Pauli::Y}, 0.174); + PauliExpBox peb2({{Pauli::Y, Pauli::Y}, 0.174}); circ.add_box(peb2, {0, 1}); Circuit test1 = prepend >> circ; @@ -345,11 +345,11 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { std::map symbol_map = { {a, 0.3112}, {b, 1.178}, {c, -0.911}}; - PauliExpBox peb({Pauli::Z, Pauli::Z}, ea); + PauliExpBox peb({{Pauli::Z, Pauli::Z}, ea}); circ.add_box(peb, {0, 1}); - PauliExpBox peb2({Pauli::X, Pauli::X}, eb); + PauliExpBox peb2({{Pauli::X, Pauli::X}, eb}); circ.add_box(peb2, {0, 1}); - PauliExpBox peb3({Pauli::Y, Pauli::Y}, ec); + PauliExpBox peb3({{Pauli::Y, Pauli::Y}, ec}); circ.add_box(peb3, {0, 1}); Circuit test1 = prepend >> circ; test1.symbol_substitution(symbol_map); @@ -373,11 +373,11 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { std::map symbol_map = { {a, 0.3112}, {b, 1.178}, {c, -0.911}}; - PauliExpBox peb({Pauli::Z, Pauli::Z}, ea); + PauliExpBox peb({{Pauli::Z, Pauli::Z}, ea}); circ.add_box(peb, {0, 1}); - PauliExpBox peb2({Pauli::I, Pauli::X}, eb); + PauliExpBox peb2({{Pauli::I, Pauli::X}, eb}); circ.add_box(peb2, {0, 1}); - PauliExpBox peb3({Pauli::Y, Pauli::I}, ec); + PauliExpBox peb3({{Pauli::Y, Pauli::I}, ec}); circ.add_box(peb3, {0, 1}); Circuit test1 = prepend >> circ; REQUIRE(test1.is_symbolic()); @@ -396,9 +396,9 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { add_ops_to_prepend_1(prepend); Circuit circ(3); - PauliExpBox peb({Pauli::Z, Pauli::X, Pauli::Z}, 0.333); + PauliExpBox peb({{Pauli::Z, Pauli::X, Pauli::Z}, 0.333}); circ.add_box(peb, {0, 1, 2}); - PauliExpBox peb2({Pauli::Y, Pauli::X, Pauli::X}, 0.174); + PauliExpBox peb2({{Pauli::Y, Pauli::X, Pauli::X}, 0.174}); circ.add_box(peb2, {0, 1, 2}); Circuit test1 = prepend >> circ; PauliGraph pg = circuit_to_pauli_graph(circ); @@ -412,11 +412,11 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { add_ops_to_prepend_1(prepend); Circuit circ(4); - PauliExpBox peb({Pauli::Z, Pauli::Z, Pauli::Z, Pauli::Z}, 0.333); + PauliExpBox peb({{Pauli::Z, Pauli::Z, Pauli::Z, Pauli::Z}, 0.333}); circ.add_box(peb, {0, 1, 2, 3}); - PauliExpBox peb2({Pauli::X, Pauli::Z, Pauli::X, Pauli::I}, 0.233); + PauliExpBox peb2({{Pauli::X, Pauli::Z, Pauli::X, Pauli::I}, 0.233}); circ.add_box(peb2, {0, 1, 2, 3}); - PauliExpBox peb3({Pauli::X, Pauli::X, Pauli::X, Pauli::X}, 0.174); + PauliExpBox peb3({{Pauli::X, Pauli::X, Pauli::X, Pauli::X}, 0.174}); circ.add_box(peb3, {0, 1, 2, 3}); Circuit test1 = prepend >> circ; @@ -444,17 +444,17 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { CircuitsForTesting::add_initial_prepend_ops(circ); add_ops_to_prepend_1(circ); - PauliExpBox peb({Pauli::Z, Pauli::Y, Pauli::X}, 0.333); + PauliExpBox peb({{Pauli::Z, Pauli::Y, Pauli::X}, 0.333}); circ.add_box(peb, {0, 1, 2}); - PauliExpBox peb2({Pauli::Y, Pauli::Z, Pauli::X}, 0.174); + PauliExpBox peb2({{Pauli::Y, Pauli::Z, Pauli::X}, 0.174}); circ.add_box(peb2, {0, 1, 2}); - PauliExpBox peb3({Pauli::Y, Pauli::Z, Pauli::I}, 0.567); + PauliExpBox peb3({{Pauli::Y, Pauli::Z, Pauli::I}, 0.567}); circ.add_box(peb3, {0, 1, 2}); - PauliExpBox peb4({Pauli::Z, Pauli::Y, Pauli::I}, 1.849); + PauliExpBox peb4({{Pauli::Z, Pauli::Y, Pauli::I}, 1.849}); circ.add_box(peb4, {0, 1, 2}); - PauliExpBox peb5({Pauli::X, Pauli::X, Pauli::X}, 1.67); + PauliExpBox peb5({{Pauli::X, Pauli::X, Pauli::X}, 1.67}); circ.add_box(peb5, {0, 1, 2}); - PauliExpBox peb6({Pauli::X, Pauli::X, Pauli::I}, 0.83); + PauliExpBox peb6({{Pauli::X, Pauli::X, Pauli::I}, 0.83}); circ.add_box(peb6, {0, 1, 2}); Circuit test1 = circ; @@ -573,21 +573,21 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { {a, 0.3112}, {b, 1.178}, {c, -0.911}, {d, 0.7122}, {e, 1.102}, {f, 0.151}, {g, 1.223}, {h, 1.666}}; - PauliExpBox peb0({Pauli::X, Pauli::X, Pauli::X, Pauli::Y}, ea); + PauliExpBox peb0({{Pauli::X, Pauli::X, Pauli::X, Pauli::Y}, ea}); circ.add_box(peb0, {0, 1, 2, 3}); - PauliExpBox peb1({Pauli::X, Pauli::X, Pauli::Y, Pauli::X}, eb); + PauliExpBox peb1({{Pauli::X, Pauli::X, Pauli::Y, Pauli::X}, eb}); circ.add_box(peb1, {0, 1, 2, 3}); - PauliExpBox peb2({Pauli::X, Pauli::Y, Pauli::X, Pauli::X}, ec); + PauliExpBox peb2({{Pauli::X, Pauli::Y, Pauli::X, Pauli::X}, ec}); circ.add_box(peb2, {0, 1, 2, 3}); - PauliExpBox peb3({Pauli::X, Pauli::Y, Pauli::Y, Pauli::Y}, ed); + PauliExpBox peb3({{Pauli::X, Pauli::Y, Pauli::Y, Pauli::Y}, ed}); circ.add_box(peb3, {0, 1, 2, 3}); - PauliExpBox peb4({Pauli::Y, Pauli::X, Pauli::X, Pauli::X}, ee); + PauliExpBox peb4({{Pauli::Y, Pauli::X, Pauli::X, Pauli::X}, ee}); circ.add_box(peb4, {0, 1, 2, 3}); - PauliExpBox peb5({Pauli::Y, Pauli::X, Pauli::Y, Pauli::Y}, ef); + PauliExpBox peb5({{Pauli::Y, Pauli::X, Pauli::Y, Pauli::Y}, ef}); circ.add_box(peb5, {0, 1, 2, 3}); - PauliExpBox peb6({Pauli::Y, Pauli::Y, Pauli::X, Pauli::Y}, eg); + PauliExpBox peb6({{Pauli::Y, Pauli::Y, Pauli::X, Pauli::Y}, eg}); circ.add_box(peb6, {0, 1, 2, 3}); - PauliExpBox peb7({Pauli::Y, Pauli::Y, Pauli::Y, Pauli::X}, eh); + PauliExpBox peb7({{Pauli::Y, Pauli::Y, Pauli::Y, Pauli::X}, eh}); circ.add_box(peb7, {0, 1, 2, 3}); Circuit test1 = prepend >> circ; @@ -619,13 +619,13 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { std::map symbol_map = { {a, 0.3112}, {b, 1.178}, {c, -0.911}, {d, 0.7122}}; - PauliExpBox peb0({Pauli::Y, Pauli::Z, Pauli::X, Pauli::I}, ea); + PauliExpBox peb0({{Pauli::Y, Pauli::Z, Pauli::X, Pauli::I}, ea}); circ.add_box(peb0, {0, 1, 2, 3}); - PauliExpBox peb1({Pauli::X, Pauli::Z, Pauli::Y, Pauli::I}, eb); + PauliExpBox peb1({{Pauli::X, Pauli::Z, Pauli::Y, Pauli::I}, eb}); circ.add_box(peb1, {0, 1, 2, 3}); - PauliExpBox peb2({Pauli::I, Pauli::Y, Pauli::Z, Pauli::X}, ec); + PauliExpBox peb2({{Pauli::I, Pauli::Y, Pauli::Z, Pauli::X}, ec}); circ.add_box(peb2, {0, 1, 2, 3}); - PauliExpBox peb3({Pauli::I, Pauli::X, Pauli::Y, Pauli::Z}, ed); + PauliExpBox peb3({{Pauli::I, Pauli::X, Pauli::Y, Pauli::Z}, ed}); circ.add_box(peb3, {0, 1, 2, 3}); Circuit test1 = prepend >> circ; @@ -667,19 +667,19 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { {a, 0.3112}, {b, 1.178}, {c, -0.911}, {d, 0.7122}, {e, 1.102}, {f, 0.151}, {g, 1.223}}; - PauliExpBox peb0({Pauli::I, Pauli::X, Pauli::Z, Pauli::I, Pauli::Z}, ea); + PauliExpBox peb0({{Pauli::I, Pauli::X, Pauli::Z, Pauli::I, Pauli::Z}, ea}); circ.add_box(peb0, {0, 1, 2, 3, 4}); - PauliExpBox peb1({Pauli::I, Pauli::Y, Pauli::I, Pauli::Z, Pauli::Y}, eb); + PauliExpBox peb1({{Pauli::I, Pauli::Y, Pauli::I, Pauli::Z, Pauli::Y}, eb}); circ.add_box(peb1, {0, 1, 2, 3, 4}); - PauliExpBox peb2({Pauli::X, Pauli::X, Pauli::I, Pauli::Y, Pauli::I}, ec); + PauliExpBox peb2({{Pauli::X, Pauli::X, Pauli::I, Pauli::Y, Pauli::I}, ec}); circ.add_box(peb2, {0, 1, 2, 3, 4}); - PauliExpBox peb3({Pauli::Y, Pauli::Y, Pauli::X, Pauli::I, Pauli::I}, ed); + PauliExpBox peb3({{Pauli::Y, Pauli::Y, Pauli::X, Pauli::I, Pauli::I}, ed}); circ.add_box(peb3, {0, 1, 2, 3, 4}); - PauliExpBox peb4({Pauli::Z, Pauli::I, Pauli::Y, Pauli::X, Pauli::X}, ee); + PauliExpBox peb4({{Pauli::Z, Pauli::I, Pauli::Y, Pauli::X, Pauli::X}, ee}); circ.add_box(peb4, {0, 1, 2, 3, 4}); - PauliExpBox peb5({Pauli::Z, Pauli::X, Pauli::I, Pauli::Z, Pauli::Z}, ef); + PauliExpBox peb5({{Pauli::Z, Pauli::X, Pauli::I, Pauli::Z, Pauli::Z}, ef}); circ.add_box(peb5, {0, 1, 2, 3, 4}); - PauliExpBox peb6({Pauli::Z, Pauli::Y, Pauli::Z, Pauli::I, Pauli::Y}, eg); + PauliExpBox peb6({{Pauli::Z, Pauli::Y, Pauli::Z, Pauli::I, Pauli::Y}, eg}); circ.add_box(peb6, {0, 1, 2, 3, 4}); Circuit test1 = prepend >> circ; @@ -730,90 +730,68 @@ SCENARIO("Test mutual diagonalisation of fully commuting sets") { SCENARIO("Conjugating Cliffords through Pauli tensors") { GIVEN("A 3qb XYZ pauli tensor") { - QubitPauliTensor qpt({Pauli::X, Pauli::Y, Pauli::Z}); + SpPauliStabiliser qpt(DensePauliMap{Pauli::X, Pauli::Y, Pauli::Z}); WHEN("Commuting a Hadamard through qb0") { Qubit qb0(0); conjugate_PauliTensor(qpt, OpType::H, qb0); - auto it = qpt.string.map.find(qb0); - REQUIRE(it != qpt.string.map.end()); THEN("X becomes Z") { - REQUIRE(it->second == Pauli::Z); - REQUIRE(std::abs(qpt.coeff - 1.) < EPS); + REQUIRE(qpt.get(qb0) == Pauli::Z); + REQUIRE(qpt.is_real_negative() == false); } } WHEN("Commuting a X through qb0") { Qubit qb0(0); conjugate_PauliTensor(qpt, OpType::X, qb0); - auto it = qpt.string.map.find(qb0); - REQUIRE(it != qpt.string.map.end()); THEN("X remains X") { - REQUIRE(it->second == Pauli::X); - REQUIRE(std::abs(qpt.coeff - 1.) < EPS); + REQUIRE(qpt.get(qb0) == Pauli::X); + REQUIRE(qpt.is_real_negative() == false); } } WHEN("Commuting a X through qb1") { Qubit qb1(1); conjugate_PauliTensor(qpt, OpType::X, qb1); - auto it = qpt.string.map.find(qb1); - REQUIRE(it != qpt.string.map.end()); THEN("Y becomes -Y") { - REQUIRE(it->second == Pauli::Y); - REQUIRE(std::abs(qpt.coeff + 1.) < EPS); + REQUIRE(qpt.get(qb1) == Pauli::Y); + REQUIRE(qpt.is_real_negative() == true); } } WHEN("Commuting a CX through qb0-qb1") { Qubit qb0(0), qb1(1); conjugate_PauliTensor(qpt, OpType::CX, qb0, qb1); - auto it0 = qpt.string.map.find(qb0); - auto it1 = qpt.string.map.find(qb1); - REQUIRE(it0 != qpt.string.map.end()); - REQUIRE(it1 != qpt.string.map.end()); THEN("XY becomes YZ") { - REQUIRE(it0->second == Pauli::Y); - REQUIRE(it1->second == Pauli::Z); - REQUIRE(std::abs(qpt.coeff - 1.) < EPS); + REQUIRE(qpt.get(qb0) == Pauli::Y); + REQUIRE(qpt.get(qb1) == Pauli::Z); + REQUIRE(qpt.is_real_negative() == false); } } WHEN("Commuting an XXPhase3 through qb0-qb1-qb2") { Qubit qb0(0), qb1(1), qb2(2); conjugate_PauliTensor(qpt, OpType::XXPhase3, qb0, qb1, qb2); - auto it0 = qpt.string.map.find(qb0); - auto it1 = qpt.string.map.find(qb1); - auto it2 = qpt.string.map.find(qb2); - REQUIRE(it0 != qpt.string.map.end()); - REQUIRE(it1 != qpt.string.map.end()); - REQUIRE(it2 != qpt.string.map.end()); THEN("XYZ becomes -XZY") { - REQUIRE(it0->second == Pauli::X); - REQUIRE(it1->second == Pauli::Z); - REQUIRE(it2->second == Pauli::Y); - REQUIRE(std::abs(qpt.coeff + 1.) < EPS); + REQUIRE(qpt.get(qb0) == Pauli::X); + REQUIRE(qpt.get(qb1) == Pauli::Z); + REQUIRE(qpt.get(qb2) == Pauli::Y); + REQUIRE(qpt.is_real_negative() == true); } } } GIVEN("A 3qb XXX pauli tensor") { - QubitPauliTensor qpt({Pauli::X, Pauli::X, Pauli::X}); + SpPauliStabiliser qpt(DensePauliMap{Pauli::X, Pauli::X, Pauli::X}); WHEN("Commuting an XXPhase3 through qb0-qb1-qb2") { Qubit qb0(0), qb1(1), qb2(2); - auto it0 = qpt.string.map.find(qb0); - auto it1 = qpt.string.map.find(qb1); - auto it2 = qpt.string.map.find(qb2); - REQUIRE(it0 != qpt.string.map.end()); - REQUIRE(it1 != qpt.string.map.end()); - REQUIRE(it2 != qpt.string.map.end()); THEN("XXX remains XXX") { - REQUIRE(it0->second == Pauli::X); - REQUIRE(it1->second == Pauli::X); - REQUIRE(it2->second == Pauli::X); - REQUIRE(std::abs(qpt.coeff - 1.) < EPS); + REQUIRE(qpt.get(qb0) == Pauli::X); + REQUIRE(qpt.get(qb1) == Pauli::X); + REQUIRE(qpt.get(qb2) == Pauli::X); + REQUIRE(qpt.is_real_negative() == false); } } } } SCENARIO("Test greedy diagonalisation explicitly") { - auto is_diagonal = [](const QubitPauliTensor& qpt) { - for (auto [qb, p] : qpt.string.map) { + auto is_diagonal = [](const SpSymPauliTensor& qpt) { + for (auto [qb, p] : qpt.string) { if (p != Pauli::I && p != Pauli::Z) { return false; } @@ -821,45 +799,38 @@ SCENARIO("Test greedy diagonalisation explicitly") { return true; }; - auto apply_strategy = - [](std::list>& gadgets, - std::set& qubits, Circuit& cliff_circ, - const CXConfigType config) { - while (!qubits.empty()) { - Conjugations conjugations; - greedy_diagonalise(gadgets, qubits, conjugations, cliff_circ, config); - for (auto& [g, expr] : gadgets) { - apply_conjugations(g, conjugations); - } - check_easy_diagonalise(gadgets, qubits, cliff_circ); - } - }; + auto apply_strategy = [](std::list& gadgets, + std::set& qubits, Circuit& cliff_circ, + const CXConfigType config) { + while (!qubits.empty()) { + Conjugations conjugations; + greedy_diagonalise(gadgets, qubits, conjugations, cliff_circ, config); + for (auto& g : gadgets) { + apply_conjugations(g, conjugations); + } + check_easy_diagonalise(gadgets, qubits, cliff_circ); + } + }; GIVEN("A large-ish set of PauliTensor") { unsigned n_qbs = 6; std::set qbs; for (unsigned i = 0; i < n_qbs; ++i) qbs.insert(Qubit(i)); - std::list> gadgets; + std::list gadgets; Conjugations conjugations; Circuit cliff_circ(n_qbs); // commuting set - std::vector tensors; - tensors.push_back(QubitPauliTensor( - {Pauli::Z, Pauli::Z, Pauli::Z, Pauli::X, Pauli::X, Pauli::X})); - tensors.push_back(QubitPauliTensor( - {Pauli::Z, Pauli::X, Pauli::Y, Pauli::Z, Pauli::Z, Pauli::X})); - tensors.push_back(QubitPauliTensor( - {Pauli::Z, Pauli::Y, Pauli::X, Pauli::Z, Pauli::Z, Pauli::X})); - tensors.push_back(QubitPauliTensor( - {Pauli::Z, Pauli::Y, Pauli::X, Pauli::Y, Pauli::Y, Pauli::X})); - tensors.push_back(QubitPauliTensor( - {Pauli::X, Pauli::Z, Pauli::Z, Pauli::Y, Pauli::Y, Pauli::Y})); - std::vector exprs{1.13, 0.226, 0.013, 0.952, 1.88}; - - for (unsigned i = 0; i < 5; ++i) { - gadgets.push_back({tensors[i], exprs[i]}); - } + gadgets.push_back(SpSymPauliTensor( + {Pauli::Z, Pauli::Z, Pauli::Z, Pauli::X, Pauli::X, Pauli::X}, 1.13)); + gadgets.push_back(SpSymPauliTensor( + {Pauli::Z, Pauli::X, Pauli::Y, Pauli::Z, Pauli::Z, Pauli::X}, 0.226)); + gadgets.push_back(SpSymPauliTensor( + {Pauli::Z, Pauli::Y, Pauli::X, Pauli::Z, Pauli::Z, Pauli::X}, 0.013)); + gadgets.push_back(SpSymPauliTensor( + {Pauli::Z, Pauli::Y, Pauli::X, Pauli::Y, Pauli::Y, Pauli::X}, 0.952)); + gadgets.push_back(SpSymPauliTensor( + {Pauli::X, Pauli::Z, Pauli::Z, Pauli::Y, Pauli::Y, Pauli::Y}, 1.88)); WHEN("a single run with Snake configuration") { CXConfigType cx_config = CXConfigType::Snake; @@ -874,7 +845,7 @@ SCENARIO("Test greedy diagonalisation explicitly") { apply_strategy(gadgets, qbs, cliff_circ, cx_config); THEN("gadgets are diagonal") { for (const auto& g : gadgets) { - REQUIRE(is_diagonal(g.first)); + REQUIRE(is_diagonal(g)); } } } @@ -891,7 +862,7 @@ SCENARIO("Test greedy diagonalisation explicitly") { apply_strategy(gadgets, qbs, cliff_circ, cx_config); THEN("gadgets are diagonal") { for (const auto& g : gadgets) { - REQUIRE(is_diagonal(g.first)); + REQUIRE(is_diagonal(g)); } } } @@ -908,7 +879,7 @@ SCENARIO("Test greedy diagonalisation explicitly") { apply_strategy(gadgets, qbs, cliff_circ, cx_config); THEN("gadgets are diagonal") { for (const auto& g : gadgets) { - REQUIRE(is_diagonal(g.first)); + REQUIRE(is_diagonal(g)); } } } @@ -925,7 +896,7 @@ SCENARIO("Test greedy diagonalisation explicitly") { apply_strategy(gadgets, qbs, cliff_circ, cx_config); THEN("gadgets are diagonal") { for (const auto& g : gadgets) { - REQUIRE(is_diagonal(g.first)); + REQUIRE(is_diagonal(g)); } } } @@ -941,23 +912,21 @@ SCENARIO("Diagonalise a pair of gadgets") { Circuit circ(n_qbs); // commuting set - std::vector tensors; - tensors.push_back(QubitPauliTensor( - {Pauli::Z, Pauli::Z, Pauli::X, Pauli::I, Pauli::I, Pauli::X})); - tensors.push_back(QubitPauliTensor( - {Pauli::Z, Pauli::Z, Pauli::X, Pauli::Z, Pauli::Z, Pauli::I})); - std::vector exprs{1.13, 0.226}; + std::vector gadgets; + gadgets.push_back(SpSymPauliTensor( + {Pauli::Z, Pauli::Z, Pauli::X, Pauli::I, Pauli::I, Pauli::X}, 1.13)); + gadgets.push_back(SpSymPauliTensor( + {Pauli::Z, Pauli::Z, Pauli::X, Pauli::Z, Pauli::Z, Pauli::I}, 0.226)); Circuit correct; for (unsigned i = 0; i < 2; ++i) { - append_single_pauli_gadget(correct, tensors[i], exprs[i]); + append_single_pauli_gadget(correct, gadgets.at(i)); } auto u_correct = tket_sim::get_unitary(correct); GIVEN("Snake configuration") { CXConfigType config = CXConfigType::Snake; - append_pauli_gadget_pair( - circ, tensors[0], exprs[0], tensors[1], exprs[1], config); + append_pauli_gadget_pair(circ, gadgets.at(0), gadgets.at(1), config); THEN("Unitary is correct") { auto u_res = tket_sim::get_unitary(circ); REQUIRE((u_correct - u_res).cwiseAbs().sum() < ERR_EPS); @@ -965,8 +934,7 @@ SCENARIO("Diagonalise a pair of gadgets") { } GIVEN("Star configuration") { CXConfigType config = CXConfigType::Star; - append_pauli_gadget_pair( - circ, tensors[0], exprs[0], tensors[1], exprs[1], config); + append_pauli_gadget_pair(circ, gadgets.at(0), gadgets.at(1), config); THEN("Unitary is correct") { auto u_res = tket_sim::get_unitary(circ); REQUIRE((u_correct - u_res).cwiseAbs().sum() < ERR_EPS); @@ -974,8 +942,7 @@ SCENARIO("Diagonalise a pair of gadgets") { } GIVEN("Tree configuration") { CXConfigType config = CXConfigType::Tree; - append_pauli_gadget_pair( - circ, tensors[0], exprs[0], tensors[1], exprs[1], config); + append_pauli_gadget_pair(circ, gadgets.at(0), gadgets.at(1), config); THEN("Unitary is correct") { auto u_res = tket_sim::get_unitary(circ); REQUIRE((u_correct - u_res).cwiseAbs().sum() < ERR_EPS); @@ -983,8 +950,7 @@ SCENARIO("Diagonalise a pair of gadgets") { } GIVEN("MultiQGate configuration") { CXConfigType config = CXConfigType::MultiQGate; - append_pauli_gadget_pair( - circ, tensors[0], exprs[0], tensors[1], exprs[1], config); + append_pauli_gadget_pair(circ, gadgets.at(0), gadgets.at(1), config); circ.decompose_boxes_recursively(); THEN("XXPhase3 were used") { REQUIRE(circ.count_gates(OpType::XXPhase3) == 2); diff --git a/tket/test/src/test_PauliString.cpp b/tket/test/src/test_PauliString.cpp deleted file mode 100644 index fca7fdbe63..0000000000 --- a/tket/test/src/test_PauliString.cpp +++ /dev/null @@ -1,277 +0,0 @@ -// Copyright 2019-2023 Cambridge Quantum Computing -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#include -#include - -#include "CircuitsForTesting.hpp" -#include "testutil.hpp" -#include "tket/Converters/PauliGadget.hpp" -#include "tket/PauliGraph/ConjugatePauliFunctions.hpp" -#include "tket/Utils/PauliStrings.hpp" - -namespace tket { -namespace test_PauliString { - -SCENARIO("Testing equality of QubitPauliTensor") { - Qubit q0 = Qubit("q", 0); - Qubit q1 = Qubit("q", 1); - Qubit q2 = Qubit("r", 0); - Qubit q3 = Qubit("s"); - Qubit q4 = Qubit("t", 0, 1); - Qubit q5 = Qubit("t", 0, 0); - GIVEN("Two exactly identical Pauli strings") { - QubitPauliMap map = { - {q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}, {q3, Pauli::Z}}; - QubitPauliTensor a(map, i_); - QubitPauliTensor b(map, i_); - REQUIRE(a == b); - THEN("We add some extra Is on each one") { - a.string.map.insert({q4, Pauli::I}); - b.string.map.insert({q5, Pauli::I}); - REQUIRE(a == b); - } - } - GIVEN("Two Pauli strings with different Paulis but same coefficient") { - QubitPauliTensor a(q0, Pauli::X); - QubitPauliTensor b(q0, Pauli::Y); - REQUIRE(!(a == b)); - } - GIVEN("Two Pauli strings with disjoint Paulis but same coefficient") { - QubitPauliTensor a(q0, Pauli::X); - QubitPauliTensor b(q1, Pauli::X); - REQUIRE(!(a == b)); - } - GIVEN("Two Pauli strings with same Paulis but different coefficient") { - QubitPauliTensor a(q0, Pauli::X, 1.); - QubitPauliTensor b(q0, Pauli::X, i_); - REQUIRE(!(a == b)); - } - GIVEN("Two completely different Pauli strings") { - QubitPauliString tensor_a( - {{q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}, {q3, Pauli::Z}}); - QubitPauliString tensor_b( - {{q0, Pauli::X}, {q1, Pauli::I}, {q2, Pauli::Z}, {q4, Pauli::Y}}); - QubitPauliTensor a(tensor_a, 1.); - QubitPauliTensor b(tensor_b, i_); - REQUIRE(!(a == b)); - } -} - -SCENARIO("Testing multiplication of QubitPauliTensor") { - Qubit q0 = Qubit("q", 0); - Qubit q1 = Qubit("q", 1); - Qubit q2 = Qubit("r", 0); - Qubit q3 = Qubit("s"); - Qubit q4 = Qubit("t", 0, 1); - GIVEN("Two Pauli strings with disjoint non-trivial components") { - QubitPauliTensor a(q0, Pauli::X, 2.); - QubitPauliTensor b(q1, Pauli::Y, i_); - QubitPauliTensor c({{q0, Pauli::X}, {q1, Pauli::Y}}, 2. * i_); - REQUIRE((a * b) == c); - } - GIVEN("Multiplying by a trivial Pauli string") { - QubitPauliTensor a(q0, Pauli::X, 2.); - QubitPauliTensor b(q0, Pauli::X, 3. * i_); - REQUIRE((a * QubitPauliTensor(1.5 * i_)) == b); - } - GIVEN("Two exactly identical Pauli strings") { - QubitPauliMap map = { - {q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}, {q3, Pauli::Z}}; - QubitPauliTensor a(map, i_); - QubitPauliTensor b(-1.); - REQUIRE((a * a) == b); - } - GIVEN("Each individual Pauli combination") { - QubitPauliTensor I(q0, Pauli::I); - QubitPauliTensor X(q0, Pauli::X); - QubitPauliTensor Y(q0, Pauli::Y); - QubitPauliTensor Z(q0, Pauli::Z); - QubitPauliTensor i(i_); - QubitPauliTensor mi(-i_); - REQUIRE((I * I) == I); - REQUIRE((I * X) == X); - REQUIRE((I * Y) == Y); - REQUIRE((I * Z) == Z); - REQUIRE((X * I) == X); - REQUIRE((X * X) == I); - REQUIRE((X * Y) == (i * Z)); - REQUIRE((X * Z) == (mi * Y)); - REQUIRE((Y * I) == Y); - REQUIRE((Y * X) == (mi * Z)); - REQUIRE((Y * Y) == I); - REQUIRE((Y * Z) == (i * X)); - REQUIRE((Z * I) == Z); - REQUIRE((Z * X) == (i * Y)); - REQUIRE((Z * Y) == (mi * X)); - REQUIRE((Z * Z) == I); - } - GIVEN("2*IXYZ(I) * -1.5i*XIZ(I)Y") { - QubitPauliString tensor_a( - {{q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}, {q3, Pauli::Z}}); - QubitPauliString tensor_b( - {{q0, Pauli::X}, {q1, Pauli::I}, {q2, Pauli::Z}, {q4, Pauli::Y}}); - QubitPauliTensor a(tensor_a, 2.); - QubitPauliTensor b(tensor_b, -1.5 * i_); - QubitPauliString tensor_c( - {{q0, Pauli::X}, - {q1, Pauli::X}, - {q2, Pauli::X}, - {q3, Pauli::Z}, - {q4, Pauli::Y}}); - QubitPauliTensor c(tensor_c, 3.); - REQUIRE((a * b) == c); - } -} - -SCENARIO("Test basic conjugations") { - const Qubit q0 = Qubit("q", 0); - const Qubit q1 = Qubit("q", 1); - Circuit circ; - circ.add_qubit(q0); - circ.add_qubit(q1); - // add some arbitrary rotations to get away from |00> state - const auto& prepend = CircuitsForTesting::get().prepend_2qb_circuit; - const double angle = 0.845; - // generate all different 2-qb pauli strings - std::vector qps_vec; - for (const auto& map_entry : QubitPauliTensor::get_mult_matrix()) { - const std::pair& paulis = map_entry.first; - QubitPauliMap map = {{q0, paulis.first}, {q1, paulis.second}}; - QubitPauliTensor qps(map); - qps_vec.push_back(qps); - } - - const auto perform_test = [&q0, &qps_vec, angle, &prepend]( - OpType op_type, OpType op_type_dag, - OpType tensor_op_type, bool reverse = false) { - for (QubitPauliTensor qps : qps_vec) { - Circuit test(2); - test.add_op(op_type, {0}); - append_single_pauli_gadget(test, qps, angle); - test.add_op(op_type_dag, {0}); - test = prepend >> test; - conjugate_PauliTensor(qps, tensor_op_type, q0, reverse); - Circuit test1 = prepend; - append_single_pauli_gadget(test1, qps, angle); - REQUIRE(test_statevector_comparison(test, test1)); - } - }; - - WHEN("Test Hs") { perform_test(OpType::H, OpType::H, OpType::H); } - WHEN("Test Ss") { - perform_test(OpType::S, OpType::Sdg, OpType::S); - perform_test(OpType::Sdg, OpType::S, OpType::S, true); - } - WHEN("Test Vs") { - perform_test(OpType::V, OpType::Vdg, OpType::V); - perform_test(OpType::Vdg, OpType::V, OpType::V, true); - } - WHEN("Test Xs") { perform_test(OpType::X, OpType::X, OpType::X); } - WHEN("Test Zs") { perform_test(OpType::Z, OpType::Z, OpType::Z); } - WHEN("Test CXs") { - for (QubitPauliTensor qps : qps_vec) { - Circuit test(2); - test.add_op(OpType::CX, {0, 1}); - append_single_pauli_gadget(test, qps, angle); - test.add_op(OpType::CX, {0, 1}); - test = prepend >> test; - conjugate_PauliTensor(qps, OpType::CX, q0, q1); - Circuit test2 = prepend; - append_single_pauli_gadget(test2, qps, angle); - REQUIRE(test_statevector_comparison(test, test2)); - } - } -} - -SCENARIO("Test hashing") { - GIVEN("Trivial strings") { - QubitPauliString qps1; - QubitPauliString qps2; - REQUIRE(hash_value(qps1) == hash_value(qps2)); - WHEN("Add I Pauli") { - qps1.map[Qubit(0)] = Pauli::I; - REQUIRE(hash_value(qps1) == hash_value(qps2)); - } - } - GIVEN("Nontrivial strings") { - QubitPauliMap qpm1{ - {Qubit(0), Pauli::Z}, - {Qubit(1), Pauli::Y}, - {Qubit(2), Pauli::X}, - {Qubit(3), Pauli::I}}; - QubitPauliString qps1(qpm1); - QubitPauliString qps2(qpm1); - qps1.map[Qubit(4)] = Pauli::X; - qps2.map[Qubit(4)] = Pauli::X; - qps2.map[Qubit(5)] = Pauli::I; - REQUIRE(hash_value(qps1) == hash_value(qps2)); - } - GIVEN("Trivial tensor") { - QubitPauliTensor qpt1; - QubitPauliTensor qpt2; - REQUIRE(hash_value(qpt1) == hash_value(qpt2)); - WHEN("Add I Pauli") { - qpt1.string.map[Qubit(0)] = Pauli::I; - REQUIRE(hash_value(qpt1) == hash_value(qpt2)); - } - } - GIVEN("Nontrivial tensors") { - QubitPauliMap qpm1{ - {Qubit(0), Pauli::Z}, - {Qubit(1), Pauli::Y}, - {Qubit(2), Pauli::X}, - {Qubit(3), Pauli::I}}; - QubitPauliString qps1(qpm1); - QubitPauliString qps2(qpm1); - qps1.map[Qubit(4)] = Pauli::X; - qps2.map[Qubit(4)] = Pauli::X; - qps2.map[Qubit(5)] = Pauli::I; - QubitPauliTensor qpt1(qps1, .5 * i_); - QubitPauliTensor qpt2(qps2, .5 * i_); - qpt2.string.map[Qubit(6)] = Pauli::I; - REQUIRE(hash_value(qpt1) == hash_value(qpt2)); - } -} - -SCENARIO("Test matrix product utilities") { - GIVEN("Simple operator and its +1 eigenvector") { - const QubitPauliString op({{Qubit(0), Pauli::X}, {Qubit(1), Pauli::Y}}); - Eigen::VectorXcd state(4); - - state << Complex(0.5, 0), Complex(0, 0.5), Complex(0.5, 0), Complex(0, 0.5); - WHEN("Operator acts on statevector") { - Eigen::VectorXcd dotproduct = op.dot_state(state); - THEN("The eigenvector is unchanged") { - REQUIRE(dotproduct.isApprox(state)); - } - } - - WHEN("Expectation value is calculated w.r.t. +1 eigenvector") { - Complex eigenval = op.state_expectation(state); - THEN("The eigenvalue is correct") { REQUIRE(eigenval == Complex(1, 0)); } - } - } - GIVEN("A qubit list with repeats") { - const QubitPauliString op({{Qubit(0), Pauli::X}, {Qubit(1), Pauli::Y}}); - REQUIRE_THROWS(op.to_sparse_matrix({Qubit(0), Qubit(0), Qubit(1)})); - } - GIVEN("A qubit list that doesn't contain all qubits in the string") { - const QubitPauliString op({{Qubit(0), Pauli::X}, {Qubit(1), Pauli::Y}}); - REQUIRE_THROWS(op.to_sparse_matrix({Qubit(0), Qubit(2)})); - } -} - -} // namespace test_PauliString -} // namespace tket diff --git a/tket/test/src/test_PauliTensor.cpp b/tket/test/src/test_PauliTensor.cpp new file mode 100644 index 0000000000..3a90882922 --- /dev/null +++ b/tket/test/src/test_PauliTensor.cpp @@ -0,0 +1,623 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include + +#include "tket/Utils/PauliTensor.hpp" + +namespace tket { +namespace test_PauliTensor { + +SCENARIO("Testing equality of sparse PauliTensor variants") { + Qubit q0 = Qubit("q", 0); + Qubit q1 = Qubit("q", 1); + Qubit q2 = Qubit("r", 0); + Qubit q3 = Qubit("s"); + Qubit q4 = Qubit("t", 0, 1); + Qubit q5 = Qubit("t", 0, 0); + GIVEN("Two exactly identical Pauli strings") { + QubitPauliMap map = { + {q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}, {q3, Pauli::Z}}; + SpCxPauliTensor a(map, i_); + SpCxPauliTensor b(map, i_); + REQUIRE(a == b); + THEN("We add some extra Is on each one") { + a.set(q4, Pauli::I); + b.set(q5, Pauli::I); + REQUIRE(a == b); + } + } + GIVEN("Two Pauli strings with different Paulis but same coefficient") { + SpPauliString a({{q0, Pauli::X}}); + SpPauliString b({{q0, Pauli::Y}}); + REQUIRE(a != b); + REQUIRE(a < b); + } + GIVEN("Two Pauli strings with disjoint Paulis but same coefficient") { + SpPauliString a(q0, Pauli::X); + SpPauliString b(q1, Pauli::X); + REQUIRE(a != b); + REQUIRE(b < a); + } + GIVEN("Two Pauli strings with same Paulis but different coefficient") { + SpCxPauliTensor a(q0, Pauli::X, 1.); + SpCxPauliTensor b(q0, Pauli::X, i_); + REQUIRE(a != b); + REQUIRE(b < a); + } + GIVEN("Two completely different Pauli strings") { + QubitPauliMap qpm_a( + {{q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}, {q3, Pauli::Z}}); + QubitPauliMap qpm_b( + {{q0, Pauli::X}, {q1, Pauli::I}, {q2, Pauli::Z}, {q4, Pauli::Y}}); + SpCxPauliTensor a(qpm_a, 1.); + SpCxPauliTensor b(qpm_b, i_); + REQUIRE(a != b); + REQUIRE(a < b); + } +} + +SCENARIO("Testing equality of dense PauliTensor variants") { + GIVEN("Two exactly identical Pauli strings") { + DensePauliMap map = {Pauli::I, Pauli::X, Pauli::Y, Pauli::Z}; + CxPauliTensor a(map, i_); + CxPauliTensor b(map, i_); + REQUIRE(a == b); + THEN("We add some extra Is on each one") { + a.set(4, Pauli::I); + b.set(5, Pauli::I); + REQUIRE(a == b); + } + } + GIVEN("Two Pauli strings with different Paulis but same coefficient") { + PauliString a({Pauli::X}); + PauliString b({Pauli::Y}); + REQUIRE(a != b); + REQUIRE(a < b); + } + GIVEN("Two Pauli strings with disjoint Paulis but same coefficient") { + PauliString a({Pauli::X}); + PauliString b({Pauli::I, Pauli::X}); + REQUIRE(a != b); + REQUIRE(b < a); + } + GIVEN("Two Pauli strings with same Paulis but different coefficient") { + CxPauliTensor a({Pauli::X}, 1.); + CxPauliTensor b({Pauli::X}, i_); + REQUIRE(a != b); + REQUIRE(b < a); + } + GIVEN("Two completely different Pauli strings") { + DensePauliMap qpm_a({Pauli::I, Pauli::X, Pauli::Y, Pauli::Z}); + DensePauliMap qpm_b({Pauli::X, Pauli::I, Pauli::Z, Pauli::Y}); + CxPauliTensor a(qpm_a, 1.); + CxPauliTensor b(qpm_b, i_); + REQUIRE(a != b); + REQUIRE(a < b); + } +} + +SCENARIO("Testing casting between different PauliTensor variants") { + GIVEN("Casting between different coefficient types") { + SpPauliString a1{}; + SpPauliStabiliser b1{}; + SpPauliStabiliser bi({}, 1); + SpPauliStabiliser bm1({}, 2); + SpPauliStabiliser bmi({}, 3); + SpCxPauliTensor c1{}; + SpCxPauliTensor ci({}, i_); + SpCxPauliTensor cm1({}, -1.); + SpCxPauliTensor cmi({}, -i_); + SpCxPauliTensor cval({}, 0.48 - 2.3 * i_); + SpSymPauliTensor d1{}; + SpSymPauliTensor di({}, Expr(SymEngine::I)); + SpSymPauliTensor dm1({}, -1.); + SpSymPauliTensor dmi({}, -Expr(SymEngine::I)); + SpSymPauliTensor dval({}, 0.48 - 2.3 * i_); + SpSymPauliTensor dsym({}, Expr("a")); + + CHECK((SpPauliString)a1 == a1); + CHECK((SpPauliString)b1 == a1); + CHECK((SpPauliString)c1 == a1); + CHECK((SpPauliString)d1 == a1); + CHECK((SpPauliStabiliser)a1 == b1); + CHECK((SpPauliStabiliser)b1 == b1); + CHECK((SpPauliStabiliser)c1 == b1); + CHECK((SpPauliStabiliser)d1 == b1); + CHECK((SpCxPauliTensor)a1 == c1); + CHECK((SpCxPauliTensor)b1 == c1); + CHECK((SpCxPauliTensor)c1 == c1); + CHECK((SpCxPauliTensor)d1 == c1); + CHECK((SpSymPauliTensor)a1 == d1); + CHECK((SpSymPauliTensor)b1 == d1); + CHECK((SpSymPauliTensor)c1 == d1); + CHECK((SpSymPauliTensor)d1 == d1); + + CHECK((SpPauliString)bi == a1); + CHECK((SpPauliString)ci == a1); + CHECK((SpPauliString)di == a1); + CHECK((SpPauliStabiliser)bi == bi); + CHECK((SpPauliStabiliser)ci == bi); + CHECK((SpPauliStabiliser)di == bi); + CHECK((SpCxPauliTensor)bi == ci); + CHECK((SpCxPauliTensor)ci == ci); + CHECK((SpCxPauliTensor)di == ci); + CHECK((SpSymPauliTensor)bi == di); + CHECK((SpSymPauliTensor)ci == di); + CHECK((SpSymPauliTensor)di == di); + + CHECK((SpPauliString)bm1 == a1); + CHECK((SpPauliString)cm1 == a1); + CHECK((SpPauliString)dm1 == a1); + CHECK((SpPauliStabiliser)bm1 == bm1); + CHECK((SpPauliStabiliser)cm1 == bm1); + CHECK((SpPauliStabiliser)dm1 == bm1); + CHECK((SpCxPauliTensor)bm1 == cm1); + CHECK((SpCxPauliTensor)cm1 == cm1); + CHECK((SpCxPauliTensor)dm1 == cm1); + CHECK((SpSymPauliTensor)bm1 == dm1); + CHECK((SpSymPauliTensor)cm1 == dm1); + CHECK((SpSymPauliTensor)dm1 == dm1); + + CHECK((SpPauliString)bmi == a1); + CHECK((SpPauliString)cmi == a1); + CHECK((SpPauliString)dmi == a1); + CHECK((SpPauliStabiliser)bmi == bmi); + CHECK((SpPauliStabiliser)cmi == bmi); + CHECK((SpPauliStabiliser)dmi == bmi); + CHECK((SpCxPauliTensor)bmi == cmi); + CHECK((SpCxPauliTensor)cmi == cmi); + CHECK((SpCxPauliTensor)dmi == cmi); + CHECK((SpSymPauliTensor)bmi == dmi); + CHECK((SpSymPauliTensor)cmi == dmi); + CHECK((SpSymPauliTensor)dmi == dmi); + + CHECK((SpPauliString)cval == a1); + CHECK((SpPauliString)dval == a1); + REQUIRE_THROWS((SpPauliStabiliser)cval); + REQUIRE_THROWS((SpPauliStabiliser)dval); + CHECK((SpCxPauliTensor)cval == cval); + CHECK((SpCxPauliTensor)dval == cval); + CHECK((SpSymPauliTensor)cval == dval); + CHECK((SpSymPauliTensor)dval == dval); + + CHECK((SpPauliString)dsym == a1); + REQUIRE_THROWS((SpPauliStabiliser)dsym); + REQUIRE_THROWS((SpCxPauliTensor)dsym); + CHECK((SpSymPauliTensor)dsym == dsym); + } + GIVEN("Casting between different Pauli containers") { + PauliString ps({Pauli::I, Pauli::X, Pauli::Y}); + SpPauliString sps({Qubit(1), Qubit(2)}, {Pauli::X, Pauli::Y}); + SpPauliString non_default(Qubit("a", 0), Pauli::Z); + + CHECK((SpPauliString)ps == sps); + CHECK((SpPauliString)sps == sps); + CHECK((PauliString)ps == ps); + CHECK((PauliString)sps == ps); + CHECK((SpPauliString)non_default == non_default); + REQUIRE_THROWS((PauliString)non_default); + } + GIVEN("Casting coefficient, keeping dense container") { + DensePauliMap dpm{Pauli::X, Pauli::I, Pauli::Z}; + CHECK((PauliStabiliser)PauliString(dpm) == PauliStabiliser(dpm)); + CHECK( + (SymPauliTensor)CxPauliTensor(dpm, 0.87 + 1.2 * i_) == + SymPauliTensor(dpm, Expr(0.87 + 1.2 * i_))); + } +} + +SCENARIO("Qubit partitions") { + GIVEN("Sparse PauliTensors") { + std::vector qs{Qubit(0), Qubit("a", 0), Qubit("a", 1), + Qubit("b", {0, 0}), Qubit("c", 4), Qubit("p", 12), + Qubit("anc", 0), Qubit(2)}; + std::list qsl{qs.begin(), qs.end()}; + SpPauliString xxyyzzii( + qsl, {Pauli::X, Pauli::X, Pauli::Y, Pauli::Y, Pauli::Z, Pauli::Z, + Pauli::I, Pauli::I}); + SpPauliString ixyxyziz( + qsl, {Pauli::I, Pauli::X, Pauli::Y, Pauli::X, Pauli::Y, Pauli::Z, + Pauli::I, Pauli::Z}); + xxyyzzii.compress(); + + // Common qubits should ignore Pauli::I matches + CHECK( + xxyyzzii.common_qubits(ixyxyziz) == + std::set{qs[1], qs[2], qs[5]}); + CHECK( + xxyyzzii.conflicting_qubits(ixyxyziz) == std::set{qs[3], qs[4]}); + CHECK(xxyyzzii.own_qubits(ixyxyziz) == std::set{qs[0]}); + CHECK(ixyxyziz.own_qubits(xxyyzzii) == std::set{qs[7]}); + } + GIVEN("Dense PauliTensors") { + PauliString xxyyzzii( + {Pauli::X, Pauli::X, Pauli::Y, Pauli::Y, Pauli::Z, Pauli::Z, Pauli::I}); + PauliString ixyxyziz( + {Pauli::I, Pauli::X, Pauli::Y, Pauli::X, Pauli::Y, Pauli::Z, Pauli::I, + Pauli::Z}); + + // Common indices should ignore Pauli::I matches + CHECK(xxyyzzii.common_indices(ixyxyziz) == std::set{1, 2, 5}); + CHECK(xxyyzzii.conflicting_indices(ixyxyziz) == std::set{3, 4}); + CHECK(xxyyzzii.own_indices(ixyxyziz) == std::set{0}); + CHECK(ixyxyziz.own_indices(xxyyzzii) == std::set{7}); + } +} + +SCENARIO("String formatting of PauliTensor") { + CHECK(SpPauliString().to_str() == "()"); + CHECK(SpPauliStabiliser({}, 0).to_str() == "()"); + CHECK(SpPauliStabiliser({}, 1).to_str() == "i*()"); + CHECK(SpPauliStabiliser({}, 2).to_str() == "-()"); + CHECK(SpPauliStabiliser({}, 3).to_str() == "-i*()"); + CHECK(SpCxPauliTensor({}, 1.).to_str() == "()"); + CHECK(SpCxPauliTensor({}, -1.).to_str() == "-()"); + CHECK(SpCxPauliTensor({}, 4.2 + 0.87 * i_).to_str() == "(4.2,0.87)*()"); + CHECK(SpSymPauliTensor({}, 1.).to_str() == "()"); + CHECK(SpSymPauliTensor({}, -1.).to_str() == "-()"); + CHECK( + SpSymPauliTensor({}, 4.2 + 0.87 * Expr(SymEngine::I)).to_str() == + "(4.2 + 0.87*I)*()"); + CHECK(SpSymPauliTensor({}, Expr("2*a")).to_str() == "(2*a)*()"); + + CHECK( + SpPauliString({{Qubit("a", 2), Pauli::X}, + {Qubit("a", 0), Pauli::Z}, + {Qubit("b", 0), Pauli::I}, + {Qubit("b", 1), Pauli::Y}}) + .to_str() == "(Za[0], Xa[2], Ib[0], Yb[1])"); + CHECK( + PauliString({Pauli::I, Pauli::Z, Pauli::X, Pauli::Y, Pauli::I}) + .to_str() == "IZXYI"); + CHECK(PauliStabiliser({Pauli::X, Pauli::Y}, 2).to_str() == "-XY"); + CHECK( + CxPauliTensor({Pauli::Z, Pauli::Z, Pauli::I}, 3.1 - 0.1 * i_).to_str() == + "(3.1,-0.1)*ZZI"); + CHECK( + SymPauliTensor(DensePauliMap(5, Pauli::Y), Expr("k")).to_str() == + "(k)*YYYYY"); +} + +SCENARIO("Testing multiplication of sparse PauliTensor") { + Qubit q0 = Qubit("q", 0); + Qubit q1 = Qubit("q", 1); + Qubit q2 = Qubit("r", 0); + Qubit q3 = Qubit("s"); + Qubit q4 = Qubit("t", 0, 1); + GIVEN("Two Pauli strings with disjoint non-trivial components") { + SpPauliString a(q0, Pauli::X); + SpPauliString b(q1, Pauli::Y); + SpPauliString c({{q0, Pauli::X}, {q1, Pauli::Y}}); + REQUIRE((a * b) == c); + } + GIVEN("Multiplying by a trivial Pauli string") { + SpCxPauliTensor a(q0, Pauli::X, 2.); + SpCxPauliTensor b(q0, Pauli::X, 3. * i_); + REQUIRE((a * SpCxPauliTensor({}, 1.5 * i_)) == b); + } + GIVEN("Two exactly identical Pauli strings") { + QubitPauliMap map = { + {q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}, {q3, Pauli::Z}}; + SpPauliStabiliser a(map, 3); + SpPauliStabiliser b({}, 2); + REQUIRE((a * a).get(q0) == Pauli::I); + REQUIRE((a * a) == b); + } + GIVEN("Each individual Pauli combination") { + SpPauliStabiliser I(q0, Pauli::I); + SpPauliStabiliser X(q0, Pauli::X); + SpPauliStabiliser Y(q0, Pauli::Y); + SpPauliStabiliser Z(q0, Pauli::Z); + SpPauliStabiliser i({}, 1); + SpPauliStabiliser mi({}, 3); + REQUIRE((I * I) == I); + REQUIRE((I * X) == X); + REQUIRE((I * Y) == Y); + REQUIRE((I * Z) == Z); + REQUIRE((X * I) == X); + REQUIRE((X * X) == I); + REQUIRE((X * Y) == (i * Z)); + REQUIRE((X * Z) == (mi * Y)); + REQUIRE((Y * I) == Y); + REQUIRE((Y * X) == (mi * Z)); + REQUIRE((Y * Y) == I); + REQUIRE((Y * Z) == (i * X)); + REQUIRE((Z * I) == Z); + REQUIRE((Z * X) == (i * Y)); + REQUIRE((Z * Y) == (mi * X)); + REQUIRE((Z * Z) == I); + } + GIVEN("2*IXYZ(I) * -1.5i*XIZ(I)Y") { + QubitPauliMap tensor_a( + {{q0, Pauli::I}, {q1, Pauli::X}, {q2, Pauli::Y}, {q3, Pauli::Z}}); + QubitPauliMap tensor_b( + {{q0, Pauli::X}, {q1, Pauli::I}, {q2, Pauli::Z}, {q4, Pauli::Y}}); + SpCxPauliTensor a(tensor_a, 2.); + SpCxPauliTensor b(tensor_b, -1.5 * i_); + QubitPauliMap tensor_c( + {{q0, Pauli::X}, + {q1, Pauli::X}, + {q2, Pauli::X}, + {q3, Pauli::Z}, + {q4, Pauli::Y}}); + SpCxPauliTensor c(tensor_c, 3.); + REQUIRE((a * b) == c); + } +} + +SCENARIO("Testing multiplication of dense PauliTensor") { + GIVEN("Two Pauli strings with disjoint non-trivial components") { + PauliString a({Pauli::X}); + PauliString b({Pauli::I, Pauli::Y}); + PauliString c({Pauli::X, Pauli::Y}); + REQUIRE((a * b) == c); + } + GIVEN("Multiplying by a trivial Pauli string") { + CxPauliTensor a({Pauli::X}, 2.); + CxPauliTensor b({Pauli::X}, 3. * i_); + REQUIRE((a * CxPauliTensor({}, 1.5 * i_)) == b); + } + GIVEN("Two exactly identical Pauli strings") { + DensePauliMap map = {Pauli::I, Pauli::X, Pauli::Y, Pauli::Z}; + PauliStabiliser a(map, 3); + PauliStabiliser b({}, 2); + REQUIRE((a * a) == b); + } + GIVEN("Each individual Pauli combination") { + PauliStabiliser I({Pauli::I}); + PauliStabiliser X({Pauli::X}); + PauliStabiliser Y({Pauli::Y}); + PauliStabiliser Z({Pauli::Z}); + PauliStabiliser i({}, 1); + PauliStabiliser mi({}, 3); + REQUIRE((I * I) == I); + REQUIRE((I * X) == X); + REQUIRE((I * Y) == Y); + REQUIRE((I * Z) == Z); + REQUIRE((X * I) == X); + REQUIRE((X * X) == I); + REQUIRE((X * Y) == (i * Z)); + REQUIRE((X * Z) == (mi * Y)); + REQUIRE((Y * I) == Y); + REQUIRE((Y * X) == (mi * Z)); + REQUIRE((Y * Y) == I); + REQUIRE((Y * Z) == (i * X)); + REQUIRE((Z * I) == Z); + REQUIRE((Z * X) == (i * Y)); + REQUIRE((Z * Y) == (mi * X)); + REQUIRE((Z * Z) == I); + } + GIVEN("2*IXYZ(I) * -1.5i*XIZ(I)Y") { + DensePauliMap tensor_a({Pauli::I, Pauli::X, Pauli::Y, Pauli::Z}); + DensePauliMap tensor_b({Pauli::X, Pauli::I, Pauli::Z, Pauli::I, Pauli::Y}); + CxPauliTensor a(tensor_a, 2.); + CxPauliTensor b(tensor_b, -1.5 * i_); + DensePauliMap tensor_c({Pauli::X, Pauli::X, Pauli::X, Pauli::Z, Pauli::Y}); + CxPauliTensor c(tensor_c, 3.); + REQUIRE((a * b) == c); + } +} + +SCENARIO("Test hashing for sparse PauliTensor") { + GIVEN("Trivial strings") { + SpPauliString qps1; + SpPauliString qps2; + REQUIRE(qps1.hash_value() == qps2.hash_value()); + WHEN("Add I Pauli") { + qps1.set(Qubit(0), Pauli::I); + REQUIRE(qps1.hash_value() == qps2.hash_value()); + } + } + GIVEN("Nontrivial strings") { + QubitPauliMap qpm{ + {Qubit(0), Pauli::Z}, + {Qubit(1), Pauli::Y}, + {Qubit(2), Pauli::X}, + {Qubit(3), Pauli::I}}; + SpPauliString qps1(qpm); + SpPauliString qps2(qpm); + qps1.set(Qubit(4), Pauli::X); + qps2.set(Qubit(4), Pauli::X); + qps2.set(Qubit(5), Pauli::I); + REQUIRE(qps1.hash_value() == qps2.hash_value()); + } + GIVEN("Trivial tensor") { + SpCxPauliTensor qpt1; + SpCxPauliTensor qpt2; + REQUIRE(qpt1.hash_value() == qpt2.hash_value()); + WHEN("Add I Pauli") { + qpt1.set(Qubit(0), Pauli::I); + REQUIRE(qpt1.hash_value() == qpt2.hash_value()); + } + } + GIVEN("Nontrivial tensors") { + QubitPauliMap qpm{ + {Qubit(0), Pauli::Z}, + {Qubit(1), Pauli::Y}, + {Qubit(2), Pauli::X}, + {Qubit(3), Pauli::I}}; + SpSymPauliTensor qpt1(qpm, .5 * i_); + SpSymPauliTensor qpt2(qpm, .5 * i_); + qpt1.set(Qubit(4), Pauli::X); + qpt2.set(Qubit(4), Pauli::X); + qpt2.set(Qubit(5), Pauli::I); + qpt2.set(Qubit(6), Pauli::I); + REQUIRE(qpt1.hash_value() == qpt2.hash_value()); + } +} + +SCENARIO("Test hashing for dense PauliTensor") { + GIVEN("Trivial strings") { + PauliString qps1; + PauliString qps2; + REQUIRE(qps1.hash_value() == qps2.hash_value()); + WHEN("Add I Pauli") { + qps1.set(0, Pauli::I); + REQUIRE(qps1.hash_value() == qps2.hash_value()); + } + } + GIVEN("Nontrivial strings") { + DensePauliMap qpm{Pauli::Z, Pauli::Y, Pauli::X, Pauli::I}; + PauliString qps1(qpm); + PauliString qps2(qpm); + qps1.set(4, Pauli::X); + qps2.set(4, Pauli::X); + qps2.set(5, Pauli::I); + REQUIRE(qps1.hash_value() == qps2.hash_value()); + } + GIVEN("Stabilisers") { + DensePauliMap pm{Pauli::Z, Pauli::Y, Pauli::X, Pauli::I}; + PauliStabiliser ps1(pm, 2); + PauliStabiliser ps2(pm, 6); + REQUIRE(ps1.hash_value() == ps2.hash_value()); + } + GIVEN("Trivial tensor") { + CxPauliTensor qpt1; + CxPauliTensor qpt2; + REQUIRE(qpt1.hash_value() == qpt2.hash_value()); + WHEN("Add I Pauli") { + qpt1.set(0, Pauli::I); + REQUIRE(qpt1.hash_value() == qpt2.hash_value()); + } + } + GIVEN("Nontrivial tensors") { + DensePauliMap qpm{Pauli::Z, Pauli::Y, Pauli::X, Pauli::I}; + SymPauliTensor qpt1(qpm, .5 * i_); + SymPauliTensor qpt2(qpm, .5 * i_); + qpt1.set(4, Pauli::X); + qpt2.set(4, Pauli::X); + qpt2.set(5, Pauli::I); + qpt2.set(6, Pauli::I); + REQUIRE(qpt1.hash_value() == qpt2.hash_value()); + } +} + +SCENARIO("json serialisation of PauliTensor") { + PauliString xyz({Pauli::X, Pauli::Y, Pauli::Z}); + nlohmann::json j = xyz; + CHECK(j.get() == xyz); + SpPauliString za(Qubit("a", 0), Pauli::Z); + j = za; + CHECK(j.get() == za); + PauliStabiliser zz({Pauli::Z, Pauli::Z}, 3); + j = zz; + CHECK(j.get() == zz); + SpPauliStabiliser ziz({Pauli::Z, Pauli::I, Pauli::Z}, 2); + j = ziz; + CHECK(j.get() == ziz); + CxPauliTensor yiy({Pauli::Y, Pauli::I, Pauli::Y}, 0.2 * i_); + j = yiy; + CHECK(j.get() == yiy); + SpCxPauliTensor xb(Qubit("b", {1, 0}), Pauli::X, -2.3); + j = xb; + CHECK(j.get() == xb); + SymPauliTensor izyx({Pauli::I, Pauli::Z, Pauli::Y, Pauli::X}, Expr("g")); + j = izyx; + CHECK(j.get() == izyx); + SpSymPauliTensor xaxb( + {Qubit("a", 0), Qubit("b")}, {Pauli::X, Pauli::X}, -1.98); + j = xaxb; + CHECK(j.get() == xaxb); +} + +SCENARIO("Test matrix evaluation") { + GIVEN("Default ordering") { + SpPauliString ixs({Qubit(0), Qubit(1)}, {Pauli::I, Pauli::X}); + PauliString ixd({Pauli::I, Pauli::X}); + CmplxSpMat ix(4, 4); + ix.insert(0, 1) = 1.; + ix.insert(1, 0) = 1.; + ix.insert(2, 3) = 1.; + ix.insert(3, 2) = 1.; + // Eigen sparse matrices don't have an equality check, isApprox is the + // nearest + CHECK(ixs.to_sparse_matrix().isApprox(ix)); + CHECK(ixd.to_sparse_matrix().isApprox(ix)); + SpPauliString ixq({{Qubit("b", 0), Pauli::X}, {Qubit("a", 1), Pauli::I}}); + CHECK(ixq.to_sparse_matrix().isApprox(ix)); + } + GIVEN("Padding to n qubits") { + SpPauliString ixs(DensePauliMap{Pauli::I, Pauli::X}); + PauliString ixd({Pauli::I, Pauli::X}); + CmplxSpMat ixi(8, 8); + ixi.insert(0, 2) = 1.; + ixi.insert(1, 3) = 1.; + ixi.insert(2, 0) = 1.; + ixi.insert(3, 1) = 1.; + ixi.insert(4, 6) = 1.; + ixi.insert(5, 7) = 1.; + ixi.insert(6, 4) = 1.; + ixi.insert(7, 5) = 1.; + CHECK(ixs.to_sparse_matrix(3).isApprox(ixi)); + CHECK(ixd.to_sparse_matrix(3).isApprox(ixi)); + } + GIVEN("Custom qubit ordering") { + SpPauliString ixs(DensePauliMap{Pauli::I, Pauli::X}); + PauliString ixd({Pauli::I, Pauli::X}); + CmplxSpMat xi(4, 4); + xi.insert(0, 2) = 1.; + xi.insert(1, 3) = 1.; + xi.insert(2, 0) = 1.; + xi.insert(3, 1) = 1.; + CmplxSpMat ixi(8, 8); + ixi.insert(0, 2) = 1.; + ixi.insert(1, 3) = 1.; + ixi.insert(2, 0) = 1.; + ixi.insert(3, 1) = 1.; + ixi.insert(4, 6) = 1.; + ixi.insert(5, 7) = 1.; + ixi.insert(6, 4) = 1.; + ixi.insert(7, 5) = 1.; + CHECK(ixs.to_sparse_matrix({Qubit(1), Qubit(0)}).isApprox(xi)); + CHECK(ixs.to_sparse_matrix({Qubit(2), Qubit(1), Qubit(0)}).isApprox(ixi)); + CHECK(ixd.to_sparse_matrix({Qubit(1), Qubit(0)}).isApprox(xi)); + CHECK(ixd.to_sparse_matrix({Qubit(2), Qubit(1), Qubit(0)}).isApprox(ixi)); + } + GIVEN("Different strings") { + PauliString xyzd({Pauli::X, Pauli::Y, Pauli::Z}); + CmplxSpMat xyz(8, 8); + xyz.insert(0, 6) = -i_; + xyz.insert(1, 7) = i_; + xyz.insert(2, 4) = i_; + xyz.insert(3, 5) = -i_; + xyz.insert(4, 2) = -i_; + xyz.insert(5, 3) = i_; + xyz.insert(6, 0) = i_; + xyz.insert(7, 1) = -i_; + CHECK(xyzd.to_sparse_matrix().isApprox(xyz)); + } + GIVEN("Different coefficients") { + CmplxSpMat ix(4, 4); + ix.insert(0, 1) = 1.; + ix.insert(1, 0) = 1.; + ix.insert(2, 3) = 1.; + ix.insert(3, 2) = 1.; + DensePauliMap ixd{Pauli::I, Pauli::X}; + CHECK(PauliString(ixd).to_sparse_matrix().isApprox(ix)); + CHECK(PauliStabiliser(ixd, 0).to_sparse_matrix().isApprox(ix)); + CHECK(PauliStabiliser(ixd, 1).to_sparse_matrix().isApprox(i_ * ix)); + CHECK(PauliStabiliser(ixd, 2).to_sparse_matrix().isApprox(-ix)); + CHECK(PauliStabiliser(ixd, 3).to_sparse_matrix().isApprox(-i_ * ix)); + CHECK(CxPauliTensor(ixd, 4.2 + 0.1 * i_) + .to_sparse_matrix() + .isApprox(Complex(4.2 + 0.1 * i_) * ix)); + CHECK(SymPauliTensor(ixd, 4.2 + 0.1 * i_) + .to_sparse_matrix() + .isApprox(Complex(4.2 + 0.1 * i_) * ix)); + } +} + +} // namespace test_PauliTensor +} // namespace tket diff --git a/tket/test/src/test_Predicates.cpp b/tket/test/src/test_Predicates.cpp index b98756abae..6117591837 100644 --- a/tket/test/src/test_Predicates.cpp +++ b/tket/test/src/test_Predicates.cpp @@ -270,7 +270,7 @@ SCENARIO("Test CliffordCircuitPredicate") { CircBox cbox(circ); Circuit circ1(8); circ1.add_box(cbox, {0, 1, 2, 3, 4, 5, 6, 7}); - PauliExpBox pebox({Pauli::Y, Pauli::Z}, 0.5); + PauliExpBox pebox(SymPauliTensor({Pauli::Y, Pauli::Z}, 0.5)); circ1.add_box(pebox, {0, 1}); Circuit setup(2); Sym a = SymTable::fresh_symbol("a"); diff --git a/tket/test/src/test_UnitaryTableau.cpp b/tket/test/src/test_UnitaryTableau.cpp index 1279980d60..68cd333c23 100644 --- a/tket/test/src/test_UnitaryTableau.cpp +++ b/tket/test/src/test_UnitaryTableau.cpp @@ -115,7 +115,7 @@ SCENARIO("Correct updates of SymplecticTableau") { SymplecticTableau tab2 = get_initial_stab_destab_tab(); tab0.apply_S(0); tab1.apply_pauli_gadget( - PauliStabiliser({Pauli::Z, Pauli::I, Pauli::I}, true), 1); + PauliStabiliser({Pauli::Z, Pauli::I, Pauli::I}, 0), 1); tab2.apply_gate(OpType::S, {0}); std::stringstream tabstr; tabstr << tab0; @@ -140,7 +140,7 @@ SCENARIO("Correct updates of SymplecticTableau") { SymplecticTableau tab2 = get_initial_stab_destab_tab(); tab0.apply_V(0); tab1.apply_pauli_gadget( - PauliStabiliser({Pauli::X, Pauli::I, Pauli::I}, true), 1); + PauliStabiliser({Pauli::X, Pauli::I, Pauli::I}, 0), 1); tab2.apply_gate(OpType::V, {0}); std::stringstream tabstr; tabstr << tab0; @@ -165,17 +165,17 @@ SCENARIO("Correct updates of SymplecticTableau") { SymplecticTableau tab3 = get_initial_stab_destab_tab(); tab0.apply_CX(0, 1); tab1.apply_pauli_gadget( - PauliStabiliser({Pauli::Z, Pauli::I, Pauli::I}, true), 1); + PauliStabiliser({Pauli::Z, Pauli::I, Pauli::I}, 0), 1); tab1.apply_pauli_gadget( - PauliStabiliser({Pauli::I, Pauli::X, Pauli::I}, true), 1); + PauliStabiliser({Pauli::I, Pauli::X, Pauli::I}, 0), 1); tab1.apply_pauli_gadget( - PauliStabiliser({Pauli::Z, Pauli::X, Pauli::I}, false), 1); + PauliStabiliser({Pauli::Z, Pauli::X, Pauli::I}, 2), 1); tab2.apply_pauli_gadget( - PauliStabiliser({Pauli::Z, Pauli::I, Pauli::I}, true), 3); + PauliStabiliser({Pauli::Z, Pauli::I, Pauli::I}, 0), 3); tab2.apply_pauli_gadget( - PauliStabiliser({Pauli::I, Pauli::X, Pauli::I}, true), 3); + PauliStabiliser({Pauli::I, Pauli::X, Pauli::I}, 0), 3); tab2.apply_pauli_gadget( - PauliStabiliser({Pauli::Z, Pauli::X, Pauli::I}, false), 3); + PauliStabiliser({Pauli::Z, Pauli::X, Pauli::I}, 2), 3); tab3.apply_gate(OpType::CX, {0, 1}); std::stringstream tabstr; tabstr << tab0; @@ -196,12 +196,12 @@ SCENARIO("Correct updates of SymplecticTableau") { SCENARIO("Correct creation of UnitaryTableau") { GIVEN("An identity circuit") { UnitaryTableau tab(3); - REQUIRE(tab.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Z, 1.)); - REQUIRE(tab.get_zrow(Qubit(1)) == QubitPauliTensor(Qubit(1), Pauli::Z, 1.)); - REQUIRE(tab.get_zrow(Qubit(2)) == QubitPauliTensor(Qubit(2), Pauli::Z, 1.)); - REQUIRE(tab.get_xrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::X, 1.)); - REQUIRE(tab.get_xrow(Qubit(1)) == QubitPauliTensor(Qubit(1), Pauli::X, 1.)); - REQUIRE(tab.get_xrow(Qubit(2)) == QubitPauliTensor(Qubit(2), Pauli::X, 1.)); + REQUIRE(tab.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); + REQUIRE(tab.get_zrow(Qubit(1)) == SpPauliStabiliser(Qubit(1), Pauli::Z)); + REQUIRE(tab.get_zrow(Qubit(2)) == SpPauliStabiliser(Qubit(2), Pauli::Z)); + REQUIRE(tab.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); + REQUIRE(tab.get_xrow(Qubit(1)) == SpPauliStabiliser(Qubit(1), Pauli::X)); + REQUIRE(tab.get_xrow(Qubit(2)) == SpPauliStabiliser(Qubit(2), Pauli::X)); } GIVEN("A single S gate") { UnitaryTableau tab0(3); @@ -214,11 +214,11 @@ SCENARIO("Correct creation of UnitaryTableau") { tab1.apply_S_at_end(Qubit(0)); tab2.apply_gate_at_front(OpType::S, {Qubit(0)}); tab3.apply_gate_at_end(OpType::S, {Qubit(0)}); - tab4.apply_pauli_at_front(QubitPauliTensor(Qubit(0), Pauli::Z), 1); - tab5.apply_pauli_at_end(QubitPauliTensor(Qubit(0), Pauli::Z), 1); + tab4.apply_pauli_at_front(SpPauliStabiliser(Qubit(0), Pauli::Z), 1); + tab5.apply_pauli_at_end(SpPauliStabiliser(Qubit(0), Pauli::Z), 1); // Phases should match those in the tests for SymplecticTableau - CHECK(tab0.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Z, 1.)); - CHECK(tab0.get_xrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Y, 1.)); + CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); + CHECK(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Y)); CHECK(tab0 == tab1); CHECK(tab0 == tab2); CHECK(tab0 == tab3); @@ -236,10 +236,10 @@ SCENARIO("Correct creation of UnitaryTableau") { tab1.apply_V_at_end(Qubit(0)); tab2.apply_gate_at_front(OpType::V, {Qubit(0)}); tab3.apply_gate_at_end(OpType::V, {Qubit(0)}); - tab4.apply_pauli_at_front(QubitPauliTensor(Qubit(0), Pauli::X), 1); - tab5.apply_pauli_at_end(QubitPauliTensor(Qubit(0), Pauli::X), 1); - CHECK(tab0.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Y, -1.)); - CHECK(tab0.get_xrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::X, 1.)); + tab4.apply_pauli_at_front(SpPauliStabiliser(Qubit(0), Pauli::X), 1); + tab5.apply_pauli_at_end(SpPauliStabiliser(Qubit(0), Pauli::X), 1); + CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Y, 2)); + CHECK(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X, 0)); CHECK(tab0 == tab1); CHECK(tab0 == tab2); CHECK(tab0 == tab3); @@ -259,8 +259,8 @@ SCENARIO("Correct creation of UnitaryTableau") { tab3.apply_gate_at_end(OpType::Vdg, {Qubit(0)}); tab3.apply_gate_at_end(OpType::Sdg, {Qubit(0)}); tab3.apply_gate_at_end(OpType::Vdg, {Qubit(0)}); - CHECK(tab0.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::X, 1.)); - CHECK(tab0.get_xrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Z, 1.)); + CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); + CHECK(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); CHECK(tab0 == tab1); CHECK(tab0 == tab2); CHECK(tab0 == tab3); @@ -272,22 +272,22 @@ SCENARIO("Correct creation of UnitaryTableau") { UnitaryTableau tab3(3); tab0.apply_CX_at_front(Qubit(0), Qubit(1)); tab1.apply_CX_at_end(Qubit(0), Qubit(1)); - tab2.apply_pauli_at_front(QubitPauliTensor(Qubit(0), Pauli::Z), 1); - tab2.apply_pauli_at_front(QubitPauliTensor(Qubit(1), Pauli::X), 1); + tab2.apply_pauli_at_front(SpPauliStabiliser(Qubit(0), Pauli::Z), 1); + tab2.apply_pauli_at_front(SpPauliStabiliser(Qubit(1), Pauli::X), 1); tab2.apply_pauli_at_front( - QubitPauliTensor(std::list{Pauli::Z, Pauli::X}), 3); - tab3.apply_pauli_at_end(QubitPauliTensor(Qubit(0), Pauli::Z), 3); - tab3.apply_pauli_at_end(QubitPauliTensor(Qubit(1), Pauli::X), 3); + SpPauliStabiliser(DensePauliMap{Pauli::Z, Pauli::X}), 3); + tab3.apply_pauli_at_end(SpPauliStabiliser(Qubit(0), Pauli::Z), 3); + tab3.apply_pauli_at_end(SpPauliStabiliser(Qubit(1), Pauli::X), 3); tab3.apply_pauli_at_end( - QubitPauliTensor(std::list{Pauli::Z, Pauli::X}), 1); - CHECK(tab0.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Z, 1.)); - CHECK(tab0.get_xrow(Qubit(1)) == QubitPauliTensor(Qubit(1), Pauli::X, 1.)); + SpPauliStabiliser(DensePauliMap{Pauli::Z, Pauli::X}), 1); + CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); + CHECK(tab0.get_xrow(Qubit(1)) == SpPauliStabiliser(Qubit(1), Pauli::X)); CHECK( tab0.get_zrow(Qubit(1)) == - QubitPauliTensor(std::list({Pauli::Z, Pauli::Z}))); + SpPauliStabiliser(DensePauliMap{Pauli::Z, Pauli::Z})); CHECK( tab0.get_xrow(Qubit(0)) == - QubitPauliTensor(std::list({Pauli::X, Pauli::X}))); + SpPauliStabiliser(DensePauliMap{Pauli::X, Pauli::X})); CHECK(tab0 == tab1); CHECK(tab0 == tab2); CHECK(tab0 == tab3); @@ -301,8 +301,7 @@ SCENARIO("Correct creation of UnitaryTableau") { GIVEN("A PI/2 rotation") { Circuit circ = get_test_circ(); UnitaryTableau tab = circuit_to_unitary_tableau(circ); - QubitPauliTensor pauli = - QubitPauliTensor(std::list{Pauli::X, Pauli::Y, Pauli::Z}); + SpPauliStabiliser pauli(DensePauliMap{Pauli::X, Pauli::Y, Pauli::Z}); tab.apply_pauli_at_end(pauli, 3); add_ops_list_two_to_circuit(circ, OpType::Sdg); @@ -311,8 +310,7 @@ SCENARIO("Correct creation of UnitaryTableau") { } GIVEN("A PI/2 rotation at front") { UnitaryTableau tab = get_tableau_with_gates_applied_at_front(); - QubitPauliTensor pauli = - QubitPauliTensor(std::list({Pauli::X, Pauli::Y, Pauli::Z})); + SpPauliStabiliser pauli(DensePauliMap{Pauli::X, Pauli::Y, Pauli::Z}); tab.apply_pauli_at_front(pauli, 1); Circuit circ(3); @@ -366,12 +364,12 @@ SCENARIO("Synthesis of circuits from UnitaryTableau") { SCENARIO("Correct creation of UnitaryRevTableau") { GIVEN("An identity circuit") { UnitaryRevTableau tab(3); - REQUIRE(tab.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Z, 1.)); - REQUIRE(tab.get_zrow(Qubit(1)) == QubitPauliTensor(Qubit(1), Pauli::Z, 1.)); - REQUIRE(tab.get_zrow(Qubit(2)) == QubitPauliTensor(Qubit(2), Pauli::Z, 1.)); - REQUIRE(tab.get_xrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::X, 1.)); - REQUIRE(tab.get_xrow(Qubit(1)) == QubitPauliTensor(Qubit(1), Pauli::X, 1.)); - REQUIRE(tab.get_xrow(Qubit(2)) == QubitPauliTensor(Qubit(2), Pauli::X, 1.)); + REQUIRE(tab.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); + REQUIRE(tab.get_zrow(Qubit(1)) == SpPauliStabiliser(Qubit(1), Pauli::Z)); + REQUIRE(tab.get_zrow(Qubit(2)) == SpPauliStabiliser(Qubit(2), Pauli::Z)); + REQUIRE(tab.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); + REQUIRE(tab.get_xrow(Qubit(1)) == SpPauliStabiliser(Qubit(1), Pauli::X)); + REQUIRE(tab.get_xrow(Qubit(2)) == SpPauliStabiliser(Qubit(2), Pauli::X)); } GIVEN("A single S gate") { UnitaryRevTableau tab0(3); @@ -384,14 +382,14 @@ SCENARIO("Correct creation of UnitaryRevTableau") { tab1.apply_S_at_front(Qubit(0)); tab2.apply_gate_at_end(OpType::S, {Qubit(0)}); tab3.apply_gate_at_front(OpType::S, {Qubit(0)}); - tab4.apply_pauli_at_end(QubitPauliTensor(Qubit(0), Pauli::Z), 1); - tab5.apply_pauli_at_front(QubitPauliTensor(Qubit(0), Pauli::Z), 1); + tab4.apply_pauli_at_end(SpPauliStabiliser(Qubit(0), Pauli::Z), 1); + tab5.apply_pauli_at_front(SpPauliStabiliser(Qubit(0), Pauli::Z), 1); // Reading the stabilizers in the reverse direction changes how we apply the // Pauli reorder rules to determine the correct phase: // U Q e^{-i P pi/4} = U e^{-i P pi/4}. // (iPQ) iZX = -Y - CHECK(tab0.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Z, 1.)); - CHECK(tab0.get_xrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Y, -1.)); + CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z, 0)); + CHECK(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Y, 2)); CHECK(tab0 == tab1); CHECK(tab0 == tab2); CHECK(tab0 == tab3); @@ -409,11 +407,11 @@ SCENARIO("Correct creation of UnitaryRevTableau") { tab1.apply_V_at_front(Qubit(0)); tab2.apply_gate_at_end(OpType::V, {Qubit(0)}); tab3.apply_gate_at_front(OpType::V, {Qubit(0)}); - tab4.apply_pauli_at_end(QubitPauliTensor(Qubit(0), Pauli::X), 1); - tab5.apply_pauli_at_front(QubitPauliTensor(Qubit(0), Pauli::X), 1); + tab4.apply_pauli_at_end(SpPauliStabiliser(Qubit(0), Pauli::X), 1); + tab5.apply_pauli_at_front(SpPauliStabiliser(Qubit(0), Pauli::X), 1); // iXZ = +Y - CHECK(tab0.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Y, 1.)); - CHECK(tab0.get_xrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::X, 1.)); + CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Y)); + CHECK(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); CHECK(tab0 == tab1); CHECK(tab0 == tab2); CHECK(tab0 == tab3); @@ -425,10 +423,8 @@ SCENARIO("Correct creation of UnitaryRevTableau") { UnitaryRevTableau tab1(3); tab0.apply_gate_at_end(OpType::H, {Qubit(0)}); tab1.apply_gate_at_front(OpType::H, {Qubit(0)}); - REQUIRE( - tab0.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::X, 1.)); - REQUIRE( - tab0.get_xrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Z, 1.)); + REQUIRE(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); + REQUIRE(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); REQUIRE(tab0 == tab1); } GIVEN("A single CX gate") { @@ -436,16 +432,14 @@ SCENARIO("Correct creation of UnitaryRevTableau") { UnitaryRevTableau tab1(3); tab0.apply_CX_at_end(Qubit(0), Qubit(1)); tab1.apply_CX_at_front(Qubit(0), Qubit(1)); - REQUIRE( - tab0.get_zrow(Qubit(0)) == QubitPauliTensor(Qubit(0), Pauli::Z, 1.)); - REQUIRE( - tab0.get_xrow(Qubit(1)) == QubitPauliTensor(Qubit(1), Pauli::X, 1.)); + REQUIRE(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); + REQUIRE(tab0.get_xrow(Qubit(1)) == SpPauliStabiliser(Qubit(1), Pauli::X)); REQUIRE( tab0.get_zrow(Qubit(1)) == - QubitPauliTensor(std::list({Pauli::Z, Pauli::Z}))); + SpPauliStabiliser(DensePauliMap{Pauli::Z, Pauli::Z})); REQUIRE( tab0.get_xrow(Qubit(0)) == - QubitPauliTensor(std::list({Pauli::X, Pauli::X}))); + SpPauliStabiliser(DensePauliMap{Pauli::X, Pauli::X})); REQUIRE(tab0 == tab1); std::stringstream tabstr; tabstr << tab0; @@ -468,8 +462,7 @@ SCENARIO("Correct creation of UnitaryRevTableau") { GIVEN("A PI/2 rotation") { Circuit circ = get_test_circ(); UnitaryRevTableau tab = circuit_to_unitary_rev_tableau(circ); - QubitPauliTensor pauli = - QubitPauliTensor(std::list{Pauli::X, Pauli::Y, Pauli::Z}); + SpPauliStabiliser pauli(DensePauliMap{Pauli::X, Pauli::Y, Pauli::Z}); tab.apply_pauli_at_end(pauli, 3); add_ops_list_two_to_circuit(circ, OpType::Sdg); @@ -478,8 +471,7 @@ SCENARIO("Correct creation of UnitaryRevTableau") { } GIVEN("A PI/2 rotation at front") { UnitaryRevTableau tab = get_rev_tableau_with_gates_applied_at_front(); - QubitPauliTensor pauli = - QubitPauliTensor(std::list({Pauli::X, Pauli::Y, Pauli::Z})); + SpPauliStabiliser pauli(DensePauliMap{Pauli::X, Pauli::Y, Pauli::Z}); tab.apply_pauli_at_front(pauli, 1); Circuit circ(3); @@ -595,19 +587,19 @@ SCENARIO("Unitary inversions") { SCENARIO("Compare SymplecticTableau and UnitaryTableau") { GIVEN("The same sequence of gates, compare string representations") { - SymplecticTableau stab(PauliStabiliserList{ - {{Pauli::X, Pauli::I, Pauli::I}, true}, - {{Pauli::I, Pauli::X, Pauli::I}, true}, - {{Pauli::I, Pauli::I, Pauli::X}, true}, - {{Pauli::Z, Pauli::I, Pauli::I}, true}, - {{Pauli::I, Pauli::Z, Pauli::I}, true}, - {{Pauli::I, Pauli::I, Pauli::Z}, true}, + SymplecticTableau stab(PauliStabiliserVec{ + {DensePauliMap{Pauli::X, Pauli::I, Pauli::I}}, + {DensePauliMap{Pauli::I, Pauli::X, Pauli::I}}, + {DensePauliMap{Pauli::I, Pauli::I, Pauli::X}}, + {DensePauliMap{Pauli::Z, Pauli::I, Pauli::I}}, + {DensePauliMap{Pauli::I, Pauli::Z, Pauli::I}}, + {DensePauliMap{Pauli::I, Pauli::I, Pauli::Z}}, }); // Paulis cancel with subsequent gadget stab.apply_gate(OpType::X, uvec{0}); stab.apply_gate(OpType::Y, uvec{1}); stab.apply_gate(OpType::Z, uvec{2}); - stab.apply_pauli_gadget({{Pauli::X, Pauli::Y, Pauli::Z}, true}, 2); + stab.apply_pauli_gadget({DensePauliMap{Pauli::X, Pauli::Y, Pauli::Z}}, 2); // CY and CZ combine to Sdg(0), CX(0, 1) stab.apply_gate(OpType::CY, uvec{0, 1}); stab.apply_gate(OpType::CZ, uvec{0, 1}); @@ -631,8 +623,7 @@ SCENARIO("Compare SymplecticTableau and UnitaryTableau") { utab.apply_gate_at_front(OpType::SWAP, {Qubit(1), Qubit(2)}); utab.apply_gate_at_front(OpType::CZ, {Qubit(0), Qubit(1)}); utab.apply_gate_at_front(OpType::CY, {Qubit(0), Qubit(1)}); - utab.apply_pauli_at_front( - QubitPauliTensor{{Pauli::X, Pauli::Y, Pauli::Z}}, 2); + utab.apply_pauli_at_front({DensePauliMap{Pauli::X, Pauli::Y, Pauli::Z}}, 2); utab.apply_gate_at_front(OpType::X, {Qubit(0)}); utab.apply_gate_at_front(OpType::Y, {Qubit(1)}); utab.apply_gate_at_front(OpType::Z, {Qubit(2)}); diff --git a/tket/test/src/test_json.cpp b/tket/test/src/test_json.cpp index 0345e83ad1..13849fcca9 100644 --- a/tket/test/src/test_json.cpp +++ b/tket/test/src/test_json.cpp @@ -322,7 +322,7 @@ SCENARIO("Test Circuit serialization") { GIVEN("PauliExpBoxes") { Circuit c(4, 2, "paulibox"); PauliExpBox pbox( - {Pauli::X, Pauli::Y, Pauli::I, Pauli::Z}, -0.72521, + {{Pauli::X, Pauli::Y, Pauli::I, Pauli::Z}, -0.72521}, CXConfigType::MultiQGate); c.add_box(pbox, {0, 1, 2, 3}); nlohmann::json j_pbox = c; @@ -340,8 +340,8 @@ SCENARIO("Test Circuit serialization") { GIVEN("PauliExpPairBoxes") { Circuit c(4, 2, "paulipairbox"); PauliExpPairBox pbox( - {Pauli::X, Pauli::Y, Pauli::I, Pauli::Z}, -0.72521, - {Pauli::X, Pauli::I, Pauli::I, Pauli::X}, -0.32421, + {{Pauli::X, Pauli::Y, Pauli::I, Pauli::Z}, -0.72521}, + {{Pauli::X, Pauli::I, Pauli::I, Pauli::X}, -0.32421}, CXConfigType::MultiQGate); c.add_box(pbox, {0, 1, 2, 3}); nlohmann::json j_pbox = c; @@ -1147,12 +1147,12 @@ SCENARIO("Test compiler pass combinator serializations") { } } -SCENARIO("Test QubitPauliString serialization") { - QubitPauliString qps( +SCENARIO("Test PauliTensor serialization") { + SpPauliString qps( {{Qubit(2), Pauli::X}, {Qubit(7), Pauli::Y}, {Qubit(0), Pauli::I}}); nlohmann::json j_qps = qps; - QubitPauliString new_qps = j_qps.get(); + SpPauliString new_qps = j_qps.get(); REQUIRE(qps == new_qps); } @@ -1194,12 +1194,12 @@ SCENARIO("Test MeasurementSetup serializations") { ms.add_measurement_circuit(mc2); Qubit q0(q_default_reg(), 0); Qubit q1(q_default_reg(), 1); - QubitPauliString ii; - QubitPauliString zi({{q0, Pauli::Z}}); - QubitPauliString iz({{q1, Pauli::Z}}); - QubitPauliString zz({{q0, Pauli::Z}, {q1, Pauli::Z}}); - QubitPauliString xx({{q0, Pauli::X}, {q1, Pauli::X}}); - QubitPauliString yy({{q0, Pauli::Y}, {q1, Pauli::Y}}); + QubitPauliMap ii; + QubitPauliMap zi({{q0, Pauli::Z}}); + QubitPauliMap iz({{q1, Pauli::Z}}); + QubitPauliMap zz({{q0, Pauli::Z}, {q1, Pauli::Z}}); + QubitPauliMap xx({{q0, Pauli::X}, {q1, Pauli::X}}); + QubitPauliMap yy({{q0, Pauli::Y}, {q1, Pauli::Y}}); ms.add_result_for_term(ii, {0, {}, false}); ms.add_result_for_term(zi, {0, {0}, false}); ms.add_result_for_term(iz, {0, {1}, false}); From 931d0ff8c4d2d9cbd6d436e0250951f0513e3295 Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Thu, 2 Nov 2023 15:48:36 +0000 Subject: [PATCH 16/36] Remove unused files. (#1107) --- pytket/conanfile.py | 2 +- tket/benchmarks/CMakeLists.txt | 32 ------------ tket/benchmarks/circuit.cpp | 46 ----------------- tket/benchmarks/circuit_random.cpp | 50 ------------------- ...dom_nb_qubits=20_nb_layers=200_example.tkc | 27 ---------- tket/conanfile.py | 2 +- tket/src/Circuit/CMakeLists.txt | 0 7 files changed, 2 insertions(+), 157 deletions(-) delete mode 100644 tket/benchmarks/CMakeLists.txt delete mode 100644 tket/benchmarks/circuit.cpp delete mode 100644 tket/benchmarks/circuit_random.cpp delete mode 100644 tket/benchmarks/input_files/circuit_random_nb_qubits=20_nb_layers=200_example.tkc delete mode 100644 tket/src/Circuit/CMakeLists.txt diff --git a/pytket/conanfile.py b/pytket/conanfile.py index 3642b3862e..139dba5197 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,7 +32,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.63@tket/stable") + self.requires("tket/1.2.64@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("tkassert/0.3.3@tket/stable") diff --git a/tket/benchmarks/CMakeLists.txt b/tket/benchmarks/CMakeLists.txt deleted file mode 100644 index 019f695816..0000000000 --- a/tket/benchmarks/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 2019-2023 Cambridge Quantum Computing -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# INCLUDES are PRIVATE -add_benchmark(circuit - LIBRARIES - tket - BENCHMARK # Already adds benchmark specific includes - googlebenchmark - INCLUDES - ${TKET_SRC_DIR} ${TKET_INCLUDE_DIR}) -# INCLUDES are PRIVATE -add_benchmark(circuit_random - INPUT_FILES - circuit_random_nb_qubits=20_nb_layers=200_example.tkc - LIBRARIES - tket - BENCHMARK # Already adds benchmark specific includes - googlebenchmark - INCLUDES - ${TKET_SRC_DIR} ${TKET_INCLUDE_DIR}) diff --git a/tket/benchmarks/circuit.cpp b/tket/benchmarks/circuit.cpp deleted file mode 100644 index 136431ba55..0000000000 --- a/tket/benchmarks/circuit.cpp +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2019-2023 Cambridge Quantum Computing -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#include - -// tket includes -#include "Circuit/Circuit.hpp" - -class FX_Circuit : public ::benchmark::Fixture { - public: - FX_Circuit() {} - void SetUp(const ::benchmark::State& state) { - for (int nb_gates = 1; nb_gates < state.range(0); ++nb_gates) { - circuit.add_op(tket::OpType::X, {0}); - } - } - void TearDown(const ::benchmark::State&) {} - ~FX_Circuit() {} - tket::Circuit circuit = tket::Circuit(4); -}; - -BENCHMARK_DEFINE_F(FX_Circuit, BM_Circuit)(benchmark::State& state) { - // Benchmark timing the Circuit::get_OpType_slices method - for (auto _ : state) { - circuit.get_OpType_slices(tket::OpType::X); - } -} - -BENCHMARK_REGISTER_F(FX_Circuit, BM_Circuit) - ->DenseRange(0, 1000, 100) - ->Iterations(1000) - ->Repetitions(4) - ->Unit(benchmark::kMicrosecond); - -BENCHMARK_MAIN(); diff --git a/tket/benchmarks/circuit_random.cpp b/tket/benchmarks/circuit_random.cpp deleted file mode 100644 index dc95b396f3..0000000000 --- a/tket/benchmarks/circuit_random.cpp +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2019-2023 Cambridge Quantum Computing -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#include - -#include -#include -#include - -// tket includes -#include "Circuit/Circuit.hpp" - -class FX_Circuit_Random : public ::benchmark::Fixture { - public: - FX_Circuit_Random() {} - void SetUp(const ::benchmark::State&) {} - void TearDown(const ::benchmark::State&) {} - ~FX_Circuit_Random() {} - // TODO: Find a way to pass file path from benchmark arguments rather than - // hardcoded. - tket::Circuit circuit_random = tket::Circuit( - "./input_files/circuit_random_nb_qubits=20_nb_layers=200_example.tkc"); -}; - -BENCHMARK_DEFINE_F(FX_Circuit_Random, BM_Circuit_Random) -(benchmark::State& state) { - // Benchmark timing the Circuit::get_OpType_slices method - for (auto _ : state) { - circuit_random.get_OpType_slices(tket::OpType::CX); - } -} - -BENCHMARK_REGISTER_F(FX_Circuit_Random, BM_Circuit_Random) - // ->DenseRange(0, 100, 100) - ->Iterations(1000) - ->Repetitions(4) - ->Unit(benchmark::kMicrosecond); - -BENCHMARK_MAIN(); diff --git a/tket/benchmarks/input_files/circuit_random_nb_qubits=20_nb_layers=200_example.tkc b/tket/benchmarks/input_files/circuit_random_nb_qubits=20_nb_layers=200_example.tkc deleted file mode 100644 index 068989b470..0000000000 --- a/tket/benchmarks/input_files/circuit_random_nb_qubits=20_nb_layers=200_example.tkc +++ /dev/null @@ -1,27 +0,0 @@ -22 serialization::archive 17 1 0 -0 0 0 3040 4020 0 0 0 1 4 12 tket::MetaOp 1 0 -1 0 0 0 0 0 0 0 4 -2 1 0 0 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 4 1 4 2 7 10 tket::Gate 1 0 -3 12 0 0 0 0 1 7 -4 18 0 0 1 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 4 7 -5 26 0 0 2 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 4 7 4 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 4 7 3 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 4 7 4 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 3 7 4 7 4 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 4 7 4 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 4 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 4 7 4 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 4 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 3 7 3 7 4 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 3 7 3 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 3 7 4 7 4 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 4 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 4 7 4 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 3 7 3 7 3 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 3 7 3 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 4 7 4 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 4 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 4 7 4 7 4 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 4 7 4 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 4 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 3 7 3 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 3 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 4 7 4 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 3 7 4 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 3 7 3 7 4 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 3 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 4 7 4 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 4 7 3 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 4 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 4 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 3 7 4 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 3 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 4 7 4 7 4 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 4 7 3 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 4 7 4 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 4 7 3 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 3 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 4 7 4 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 4 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 4 7 4 7 4 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 3 7 4 7 3 7 4 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 4 7 4 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 4 7 3 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 4 7 4 7 3 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 4 7 4 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 3 7 4 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 3 7 4 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 4 7 4 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 4 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 3 7 3 7 3 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 3 7 3 7 4 7 4 7 3 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 3 7 4 7 3 7 3 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 4 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 3 7 4 7 4 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 3 7 4 7 4 7 3 7 4 7 4 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 4 7 4 7 4 7 3 7 3 7 3 7 4 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 3 7 3 7 3 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 4 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 3 7 3 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 3 7 4 7 4 7 3 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 4 7 4 7 3 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 3 7 3 7 4 7 3 7 3 7 3 7 4 7 3 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 3 7 4 7 3 7 4 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 4 7 4 7 3 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 4 7 4 7 3 7 3 7 4 7 3 7 3 7 5 7 5 7 5 7 5 7 5 7 4 7 4 7 4 7 3 7 4 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 7 4 7 3 7 4 7 3 7 3 7 4 7 4 7 4 7 3 7 4 7 5 7 5 7 5 7 5 7 5 26 40 0 0 0 0 0 0 0 28 41 0 0 0 14 42 0 0 0 18 43 0 0 0 2 44 0 0 0 16 45 0 0 0 32 46 0 0 0 6 47 0 0 0 0 48 0 0 0 12 49 0 0 0 36 50 0 0 0 10 50 0 0 1 8 51 0 0 0 30 51 0 0 1 34 52 0 0 0 20 52 0 0 1 38 53 0 0 0 4 53 0 0 1 22 54 0 0 0 24 54 0 0 1 42 55 0 0 0 49 56 0 0 0 47 57 0 0 0 53 58 0 0 0 52 59 0 0 0 46 60 0 0 0 54 61 0 1 0 53 62 0 1 0 50 63 0 1 0 40 64 0 0 0 41 65 0 0 0 50 65 0 0 1 51 66 0 0 0 48 66 0 0 1 45 67 0 0 0 52 67 0 1 1 44 68 0 0 0 43 68 0 0 1 54 69 0 0 0 51 69 0 1 1 58 70 0 0 0 57 71 0 0 0 69 72 0 0 0 62 73 0 0 0 60 74 0 0 0 69 75 0 1 0 65 76 0 0 0 67 77 0 1 0 55 78 0 0 0 63 79 0 0 0 68 80 0 0 0 61 80 0 0 1 67 81 0 0 0 64 81 0 0 1 59 82 0 0 0 68 82 0 1 1 66 83 0 0 0 56 83 0 0 1 65 84 0 1 0 66 84 0 1 1 79 85 0 0 0 75 86 0 0 0 78 87 0 0 0 81 88 0 0 0 71 89 0 0 0 80 90 0 1 0 82 91 0 1 0 81 92 0 1 0 82 93 0 0 0 83 94 0 0 0 84 95 0 1 0 73 95 0 0 1 74 96 0 0 0 72 96 0 0 1 83 97 0 1 0 80 97 0 0 1 77 98 0 0 0 84 98 0 0 1 70 99 0 0 0 76 99 0 0 1 98 100 0 1 0 97 101 0 1 0 96 102 0 0 0 98 103 0 0 0 89 104 0 0 0 85 105 0 0 0 95 106 0 0 0 87 107 0 0 0 96 108 0 1 0 93 109 0 0 0 86 110 0 0 0 90 110 0 0 1 91 111 0 0 0 97 111 0 0 1 99 112 0 1 0 94 112 0 0 1 95 113 0 1 0 92 113 0 0 1 99 114 0 0 0 88 114 0 0 1 105 115 0 0 0 110 116 0 1 0 112 117 0 0 0 111 118 0 1 0 104 119 0 0 0 103 120 0 0 0 109 121 0 0 0 112 122 0 1 0 100 123 0 0 0 114 124 0 1 0 114 125 0 0 0 110 125 0 0 1 107 126 0 0 0 108 126 0 0 1 111 127 0 0 0 102 127 0 0 1 101 128 0 0 0 113 128 0 1 1 106 129 0 0 0 113 129 0 0 1 119 130 0 0 0 126 131 0 1 0 126 132 0 0 0 116 133 0 0 0 115 134 0 0 0 125 135 0 1 0 127 136 0 0 0 118 137 0 0 0 128 138 0 1 0 125 139 0 0 0 124 140 0 0 0 127 140 0 1 1 120 141 0 0 0 123 141 0 0 1 128 142 0 0 0 122 142 0 0 1 121 143 0 0 0 129 143 0 1 1 117 144 0 0 0 129 144 0 0 1 136 145 0 0 0 137 146 0 0 0 144 147 0 0 0 143 148 0 1 0 142 149 0 1 0 142 150 0 0 0 141 151 0 0 0 134 152 0 0 0 143 153 0 0 0 130 154 0 0 0 139 155 0 0 0 132 155 0 0 1 131 156 0 0 0 133 156 0 0 1 138 157 0 0 0 144 157 0 1 1 140 158 0 1 0 140 158 0 0 1 135 159 0 0 0 141 159 0 1 1 150 160 0 0 0 151 161 0 0 0 155 162 0 1 0 156 163 0 1 0 148 164 0 0 0 158 165 0 1 0 145 166 0 0 0 158 167 0 0 0 152 168 0 0 0 149 169 0 0 0 155 170 0 0 0 147 170 0 0 1 156 171 0 0 0 153 171 0 0 1 159 172 0 1 0 157 172 0 1 1 159 173 0 0 0 157 173 0 0 1 154 174 0 0 0 146 174 0 0 1 165 175 0 0 0 164 176 0 0 0 162 177 0 0 0 174 178 0 0 0 173 179 0 1 0 174 180 0 1 0 170 181 0 0 0 172 182 0 1 0 169 183 0 0 0 161 184 0 0 0 163 185 0 0 0 167 185 0 0 1 170 186 0 1 0 166 186 0 0 1 171 187 0 0 0 173 187 0 0 1 160 188 0 0 0 172 188 0 0 1 171 189 0 1 0 168 189 0 0 1 181 190 0 0 0 183 191 0 0 0 186 192 0 0 0 189 193 0 1 0 179 194 0 0 0 176 195 0 0 0 178 196 0 0 0 182 197 0 0 0 188 198 0 0 0 180 199 0 0 0 186 200 0 1 0 184 200 0 0 1 187 201 0 0 0 189 201 0 0 1 185 202 0 1 0 185 202 0 0 1 177 203 0 0 0 188 203 0 1 1 187 204 0 1 0 175 204 0 0 1 202 205 0 1 0 200 206 0 1 0 191 207 0 0 0 196 208 0 0 0 192 209 0 0 0 201 210 0 1 0 195 211 0 0 0 197 212 0 0 0 193 213 0 0 0 203 214 0 1 0 204 215 0 0 0 198 215 0 0 1 190 216 0 0 0 204 216 0 1 1 199 217 0 0 0 201 217 0 0 1 203 218 0 0 0 194 218 0 0 1 200 219 0 0 0 202 219 0 0 1 219 220 0 1 0 218 221 0 1 0 210 222 0 0 0 218 223 0 0 0 211 224 0 0 0 217 225 0 1 0 209 226 0 0 0 216 227 0 0 0 212 228 0 0 0 215 229 0 0 0 215 230 0 1 0 206 230 0 0 1 216 231 0 1 0 208 231 0 0 1 217 232 0 0 0 207 232 0 0 1 219 233 0 0 0 205 233 0 0 1 213 234 0 0 0 214 234 0 0 1 232 235 0 0 0 234 236 0 0 0 230 237 0 1 0 231 238 0 0 0 230 239 0 0 0 233 240 0 0 0 233 241 0 1 0 224 242 0 0 0 231 243 0 1 0 229 244 0 0 0 226 245 0 0 0 225 245 0 0 1 221 246 0 0 0 234 246 0 1 1 227 247 0 0 0 220 247 0 0 1 222 248 0 0 0 223 248 0 0 1 228 249 0 0 0 232 249 0 1 1 247 250 0 1 0 235 251 0 0 0 237 252 0 0 0 249 253 0 0 0 247 254 0 0 0 244 255 0 0 0 238 256 0 0 0 248 257 0 1 0 245 258 0 0 0 243 259 0 0 0 248 260 0 0 0 245 260 0 1 1 246 261 0 0 0 249 261 0 1 1 246 262 0 1 0 242 262 0 0 1 240 263 0 0 0 236 263 0 0 1 241 264 0 0 0 239 264 0 0 1 258 265 0 0 0 250 266 0 0 0 261 267 0 0 0 257 268 0 0 0 264 269 0 1 0 261 270 0 1 0 252 271 0 0 0 253 272 0 0 0 255 273 0 0 0 262 274 0 0 0 256 275 0 0 0 251 275 0 0 1 260 276 0 1 0 262 276 0 1 1 264 277 0 0 0 260 277 0 0 1 259 278 0 0 0 263 278 0 1 1 263 279 0 0 0 254 279 0 0 1 275 280 0 0 0 271 281 0 0 0 265 282 0 0 0 278 283 0 0 0 276 284 0 1 0 267 285 0 0 0 275 286 0 1 0 278 287 0 1 0 279 288 0 0 0 273 289 0 0 0 270 290 0 0 0 276 290 0 0 1 266 291 0 0 0 269 291 0 0 1 274 292 0 0 0 272 292 0 0 1 268 293 0 0 0 277 293 0 1 1 279 294 0 1 0 277 294 0 0 1 290 295 0 1 0 289 296 0 0 0 292 297 0 0 0 292 298 0 1 0 282 299 0 0 0 280 300 0 0 0 294 301 0 1 0 286 302 0 0 0 290 303 0 0 0 283 304 0 0 0 293 305 0 0 0 288 305 0 0 1 285 306 0 0 0 294 306 0 0 1 287 307 0 0 0 284 307 0 0 1 291 308 0 1 0 291 308 0 0 1 281 309 0 0 0 293 309 0 1 1 295 310 0 0 0 299 311 0 0 0 303 312 0 0 0 301 313 0 0 0 306 314 0 1 0 309 315 0 1 0 307 316 0 0 0 300 317 0 0 0 306 318 0 0 0 304 319 0 0 0 297 320 0 0 0 307 320 0 1 1 305 321 0 0 0 302 321 0 0 1 308 322 0 0 0 309 322 0 0 1 308 323 0 1 0 305 323 0 1 1 296 324 0 0 0 298 324 0 0 1 313 325 0 0 0 319 326 0 0 0 324 327 0 1 0 324 328 0 0 0 321 329 0 0 0 316 330 0 0 0 317 331 0 0 0 320 332 0 1 0 310 333 0 0 0 311 334 0 0 0 321 335 0 1 0 323 335 0 1 1 318 336 0 0 0 320 336 0 0 1 323 337 0 0 0 315 337 0 0 1 312 338 0 0 0 322 338 0 0 1 314 339 0 0 0 322 339 0 1 1 326 340 0 0 0 337 341 0 1 0 332 342 0 0 0 329 343 0 0 0 328 344 0 0 0 339 345 0 1 0 331 346 0 0 0 335 347 0 0 0 335 348 0 1 0 333 349 0 0 0 338 350 0 1 0 336 350 0 1 1 338 351 0 0 0 330 351 0 0 1 336 352 0 0 0 327 352 0 0 1 334 353 0 0 0 337 353 0 0 1 339 354 0 0 0 325 354 0 0 1 342 355 0 0 0 348 356 0 0 0 345 357 0 0 0 354 358 0 1 0 350 359 0 1 0 352 360 0 1 0 353 361 0 0 0 340 362 0 0 0 353 363 0 1 0 344 364 0 0 0 350 365 0 0 0 346 365 0 0 1 354 366 0 0 0 351 366 0 1 1 343 367 0 0 0 341 367 0 0 1 352 368 0 0 0 347 368 0 0 1 351 369 0 0 0 349 369 0 0 1 364 370 0 0 0 361 371 0 0 0 360 372 0 0 0 363 373 0 0 0 365 374 0 1 0 359 375 0 0 0 355 376 0 0 0 366 377 0 1 0 358 378 0 0 0 357 379 0 0 0 356 380 0 0 0 368 380 0 0 1 367 381 0 0 0 365 381 0 0 1 369 382 0 0 0 367 382 0 1 1 362 383 0 0 0 369 383 0 1 1 366 384 0 0 0 368 384 0 1 1 382 385 0 0 0 383 386 0 0 0 378 387 0 0 0 377 388 0 0 0 383 389 0 1 0 384 390 0 1 0 384 391 0 0 0 376 392 0 0 0 382 393 0 1 0 381 394 0 0 0 370 395 0 0 0 373 395 0 0 1 372 396 0 0 0 375 396 0 0 1 380 397 0 0 0 374 397 0 0 1 380 398 0 1 0 371 398 0 0 1 381 399 0 1 0 379 399 0 0 1 397 400 0 0 0 398 401 0 0 0 395 402 0 0 0 388 403 0 0 0 390 404 0 0 0 396 405 0 1 0 386 406 0 0 0 394 407 0 0 0 385 408 0 0 0 395 409 0 1 0 398 410 0 1 0 396 410 0 0 1 393 411 0 0 0 392 411 0 0 1 387 412 0 0 0 389 412 0 0 1 397 413 0 1 0 399 413 0 0 1 391 414 0 0 0 399 414 0 1 1 411 415 0 1 0 414 416 0 1 0 405 417 0 0 0 410 418 0 0 0 401 419 0 0 0 407 420 0 0 0 406 421 0 0 0 413 422 0 1 0 411 423 0 0 0 412 424 0 1 0 408 425 0 0 0 402 425 0 0 1 410 426 0 1 0 404 426 0 0 1 413 427 0 0 0 400 427 0 0 1 412 428 0 0 0 403 428 0 0 1 414 429 0 0 0 409 429 0 0 1 426 430 0 1 0 427 431 0 1 0 427 432 0 0 0 422 433 0 0 0 424 434 0 0 0 425 435 0 1 0 418 436 0 0 0 416 437 0 0 0 415 438 0 0 0 429 439 0 0 0 419 440 0 0 0 428 440 0 1 1 425 441 0 0 0 423 441 0 0 1 428 442 0 0 0 417 442 0 0 1 426 443 0 0 0 420 443 0 0 1 421 444 0 0 0 429 444 0 1 1 435 445 0 0 0 432 446 0 0 0 444 447 0 1 0 431 448 0 0 0 438 449 0 0 0 440 450 0 1 0 437 451 0 0 0 441 452 0 0 0 444 453 0 0 0 430 454 0 0 0 433 455 0 0 0 442 455 0 0 1 442 456 0 1 0 443 456 0 1 1 436 457 0 0 0 439 457 0 0 1 441 458 0 1 0 440 458 0 0 1 443 459 0 0 0 434 459 0 0 1 456 460 0 0 0 456 461 0 1 0 452 462 0 0 0 453 463 0 0 0 445 464 0 0 0 446 465 0 0 0 457 466 0 0 0 458 467 0 1 0 458 468 0 0 0 450 469 0 0 0 459 470 0 1 0 454 470 0 0 1 451 471 0 0 0 455 471 0 1 1 455 472 0 0 0 448 472 0 0 1 457 473 0 1 0 449 473 0 0 1 447 474 0 0 0 459 474 0 0 1 465 475 0 0 0 467 476 0 0 0 471 477 0 1 0 464 478 0 0 0 461 479 0 0 0 466 480 0 0 0 472 481 0 0 0 470 482 0 0 0 470 483 0 1 0 473 484 0 1 0 469 485 0 0 0 473 485 0 0 1 463 486 0 0 0 462 486 0 0 1 471 487 0 0 0 474 487 0 1 1 468 488 0 0 0 474 488 0 0 1 460 489 0 0 0 472 489 0 1 1 485 490 0 0 0 480 491 0 0 0 476 492 0 0 0 488 493 0 1 0 486 494 0 1 0 488 495 0 0 0 487 496 0 1 0 481 497 0 0 0 478 498 0 0 0 487 499 0 0 0 489 500 0 1 0 484 500 0 0 1 486 501 0 0 0 475 501 0 0 1 489 502 0 0 0 477 502 0 0 1 485 503 0 1 0 483 503 0 0 1 479 504 0 0 0 482 504 0 0 1 491 505 0 0 0 496 506 0 0 0 500 507 0 1 0 503 508 0 0 0 495 509 0 0 0 501 510 0 1 0 501 511 0 0 0 500 512 0 0 0 493 513 0 0 0 503 514 0 1 0 504 515 0 0 0 502 515 0 1 1 504 516 0 1 0 499 516 0 0 1 492 517 0 0 0 502 517 0 0 1 494 518 0 0 0 490 518 0 0 1 498 519 0 0 0 497 519 0 0 1 510 520 0 0 0 516 521 0 0 0 505 522 0 0 0 519 523 0 0 0 508 524 0 0 0 511 525 0 0 0 518 526 0 1 0 515 527 0 0 0 517 528 0 1 0 517 529 0 0 0 513 530 0 0 0 518 530 0 0 1 516 531 0 1 0 512 531 0 0 1 506 532 0 0 0 519 532 0 1 1 515 533 0 1 0 509 533 0 0 1 507 534 0 0 0 514 534 0 0 1 527 535 0 0 0 534 536 0 0 0 531 537 0 1 0 521 538 0 0 0 534 539 0 1 0 529 540 0 0 0 528 541 0 0 0 524 542 0 0 0 532 543 0 1 0 526 544 0 0 0 523 545 0 0 0 525 545 0 0 1 532 546 0 0 0 522 546 0 0 1 533 547 0 1 0 533 547 0 0 1 530 548 0 0 0 530 548 0 1 1 531 549 0 0 0 520 549 0 0 1 545 550 0 1 0 546 551 0 0 0 537 552 0 0 0 548 553 0 0 0 539 554 0 0 0 547 555 0 1 0 549 556 0 1 0 547 557 0 0 0 541 558 0 0 0 545 559 0 0 0 542 560 0 0 0 538 560 0 0 1 535 561 0 0 0 549 561 0 0 1 536 562 0 0 0 546 562 0 1 1 543 563 0 0 0 544 563 0 0 1 548 564 0 1 0 540 564 0 0 1 558 565 0 0 0 551 566 0 0 0 563 567 0 1 0 563 568 0 0 0 554 569 0 0 0 564 570 0 1 0 553 571 0 0 0 559 572 0 0 0 561 573 0 1 0 550 574 0 0 0 561 575 0 0 0 560 575 0 0 1 556 576 0 0 0 560 576 0 1 1 564 577 0 0 0 555 577 0 0 1 562 578 0 0 0 557 578 0 0 1 552 579 0 0 0 562 579 0 1 1 567 580 0 0 0 573 581 0 0 0 576 582 0 1 0 566 583 0 0 0 570 584 0 0 0 565 585 0 0 0 577 586 0 1 0 569 587 0 0 0 568 588 0 0 0 578 589 0 0 0 575 590 0 0 0 575 590 0 1 1 572 591 0 0 0 574 591 0 0 1 578 592 0 1 0 576 592 0 0 1 579 593 0 1 0 577 593 0 0 1 579 594 0 0 0 571 594 0 0 1 592 595 0 1 0 588 596 0 0 0 589 597 0 0 0 581 598 0 0 0 585 599 0 0 0 593 600 0 1 0 591 601 0 0 0 583 602 0 0 0 591 603 0 1 0 586 604 0 0 0 590 605 0 1 0 582 605 0 0 1 593 606 0 0 0 580 606 0 0 1 590 607 0 0 0 592 607 0 0 1 594 608 0 1 0 594 608 0 0 1 584 609 0 0 0 587 609 0 0 1 597 610 0 0 0 603 611 0 0 0 609 612 0 0 0 608 613 0 1 0 598 614 0 0 0 608 615 0 0 0 605 616 0 1 0 600 617 0 0 0 607 618 0 1 0 606 619 0 1 0 602 620 0 0 0 596 620 0 0 1 599 621 0 0 0 606 621 0 0 1 604 622 0 0 0 595 622 0 0 1 605 623 0 0 0 601 623 0 0 1 609 624 0 1 0 607 624 0 0 1 611 625 0 0 0 610 626 0 0 0 613 627 0 0 0 624 628 0 1 0 615 629 0 0 0 623 630 0 1 0 624 631 0 0 0 620 632 0 1 0 616 633 0 0 0 620 634 0 0 0 612 635 0 0 0 621 635 0 1 1 618 636 0 0 0 622 636 0 1 1 617 637 0 0 0 623 637 0 0 1 614 638 0 0 0 622 638 0 0 1 619 639 0 0 0 621 639 0 0 1 633 640 0 0 0 629 641 0 0 0 631 642 0 0 0 638 643 0 0 0 635 644 0 0 0 626 645 0 0 0 635 646 0 1 0 630 647 0 0 0 634 648 0 0 0 637 649 0 0 0 636 650 0 1 0 627 650 0 0 1 636 651 0 0 0 638 651 0 1 1 639 652 0 1 0 632 652 0 0 1 639 653 0 0 0 637 653 0 1 1 628 654 0 0 0 625 654 0 0 1 643 655 0 0 0 641 656 0 0 0 652 657 0 1 0 645 658 0 0 0 653 659 0 1 0 651 660 0 1 0 646 661 0 0 0 651 662 0 0 0 647 663 0 0 0 649 664 0 0 0 650 665 0 1 0 654 665 0 1 1 652 666 0 0 0 642 666 0 0 1 650 667 0 0 0 654 667 0 0 1 653 668 0 0 0 644 668 0 0 1 640 669 0 0 0 648 669 0 0 1 667 670 0 1 0 660 671 0 0 0 661 672 0 0 0 665 673 0 1 0 669 674 0 0 0 662 675 0 0 0 665 676 0 0 0 668 677 0 0 0 666 678 0 1 0 659 679 0 0 0 655 680 0 0 0 667 680 0 0 1 664 681 0 0 0 666 681 0 0 1 669 682 0 1 0 656 682 0 0 1 658 683 0 0 0 657 683 0 0 1 668 684 0 1 0 663 684 0 0 1 678 685 0 0 0 681 686 0 0 0 670 687 0 0 0 680 688 0 1 0 671 689 0 0 0 675 690 0 0 0 677 691 0 0 0 681 692 0 1 0 683 693 0 1 0 684 694 0 0 0 676 695 0 0 0 682 695 0 0 1 680 696 0 0 0 683 696 0 0 1 673 697 0 0 0 679 697 0 0 1 674 698 0 0 0 672 698 0 0 1 682 699 0 1 0 684 699 0 1 1 699 700 0 1 0 699 701 0 0 0 694 702 0 0 0 691 703 0 0 0 698 704 0 0 0 688 705 0 0 0 695 706 0 1 0 696 707 0 0 0 695 708 0 0 0 690 709 0 0 0 689 710 0 0 0 687 710 0 0 1 696 711 0 1 0 686 711 0 0 1 697 712 0 0 0 697 712 0 1 1 692 713 0 0 0 698 713 0 1 1 685 714 0 0 0 693 714 0 0 1 700 715 0 0 0 711 716 0 0 0 707 717 0 0 0 703 718 0 0 0 714 719 0 0 0 708 720 0 0 0 713 721 0 0 0 701 722 0 0 0 712 723 0 1 0 702 724 0 0 0 713 725 0 1 0 710 725 0 1 1 714 726 0 1 0 712 726 0 0 1 704 727 0 0 0 705 727 0 0 1 706 728 0 0 0 711 728 0 1 1 709 729 0 0 0 710 729 0 0 1 728 730 0 0 0 726 731 0 0 0 723 732 0 0 0 716 733 0 0 0 728 734 0 1 0 718 735 0 0 0 724 736 0 0 0 725 737 0 1 0 720 738 0 0 0 715 739 0 0 0 727 740 0 1 0 719 740 0 0 1 722 741 0 0 0 717 741 0 0 1 726 742 0 1 0 725 742 0 0 1 729 743 0 0 0 721 743 0 0 1 729 744 0 1 0 727 744 0 0 1 739 745 0 0 0 735 746 0 0 0 742 747 0 0 0 734 748 0 0 0 738 749 0 0 0 737 750 0 0 0 742 751 0 1 0 740 752 0 1 0 732 753 0 0 0 743 754 0 0 0 743 755 0 1 0 741 755 0 1 1 733 756 0 0 0 736 756 0 0 1 730 757 0 0 0 731 757 0 0 1 744 758 0 0 0 741 758 0 0 1 740 759 0 0 0 744 759 0 1 1 752 760 0 0 0 753 761 0 0 0 759 762 0 1 0 749 763 0 0 0 745 764 0 0 0 756 765 0 0 0 757 766 0 0 0 750 767 0 0 0 746 768 0 0 0 759 769 0 0 0 754 770 0 0 0 756 770 0 1 1 757 771 0 1 0 755 771 0 0 1 755 772 0 1 0 748 772 0 0 1 751 773 0 0 0 747 773 0 0 1 758 774 0 0 0 758 774 0 1 1 764 775 0 0 0 770 776 0 0 0 772 777 0 0 0 774 778 0 1 0 771 779 0 1 0 767 780 0 0 0 763 781 0 0 0 768 782 0 0 0 760 783 0 0 0 771 784 0 0 0 762 785 0 0 0 774 785 0 0 1 765 786 0 0 0 773 786 0 1 1 761 787 0 0 0 769 787 0 0 1 770 788 0 1 0 772 788 0 1 1 766 789 0 0 0 773 789 0 0 1 782 790 0 0 0 788 791 0 0 0 789 792 0 1 0 776 793 0 0 0 780 794 0 0 0 777 795 0 0 0 788 796 0 1 0 785 797 0 0 0 783 798 0 0 0 786 799 0 1 0 775 800 0 0 0 784 800 0 0 1 787 801 0 0 0 789 801 0 0 1 778 802 0 0 0 781 802 0 0 1 785 803 0 1 0 786 803 0 0 1 787 804 0 1 0 779 804 0 0 1 791 805 0 0 0 800 806 0 0 0 790 807 0 0 0 793 808 0 0 0 792 809 0 0 0 797 810 0 0 0 802 811 0 1 0 802 812 0 0 0 800 813 0 1 0 801 814 0 0 0 803 815 0 0 0 801 815 0 1 1 803 816 0 1 0 796 816 0 0 1 799 817 0 0 0 804 817 0 0 1 794 818 0 0 0 798 818 0 0 1 804 819 0 1 0 795 819 0 0 1 810 820 0 0 0 813 821 0 0 0 808 822 0 0 0 816 823 0 1 0 815 824 0 0 0 817 825 0 0 0 819 826 0 0 0 817 827 0 1 0 818 828 0 0 0 807 829 0 0 0 812 830 0 0 0 806 830 0 0 1 816 831 0 0 0 805 831 0 0 1 818 832 0 1 0 811 832 0 0 1 819 833 0 1 0 815 833 0 1 1 809 834 0 0 0 814 834 0 0 1 824 835 0 0 0 834 836 0 1 0 822 837 0 0 0 826 838 0 0 0 832 839 0 1 0 831 840 0 0 0 829 841 0 0 0 831 842 0 1 0 820 843 0 0 0 830 844 0 1 0 834 845 0 0 0 832 845 0 0 1 821 846 0 0 0 827 846 0 0 1 828 847 0 0 0 833 847 0 1 1 830 848 0 0 0 833 848 0 0 1 825 849 0 0 0 823 849 0 0 1 843 850 0 0 0 846 851 0 1 0 847 852 0 1 0 846 853 0 0 0 840 854 0 0 0 839 855 0 0 0 849 856 0 1 0 848 857 0 0 0 836 858 0 0 0 845 859 0 1 0 841 860 0 0 0 838 860 0 0 1 849 861 0 0 0 845 861 0 0 1 848 862 0 1 0 844 862 0 0 1 835 863 0 0 0 847 863 0 0 1 837 864 0 0 0 842 864 0 0 1 860 865 0 1 0 854 866 0 0 0 863 867 0 1 0 860 868 0 0 0 861 869 0 1 0 864 870 0 0 0 863 871 0 0 0 864 872 0 1 0 859 873 0 0 0 858 874 0 0 0 857 875 0 0 0 862 875 0 0 1 855 876 0 0 0 853 876 0 0 1 850 877 0 0 0 851 877 0 0 1 862 878 0 1 0 856 878 0 0 1 861 879 0 0 0 852 879 0 0 1 875 880 0 1 0 868 881 0 0 0 869 882 0 0 0 879 883 0 0 0 879 884 0 1 0 866 885 0 0 0 876 886 0 1 0 878 887 0 1 0 872 888 0 0 0 874 889 0 0 0 873 890 0 0 0 877 890 0 0 1 867 891 0 0 0 876 891 0 0 1 870 892 0 0 0 865 892 0 0 1 871 893 0 0 0 877 893 0 1 1 875 894 0 0 0 878 894 0 0 1 887 895 0 0 0 891 896 0 0 0 891 897 0 1 0 886 898 0 0 0 882 899 0 0 0 893 900 0 0 0 893 901 0 1 0 894 902 0 1 0 884 903 0 0 0 892 904 0 0 0 889 905 0 0 0 894 905 0 0 1 890 906 0 0 0 881 906 0 0 1 885 907 0 0 0 890 907 0 1 1 883 908 0 0 0 892 908 0 1 1 880 909 0 0 0 888 909 0 0 1 907 910 0 1 0 907 911 0 0 0 902 912 0 0 0 908 913 0 0 0 895 914 0 0 0 900 915 0 0 0 906 916 0 0 0 898 917 0 0 0 909 918 0 0 0 905 919 0 1 0 905 920 0 0 0 903 920 0 0 1 908 921 0 1 0 896 921 0 0 1 897 922 0 0 0 899 922 0 0 1 906 923 0 1 0 909 923 0 1 1 901 924 0 0 0 904 924 0 0 1 924 925 0 1 0 920 926 0 0 0 919 927 0 0 0 922 928 0 0 0 916 929 0 0 0 913 930 0 0 0 915 931 0 0 0 917 932 0 0 0 920 933 0 1 0 910 934 0 0 0 922 935 0 1 0 911 935 0 0 1 924 936 0 0 0 918 936 0 0 1 921 937 0 0 0 923 937 0 0 1 912 938 0 0 0 921 938 0 1 1 914 939 0 0 0 923 939 0 1 1 933 940 0 0 0 931 941 0 0 0 936 942 0 1 0 937 943 0 0 0 938 944 0 1 0 939 945 0 1 0 935 946 0 1 0 925 947 0 0 0 927 948 0 0 0 934 949 0 0 0 932 950 0 0 0 928 950 0 0 1 926 951 0 0 0 936 951 0 0 1 937 952 0 1 0 939 952 0 0 1 929 953 0 0 0 930 953 0 0 1 935 954 0 0 0 938 954 0 0 1 946 955 0 0 0 953 956 0 0 0 952 957 0 1 0 950 958 0 0 0 952 959 0 0 0 942 960 0 0 0 947 961 0 0 0 943 962 0 0 0 954 963 0 1 0 944 964 0 0 0 941 965 0 0 0 940 965 0 0 1 949 966 0 0 0 950 966 0 1 1 948 967 0 0 0 951 967 0 0 1 954 968 0 0 0 945 968 0 0 1 953 969 0 1 0 951 969 0 1 1 967 970 0 1 0 957 971 0 0 0 969 972 0 0 0 969 973 0 1 0 965 974 0 0 0 966 975 0 1 0 958 976 0 0 0 964 977 0 0 0 965 978 0 1 0 960 979 0 0 0 955 980 0 0 0 967 980 0 0 1 956 981 0 0 0 968 981 0 0 1 962 982 0 0 0 963 982 0 0 1 968 983 0 1 0 959 983 0 0 1 966 984 0 0 0 961 984 0 0 1 981 985 0 0 0 978 986 0 0 0 983 987 0 1 0 984 988 0 1 0 980 989 0 0 0 973 990 0 0 0 979 991 0 0 0 984 992 0 0 0 974 993 0 0 0 977 994 0 0 0 971 995 0 0 0 975 995 0 0 1 983 996 0 0 0 972 996 0 0 1 982 997 0 1 0 970 997 0 0 1 976 998 0 0 0 981 998 0 1 1 982 999 0 0 0 980 999 0 1 1 989 1000 0 0 0 999 1001 0 1 0 996 1002 0 1 0 998 1003 0 0 0 992 1004 0 0 0 994 1005 0 0 0 997 1006 0 1 0 997 1007 0 0 0 985 1008 0 0 0 986 1009 0 0 0 990 1010 0 0 0 995 1010 0 1 1 998 1011 0 1 0 991 1011 0 0 1 999 1012 0 0 0 996 1012 0 0 1 987 1013 0 0 0 993 1013 0 0 1 988 1014 0 0 0 995 1014 0 0 1 1010 1015 0 0 0 1012 1016 0 1 0 1014 1017 0 0 0 1012 1018 0 0 0 1008 1019 0 0 0 1013 1020 0 1 0 1006 1021 0 0 0 1001 1022 0 0 0 1011 1023 0 1 0 1010 1024 0 1 0 1013 1025 0 0 0 1007 1025 0 0 1 1014 1026 0 1 0 1000 1026 0 0 1 1002 1027 0 0 0 1003 1027 0 0 1 1009 1028 0 0 0 1005 1028 0 0 1 1004 1029 0 0 0 1011 1029 0 0 1 1024 1030 0 0 0 1028 1031 0 1 0 1018 1032 0 0 0 1019 1033 0 0 0 1027 1034 0 1 0 1029 1035 0 1 0 1026 1036 0 0 0 1020 1037 0 0 0 1025 1038 0 0 0 1027 1039 0 0 0 1023 1040 0 0 0 1026 1040 0 1 1 1028 1041 0 0 0 1029 1041 0 0 1 1025 1042 0 1 0 1022 1042 0 0 1 1021 1043 0 0 0 1015 1043 0 0 1 1017 1044 0 0 0 1016 1044 0 0 1 1044 1045 0 1 0 1037 1046 0 0 0 1035 1047 0 0 0 1033 1048 0 0 0 1040 1049 0 0 0 1043 1050 0 0 0 1040 1051 0 1 0 1036 1052 0 0 0 1034 1053 0 0 0 1041 1054 0 1 0 1043 1055 0 1 0 1038 1055 0 0 1 1042 1056 0 1 0 1039 1056 0 0 1 1044 1057 0 0 0 1042 1057 0 0 1 1032 1058 0 0 0 1041 1058 0 0 1 1031 1059 0 0 0 1030 1059 0 0 1 1046 1060 0 0 0 1048 1061 0 0 0 1056 1062 0 1 0 1057 1063 0 0 0 1049 1064 0 0 0 1047 1065 0 0 0 1050 1066 0 0 0 1051 1067 0 0 0 1058 1068 0 1 0 1052 1069 0 0 0 1053 1070 0 0 0 1059 1070 0 1 1 1058 1071 0 0 0 1059 1071 0 0 1 1054 1072 0 0 0 1055 1072 0 1 1 1057 1073 0 1 0 1045 1073 0 0 1 1056 1074 0 0 0 1055 1074 0 0 1 1064 1075 0 0 0 1061 1076 0 0 0 1066 1077 0 0 0 1065 1078 0 0 0 1068 1079 0 0 0 1060 1080 0 0 0 1073 1081 0 0 0 1067 1082 0 0 0 1072 1083 0 0 0 1063 1084 0 0 0 1074 1085 0 0 0 1062 1085 0 0 1 1074 1086 0 1 0 1073 1086 0 1 1 1072 1087 0 1 0 1070 1087 0 1 1 1070 1088 0 0 0 1071 1088 0 1 1 1071 1089 0 0 0 1069 1089 0 0 1 1077 1090 0 0 0 1084 1091 0 0 0 1088 1092 0 0 0 1086 1093 0 1 0 1085 1094 0 1 0 1081 1095 0 0 0 1088 1096 0 1 0 1082 1097 0 0 0 1075 1098 0 0 0 1079 1099 0 0 0 1083 1100 0 0 0 1089 1100 0 0 1 1085 1101 0 0 0 1087 1101 0 0 1 1086 1102 0 0 0 1078 1102 0 0 1 1080 1103 0 0 0 1076 1103 0 0 1 1087 1104 0 1 0 1089 1104 0 1 1 1090 1105 0 0 0 1096 1106 0 0 0 1100 1107 0 0 0 1094 1108 0 0 0 1092 1109 0 0 0 1095 1110 0 0 0 1097 1111 0 0 0 1101 1112 0 1 0 1099 1113 0 0 0 1091 1114 0 0 0 1104 1115 0 0 0 1104 1115 0 1 1 1103 1116 0 1 0 1093 1116 0 0 1 1103 1117 0 0 0 1098 1117 0 0 1 1101 1118 0 0 0 1102 1118 0 1 1 1100 1119 0 1 0 1102 1119 0 0 1 1115 1120 0 1 0 1110 1121 0 0 0 1117 1122 0 0 0 1108 1123 0 0 0 1117 1124 0 1 0 1119 1125 0 0 0 1115 1126 0 0 0 1113 1127 0 0 0 1106 1128 0 0 0 1118 1129 0 0 0 1107 1130 0 0 0 1114 1130 0 0 1 1116 1131 0 1 0 1105 1131 0 0 1 1116 1132 0 0 0 1109 1132 0 0 1 1118 1133 0 1 0 1111 1133 0 0 1 1119 1134 0 1 0 1112 1134 0 0 1 1127 1135 0 0 0 1132 1136 0 1 0 1133 1137 0 0 0 1128 1138 0 0 0 1125 1139 0 0 0 1134 1140 0 0 0 1129 1141 0 0 0 1123 1142 0 0 0 1131 1143 0 1 0 1134 1144 0 1 0 1120 1145 0 0 0 1132 1145 0 0 1 1133 1146 0 1 0 1121 1146 0 0 1 1122 1147 0 0 0 1130 1147 0 1 1 1131 1148 0 0 0 1130 1148 0 0 1 1126 1149 0 0 0 1124 1149 0 0 1 1146 1150 0 0 0 1139 1151 0 0 0 1135 1152 0 0 0 1149 1153 0 0 0 1146 1154 0 1 0 1149 1155 0 1 0 1148 1156 0 1 0 1147 1157 0 1 0 1148 1158 0 0 0 1147 1159 0 0 0 1142 1160 0 0 0 1143 1160 0 0 1 1144 1161 0 0 0 1138 1161 0 0 1 1136 1162 0 0 0 1141 1162 0 0 1 1137 1163 0 0 0 1145 1163 0 0 1 1145 1164 0 1 0 1140 1164 0 0 1 1158 1165 0 0 0 1156 1166 0 0 0 1154 1167 0 0 0 1164 1168 0 1 0 1162 1169 0 1 0 1163 1170 0 1 0 1163 1171 0 0 0 1155 1172 0 0 0 1152 1173 0 0 0 1160 1174 0 1 0 1160 1175 0 0 0 1151 1175 0 0 1 1159 1176 0 0 0 1162 1176 0 0 1 1157 1177 0 0 0 1161 1177 0 1 1 1153 1178 0 0 0 1161 1178 0 0 1 1164 1179 0 0 0 1150 1179 0 0 1 1171 1180 0 0 0 1173 1181 0 0 0 1169 1182 0 0 0 1178 1183 0 0 0 1175 1184 0 0 0 1168 1185 0 0 0 1179 1186 0 0 0 1176 1187 0 0 0 1176 1188 0 1 0 1175 1189 0 1 0 1174 1190 0 0 0 1165 1190 0 0 1 1170 1191 0 0 0 1179 1191 0 1 1 1166 1192 0 0 0 1177 1192 0 0 1 1172 1193 0 0 0 1178 1193 0 1 1 1167 1194 0 0 0 1177 1194 0 1 1 1194 1195 0 1 0 1181 1196 0 0 0 1192 1197 0 0 0 1192 1198 0 1 0 1190 1199 0 1 0 1184 1200 0 0 0 1193 1201 0 1 0 1193 1202 0 0 0 1194 1203 0 0 0 1191 1204 0 1 0 1180 1205 0 0 0 1187 1205 0 0 1 1188 1206 0 0 0 1183 1206 0 0 1 1191 1207 0 0 0 1185 1207 0 0 1 1186 1208 0 0 0 1182 1208 0 0 1 1190 1209 0 0 0 1189 1209 0 0 1 1200 1210 0 0 0 1195 1211 0 0 0 1197 1212 0 0 0 1198 1213 0 0 0 1205 1214 0 0 0 1201 1215 0 0 0 1205 1216 0 1 0 1208 1217 0 0 0 1207 1218 0 0 0 1209 1219 0 0 0 1199 1220 0 0 0 1196 1220 0 0 1 1206 1221 0 1 0 1209 1221 0 1 1 1207 1222 0 1 0 1202 1222 0 0 1 1204 1223 0 0 0 1208 1223 0 1 1 1206 1224 0 0 0 1203 1224 0 0 1 1221 1225 0 1 0 1221 1226 0 0 0 1215 1227 0 0 0 1224 1228 0 1 0 1213 1229 0 0 0 1217 1230 0 0 0 1220 1231 0 1 0 1224 1232 0 0 0 1222 1233 0 0 0 1216 1234 0 0 0 1222 1235 0 1 0 1223 1235 0 0 1 1219 1236 0 0 0 1223 1236 0 1 1 1218 1237 0 0 0 1220 1237 0 0 1 1214 1238 0 0 0 1212 1238 0 0 1 1210 1239 0 0 0 1211 1239 0 0 1 1229 1240 0 0 0 1237 1241 0 0 0 1227 1242 0 0 0 1234 1243 0 0 0 1230 1244 0 0 0 1225 1245 0 0 0 1239 1246 0 1 0 1238 1247 0 0 0 1236 1248 0 1 0 1226 1249 0 0 0 1239 1250 0 0 0 1238 1250 0 1 1 1228 1251 0 0 0 1235 1251 0 0 1 1237 1252 0 1 0 1235 1252 0 1 1 1233 1253 0 0 0 1236 1253 0 0 1 1232 1254 0 0 0 1231 1254 0 0 1 1246 1255 0 0 0 1252 1256 0 0 0 1253 1257 0 0 0 1249 1258 0 0 0 1250 1259 0 0 0 1241 1260 0 0 0 1250 1261 0 1 0 1245 1262 0 0 0 1251 1263 0 0 0 1254 1264 0 1 0 1243 1265 0 0 0 1242 1265 0 0 1 1240 1266 0 0 0 1248 1266 0 0 1 1247 1267 0 0 0 1244 1267 0 0 1 1253 1268 0 1 0 1252 1268 0 1 1 1254 1269 0 0 0 1251 1269 0 1 1 1257 1270 0 0 0 1262 1271 0 0 0 1268 1272 0 1 0 1265 1273 0 0 0 1256 1274 0 0 0 1261 1275 0 0 0 1266 1276 0 0 0 1268 1277 0 0 0 1255 1278 0 0 0 1265 1279 0 1 0 1260 1280 0 0 0 1264 1280 0 0 1 1267 1281 0 0 0 1269 1281 0 1 1 1266 1282 0 1 0 1258 1282 0 0 1 1259 1283 0 0 0 1263 1283 0 0 1 1269 1284 0 0 0 1267 1284 0 1 1 1273 1285 0 0 0 1280 1286 0 0 0 1274 1287 0 0 0 1281 1288 0 1 0 1270 1289 0 0 0 1276 1290 0 0 0 1284 1291 0 0 0 1279 1292 0 0 0 1283 1293 0 0 0 1277 1294 0 0 0 1282 1295 0 0 0 1283 1295 0 1 1 1275 1296 0 0 0 1278 1296 0 0 1 1271 1297 0 0 0 1284 1297 0 1 1 1280 1298 0 1 0 1272 1298 0 0 1 1282 1299 0 1 0 1281 1299 0 0 1 1292 1300 0 0 0 1296 1301 0 0 0 1298 1302 0 0 0 1288 1303 0 0 0 1285 1304 0 0 0 1293 1305 0 0 0 1297 1306 0 1 0 1297 1307 0 0 0 1287 1308 0 0 0 1294 1309 0 0 0 1291 1310 0 0 0 1295 1310 0 1 1 1289 1311 0 0 0 1299 1311 0 1 1 1286 1312 0 0 0 1296 1312 0 1 1 1299 1313 0 0 0 1298 1313 0 1 1 1295 1314 0 0 0 1290 1314 0 0 1 1311 1315 0 0 0 1312 1316 0 0 0 1308 1317 0 0 0 1310 1318 0 1 0 1301 1319 0 0 0 1307 1320 0 0 0 1302 1321 0 0 0 1300 1322 0 0 0 1312 1323 0 1 0 1311 1324 0 1 0 1313 1325 0 0 0 1310 1325 0 0 1 1306 1326 0 0 0 1305 1326 0 0 1 1304 1327 0 0 0 1314 1327 0 0 1 1314 1328 0 1 0 1313 1328 0 1 1 1303 1329 0 0 0 1309 1329 0 0 1 1329 1330 0 0 0 1319 1331 0 0 0 1327 1332 0 1 0 1317 1333 0 0 0 1326 1334 0 1 0 1322 1335 0 0 0 1326 1336 0 0 0 1327 1337 0 0 0 1321 1338 0 0 0 1323 1339 0 0 0 1328 1340 0 1 0 1325 1340 0 1 1 1320 1341 0 0 0 1329 1341 0 1 1 1325 1342 0 0 0 1328 1342 0 0 1 1318 1343 0 0 0 1316 1343 0 0 1 1315 1344 0 0 0 1324 1344 0 0 1 1334 1345 0 0 0 1342 1346 0 0 0 1333 1347 0 0 0 1341 1348 0 0 0 1344 1349 0 1 0 1340 1350 0 1 0 1335 1351 0 0 0 1332 1352 0 0 0 1342 1353 0 1 0 1341 1354 0 1 0 1338 1355 0 0 0 1331 1355 0 0 1 1343 1356 0 1 0 1336 1356 0 0 1 1337 1357 0 0 0 1340 1357 0 0 1 1343 1358 0 0 0 1330 1358 0 0 1 1339 1359 0 0 0 1344 1359 0 0 1 1354 1360 0 0 0 1359 1361 0 0 0 1347 1362 0 0 0 1350 1363 0 0 0 1357 1364 0 1 0 1356 1365 0 0 0 1358 1366 0 1 0 1356 1367 0 1 0 1345 1368 0 0 0 1359 1369 0 1 0 1358 1370 0 0 0 1352 1370 0 0 1 1355 1371 0 1 0 1349 1371 0 0 1 1357 1372 0 0 0 1351 1372 0 0 1 1348 1373 0 0 0 1353 1373 0 0 1 1346 1374 0 0 0 1355 1374 0 0 1 1370 1375 0 0 0 1365 1376 0 0 0 1364 1377 0 0 0 1362 1378 0 0 0 1372 1379 0 0 0 1370 1380 0 1 0 1360 1381 0 0 0 1374 1382 0 1 0 1367 1383 0 0 0 1373 1384 0 1 0 1368 1385 0 0 0 1373 1385 0 0 1 1369 1386 0 0 0 1372 1386 0 1 1 1361 1387 0 0 0 1371 1387 0 1 1 1374 1388 0 0 0 1366 1388 0 0 1 1363 1389 0 0 0 1371 1389 0 0 1 1384 1390 0 0 0 1377 1391 0 0 0 1386 1392 0 0 0 1387 1393 0 0 0 1388 1394 0 0 0 1387 1395 0 1 0 1379 1396 0 0 0 1386 1397 0 1 0 1380 1398 0 0 0 1389 1399 0 1 0 1385 1400 0 0 0 1375 1400 0 0 1 1383 1401 0 0 0 1378 1401 0 0 1 1385 1402 0 1 0 1389 1402 0 0 1 1388 1403 0 1 0 1376 1403 0 0 1 1382 1404 0 0 0 1381 1404 0 0 1 1400 1405 0 0 0 1404 1406 0 1 0 1394 1407 0 0 0 1402 1408 0 0 0 1392 1409 0 0 0 1403 1410 0 0 0 1391 1411 0 0 0 1400 1412 0 1 0 1401 1413 0 0 0 1390 1414 0 0 0 1396 1415 0 0 0 1403 1415 0 1 1 1398 1416 0 0 0 1397 1416 0 0 1 1404 1417 0 0 0 1393 1417 0 0 1 1399 1418 0 0 0 1395 1418 0 0 1 1402 1419 0 1 0 1401 1419 0 1 1 1415 1420 0 0 0 1416 1421 0 0 0 1411 1422 0 0 0 1409 1423 0 0 0 1406 1424 0 0 0 1419 1425 0 1 0 1418 1426 0 0 0 1419 1427 0 0 0 1413 1428 0 0 0 1408 1429 0 0 0 1418 1430 0 1 0 1407 1430 0 0 1 1410 1431 0 0 0 1417 1431 0 1 1 1416 1432 0 1 0 1412 1432 0 0 1 1405 1433 0 0 0 1414 1433 0 0 1 1417 1434 0 0 0 1415 1434 0 1 1 1433 1435 0 0 0 1432 1436 0 0 0 1423 1437 0 0 0 1430 1438 0 1 0 1434 1439 0 1 0 1424 1440 0 0 0 1433 1441 0 1 0 1429 1442 0 0 0 1421 1443 0 0 0 1422 1444 0 0 0 1430 1445 0 0 0 1434 1445 0 0 1 1427 1446 0 0 0 1420 1446 0 0 1 1428 1447 0 0 0 1432 1447 0 1 1 1425 1448 0 0 0 1431 1448 0 1 1 1426 1449 0 0 0 1431 1449 0 0 1 1445 1450 0 1 0 1449 1451 0 0 0 1446 1452 0 0 0 1435 1453 0 0 0 1436 1454 0 0 0 1443 1455 0 0 0 1440 1456 0 0 0 1448 1457 0 1 0 1437 1458 0 0 0 1444 1459 0 0 0 1449 1460 0 1 0 1446 1460 0 1 1 1448 1461 0 0 0 1441 1461 0 0 1 1439 1462 0 0 0 1447 1462 0 1 1 1438 1463 0 0 0 1447 1463 0 0 1 1445 1464 0 0 0 1442 1464 0 0 1 1462 1465 0 0 0 1464 1466 0 1 0 1452 1467 0 0 0 1459 1468 0 0 0 1451 1469 0 0 0 1453 1470 0 0 0 1463 1471 0 0 0 1454 1472 0 0 0 1457 1473 0 0 0 1461 1474 0 0 0 1464 1475 0 0 0 1463 1475 0 1 1 1458 1476 0 0 0 1461 1476 0 1 1 1455 1477 0 0 0 1462 1477 0 1 1 1450 1478 0 0 0 1460 1478 0 1 1 1460 1479 0 0 0 1456 1479 0 0 1 1476 1480 0 0 0 1477 1481 0 1 0 1471 1482 0 0 0 1473 1483 0 0 0 1478 1484 0 1 0 1470 1485 0 0 0 1479 1486 0 1 0 1472 1487 0 0 0 1466 1488 0 0 0 1474 1489 0 0 0 1479 1490 0 0 0 1467 1490 0 0 1 1477 1491 0 0 0 1469 1491 0 0 1 1476 1492 0 1 0 1468 1492 0 0 1 1475 1493 0 1 0 1475 1493 0 0 1 1465 1494 0 0 0 1478 1494 0 0 1 1493 1495 0 0 0 1490 1496 0 0 0 1483 1497 0 0 0 1487 1498 0 0 0 1488 1499 0 0 0 1485 1500 0 0 0 1492 1501 0 1 0 1480 1502 0 0 0 1493 1503 0 1 0 1492 1504 0 0 0 1486 1505 0 0 0 1494 1505 0 1 1 1491 1506 0 0 0 1490 1506 0 1 1 1481 1507 0 0 0 1494 1507 0 0 1 1489 1508 0 0 0 1482 1508 0 0 1 1491 1509 0 1 0 1484 1509 0 0 1 1500 1510 0 0 0 1496 1511 0 0 0 1508 1512 0 1 0 1508 1513 0 0 0 1507 1514 0 0 0 1505 1515 0 1 0 1504 1516 0 0 0 1509 1517 0 0 0 1497 1518 0 0 0 1505 1519 0 0 0 1509 1520 0 1 0 1506 1520 0 1 1 1499 1521 0 0 0 1501 1521 0 0 1 1498 1522 0 0 0 1495 1522 0 0 1 1506 1523 0 0 0 1503 1523 0 0 1 1507 1524 0 1 0 1502 1524 0 0 1 1523 1525 0 0 0 1521 1526 0 1 0 1513 1527 0 0 0 1518 1528 0 0 0 1516 1529 0 0 0 1521 1530 0 0 0 1510 1531 0 0 0 1514 1532 0 0 0 1515 1533 0 0 0 1520 1534 0 1 0 1519 1535 0 0 0 1512 1535 0 0 1 1523 1536 0 1 0 1522 1536 0 1 1 1517 1537 0 0 0 1524 1537 0 0 1 1520 1538 0 0 0 1522 1538 0 0 1 1511 1539 0 0 0 1524 1539 0 1 1 1537 1540 0 0 0 1534 1541 0 0 0 1538 1542 0 0 0 1539 1543 0 0 0 1528 1544 0 0 0 1526 1545 0 0 0 1539 1546 0 1 0 1531 1547 0 0 0 1533 1548 0 0 0 1536 1549 0 1 0 1537 1550 0 1 0 1535 1550 0 1 1 1538 1551 0 1 0 1530 1551 0 0 1 1527 1552 0 0 0 1535 1552 0 0 1 1525 1553 0 0 0 1529 1553 0 0 1 1532 1554 0 0 0 1536 1554 0 0 1 1540 1555 0 0 0 1545 1556 0 0 0 1541 1557 0 0 0 1552 1558 0 0 0 1552 1559 0 1 0 1554 1560 0 1 0 1551 1561 0 0 0 1542 1562 0 0 0 1550 1563 0 0 0 1543 1564 0 0 0 1553 1565 0 0 0 1550 1565 0 1 1 1553 1566 0 1 0 1547 1566 0 0 1 1549 1567 0 0 0 1551 1567 0 1 1 1554 1568 0 0 0 1546 1568 0 0 1 1544 1569 0 0 0 1548 1569 0 0 1 1566 1570 0 0 0 1569 1571 0 0 0 1561 1572 0 0 0 1568 1573 0 0 0 1563 1574 0 0 0 1567 1575 0 0 0 1556 1576 0 0 0 1555 1577 0 0 0 1564 1578 0 0 0 1557 1579 0 0 0 1562 1580 0 0 0 1558 1580 0 0 1 1560 1581 0 0 0 1566 1581 0 1 1 1559 1582 0 0 0 1565 1582 0 1 1 1565 1583 0 0 0 1569 1583 0 1 1 1568 1584 0 1 0 1567 1584 0 1 1 1572 1585 0 0 0 1582 1586 0 1 0 1580 1587 0 0 0 1577 1588 0 0 0 1581 1589 0 0 0 1584 1590 0 0 0 1571 1591 0 0 0 1570 1592 0 0 0 1576 1593 0 0 0 1582 1594 0 0 0 1579 1595 0 0 0 1581 1595 0 1 1 1584 1596 0 1 0 1583 1596 0 1 1 1578 1597 0 0 0 1575 1597 0 0 1 1580 1598 0 1 0 1573 1598 0 0 1 1574 1599 0 0 0 1583 1599 0 0 1 1599 1600 0 1 0 1598 1601 0 0 0 1595 1602 0 1 0 1597 1603 0 1 0 1596 1604 0 0 0 1590 1605 0 0 0 1587 1606 0 0 0 1589 1607 0 0 0 1597 1608 0 0 0 1598 1609 0 1 0 1592 1610 0 0 0 1593 1610 0 0 1 1595 1611 0 0 0 1586 1611 0 0 1 1599 1612 0 0 0 1594 1612 0 0 1 1588 1613 0 0 0 1596 1613 0 1 1 1591 1614 0 0 0 1585 1614 0 0 1 1613 1615 0 1 0 1614 1616 0 1 0 1601 1617 0 0 0 1609 1618 0 0 0 1614 1619 0 0 0 1612 1620 0 1 0 1612 1621 0 0 0 1603 1622 0 0 0 1600 1623 0 0 0 1613 1624 0 0 0 1611 1625 0 1 0 1604 1625 0 0 1 1605 1626 0 0 0 1607 1626 0 0 1 1608 1627 0 0 0 1610 1627 0 0 1 1602 1628 0 0 0 1611 1628 0 0 1 1610 1629 0 1 0 1606 1629 0 0 1 1618 1630 0 0 0 1622 1631 0 0 0 1627 1632 0 1 0 1627 1633 0 0 0 1628 1634 0 1 0 1615 1635 0 0 0 1629 1636 0 1 0 1626 1637 0 0 0 1623 1638 0 0 0 1621 1639 0 0 0 1624 1640 0 0 0 1625 1640 0 1 1 1616 1641 0 0 0 1619 1641 0 0 1 1626 1642 0 1 0 1617 1642 0 0 1 1628 1643 0 0 0 1625 1643 0 0 1 1629 1644 0 0 0 1620 1644 0 0 1 1632 1645 0 0 0 1630 1646 0 0 0 1633 1647 0 0 0 1640 1648 0 1 0 1634 1649 0 0 0 1639 1650 0 0 0 1631 1651 0 0 0 1637 1652 0 0 0 1642 1653 0 0 0 1641 1654 0 1 0 1635 1655 0 0 0 1644 1655 0 1 1 1641 1656 0 0 0 1644 1656 0 0 1 1638 1657 0 0 0 1642 1657 0 1 1 1636 1658 0 0 0 1643 1658 0 0 1 1640 1659 0 0 0 1643 1659 0 1 1 1647 1660 0 0 0 1651 1661 0 0 0 1658 1662 0 1 0 1649 1663 0 0 0 1648 1664 0 0 0 1656 1665 0 1 0 1650 1666 0 0 0 1657 1667 0 0 0 1652 1668 0 0 0 1645 1669 0 0 0 1659 1670 0 0 0 1656 1670 0 0 1 1659 1671 0 1 0 1653 1671 0 0 1 1646 1672 0 0 0 1657 1672 0 1 1 1655 1673 0 0 0 1655 1673 0 1 1 1658 1674 0 0 0 1654 1674 0 0 1 1674 1675 0 0 0 1661 1676 0 0 0 1673 1677 0 1 0 1674 1678 0 1 0 1672 1679 0 1 0 1669 1680 0 0 0 1660 1681 0 0 0 1672 1682 0 0 0 1663 1683 0 0 0 1673 1684 0 0 0 1666 1685 0 0 0 1662 1685 0 0 1 1667 1686 0 0 0 1668 1686 0 0 1 1670 1687 0 0 0 1665 1687 0 0 1 1664 1688 0 0 0 1671 1688 0 0 1 1671 1689 0 1 0 1670 1689 0 1 1 1689 1690 0 1 0 1685 1691 0 0 0 1688 1692 0 0 0 1682 1693 0 0 0 1684 1694 0 0 0 1686 1695 0 0 0 1675 1696 0 0 0 1685 1697 0 1 0 1687 1698 0 0 0 1688 1699 0 1 0 1681 1700 0 0 0 1680 1700 0 0 1 1677 1701 0 0 0 1689 1701 0 0 1 1686 1702 0 1 0 1679 1702 0 0 1 1676 1703 0 0 0 1678 1703 0 0 1 1687 1704 0 1 0 1683 1704 0 0 1 1696 1705 0 0 0 1691 1706 0 0 0 1704 1707 0 0 0 1698 1708 0 0 0 1701 1709 0 1 0 1701 1710 0 0 0 1694 1711 0 0 0 1700 1712 0 0 0 1702 1713 0 0 0 1690 1714 0 0 0 1695 1715 0 0 0 1702 1715 0 1 1 1697 1716 0 0 0 1692 1716 0 0 1 1704 1717 0 1 0 1703 1717 0 0 1 1693 1718 0 0 0 1699 1718 0 0 1 1700 1719 0 1 0 1703 1719 0 1 1 1705 1720 0 0 0 1707 1721 0 0 0 1709 1722 0 0 0 1717 1723 0 0 0 1719 1724 0 0 0 1706 1725 0 0 0 1717 1726 0 1 0 1708 1727 0 0 0 1711 1728 0 0 0 1714 1729 0 0 0 1716 1730 0 1 0 1712 1730 0 0 1 1710 1731 0 0 0 1716 1731 0 0 1 1715 1732 0 0 0 1718 1732 0 1 1 1713 1733 0 0 0 1715 1733 0 1 1 1719 1734 0 1 0 1718 1734 0 0 1 1720 1735 0 0 0 1730 1736 0 0 0 1728 1737 0 0 0 1727 1738 0 0 0 1721 1739 0 0 0 1726 1740 0 0 0 1734 1741 0 0 0 1722 1742 0 0 0 1729 1743 0 0 0 1731 1744 0 0 0 1733 1745 0 1 0 1724 1745 0 0 1 1733 1746 0 0 0 1723 1746 0 0 1 1730 1747 0 1 0 1732 1747 0 0 1 1731 1748 0 1 0 1734 1748 0 1 1 1732 1749 0 1 0 1725 1749 0 0 1 1740 1750 0 0 0 1735 1751 0 0 0 1739 1752 0 0 0 1744 1753 0 0 0 1742 1754 0 0 0 1736 1755 0 0 0 1748 1756 0 0 0 1749 1757 0 1 0 1749 1758 0 0 0 1748 1759 0 1 0 1747 1760 0 0 0 1746 1760 0 1 1 1745 1761 0 1 0 1743 1761 0 0 1 1745 1762 0 0 0 1738 1762 0 0 1 1747 1763 0 1 0 1741 1763 0 0 1 1737 1764 0 0 0 1746 1764 0 0 1 1762 1765 0 1 0 1756 1766 0 0 0 1764 1767 0 0 0 1761 1768 0 1 0 1754 1769 0 0 0 1758 1770 0 0 0 1755 1771 0 0 0 1762 1772 0 0 0 1761 1773 0 0 0 1751 1774 0 0 0 1764 1775 0 1 0 1760 1775 0 0 1 1763 1776 0 0 0 1753 1776 0 0 1 1752 1777 0 0 0 1757 1777 0 0 1 1763 1778 0 1 0 1760 1778 0 1 1 1759 1779 0 0 0 1750 1779 0 0 1 1779 1780 0 0 0 1773 1781 0 0 0 1777 1782 0 0 0 1777 1783 0 1 0 1776 1784 0 1 0 1768 1785 0 0 0 1767 1786 0 0 0 1772 1787 0 0 0 1778 1788 0 0 0 1779 1789 0 1 0 1774 1790 0 0 0 1765 1790 0 0 1 1770 1791 0 0 0 1771 1791 0 0 1 1769 1792 0 0 0 1775 1792 0 0 1 1776 1793 0 0 0 1775 1793 0 1 1 1766 1794 0 0 0 1778 1794 0 1 1 1782 1795 0 0 0 1789 1796 0 0 0 1787 1797 0 0 0 1786 1798 0 0 0 1783 1799 0 0 0 1785 1800 0 0 0 1793 1801 0 0 0 1791 1802 0 1 0 1794 1803 0 1 0 1780 1804 0 0 0 1790 1805 0 1 0 1794 1805 0 0 1 1788 1806 0 0 0 1781 1806 0 0 1 1790 1807 0 0 0 1792 1807 0 1 1 1791 1808 0 0 0 1793 1808 0 1 1 1792 1809 0 0 0 1784 1809 0 0 1 1809 1810 0 1 0 1802 1811 0 0 0 1805 1812 0 0 0 1796 1813 0 0 0 1801 1814 0 0 0 1800 1815 0 0 0 1797 1816 0 0 0 1804 1817 0 0 0 1798 1818 0 0 0 1807 1819 0 1 0 1806 1820 0 1 0 1808 1820 0 1 1 1799 1821 0 0 0 1808 1821 0 0 1 1803 1822 0 0 0 1806 1822 0 0 1 1795 1823 0 0 0 1809 1823 0 0 1 1807 1824 0 0 0 1805 1824 0 1 1 1820 1825 0 1 0 1816 1826 0 0 0 1810 1827 0 0 0 1824 1828 0 0 0 1823 1829 0 1 0 1815 1830 0 0 0 1817 1831 0 0 0 1812 1832 0 0 0 1813 1833 0 0 0 1823 1834 0 0 0 1822 1835 0 1 0 1811 1835 0 0 1 1814 1836 0 0 0 1824 1836 0 1 1 1820 1837 0 0 0 1822 1837 0 0 1 1819 1838 0 0 0 1821 1838 0 1 1 1818 1839 0 0 0 1821 1839 0 0 1 1831 1840 0 0 0 1836 1841 0 0 0 1838 1842 0 0 0 1836 1843 0 1 0 1829 1844 0 0 0 1837 1845 0 0 0 1826 1846 0 0 0 1835 1847 0 1 0 1838 1848 0 1 0 1830 1849 0 0 0 1825 1850 0 0 0 1832 1850 0 0 1 1835 1851 0 0 0 1837 1851 0 1 1 1839 1852 0 0 0 1827 1852 0 0 1 1834 1853 0 0 0 1833 1853 0 0 1 1839 1854 0 1 0 1828 1854 0 0 1 1853 1855 0 0 0 1847 1856 0 0 0 1845 1857 0 0 0 1854 1858 0 0 0 1853 1859 0 1 0 1850 1860 0 0 0 1840 1861 0 0 0 1851 1862 0 1 0 1843 1863 0 0 0 1848 1864 0 0 0 1850 1865 0 1 0 1842 1865 0 0 1 1852 1866 0 0 0 1854 1866 0 1 1 1846 1867 0 0 0 1851 1867 0 0 1 1852 1868 0 1 0 1849 1868 0 0 1 1841 1869 0 0 0 1844 1869 0 0 1 1863 1870 0 0 0 1861 1871 0 0 0 1864 1872 0 0 0 1867 1873 0 0 0 1860 1874 0 0 0 1856 1875 0 0 0 1858 1876 0 0 0 1867 1877 0 1 0 1857 1878 0 0 0 1866 1879 0 1 0 1865 1880 0 1 0 1865 1880 0 0 1 1868 1881 0 0 0 1868 1881 0 1 1 1859 1882 0 0 0 1869 1882 0 0 1 1869 1883 0 1 0 1866 1883 0 0 1 1862 1884 0 0 0 1855 1884 0 0 1 1873 1885 0 0 0 1874 1886 0 0 0 1879 1887 0 0 0 1880 1888 0 0 0 1883 1889 0 1 0 1882 1890 0 0 0 1878 1891 0 0 0 1881 1892 0 0 0 1883 1893 0 0 0 1872 1894 0 0 0 1871 1895 0 0 0 1882 1895 0 1 1 1880 1896 0 1 0 1884 1896 0 0 1 1870 1897 0 0 0 1875 1897 0 0 1 1876 1898 0 0 0 1877 1898 0 0 1 1881 1899 0 1 0 1884 1899 0 1 1 1894 1900 0 0 0 1896 1901 0 1 0 1895 1902 0 1 0 1897 1903 0 1 0 1893 1904 0 0 0 1886 1905 0 0 0 1891 1906 0 0 0 1892 1907 0 0 0 1890 1908 0 0 0 1899 1909 0 1 0 1889 1910 0 0 0 1899 1910 0 0 1 1888 1911 0 0 0 1887 1911 0 0 1 1898 1912 0 1 0 1885 1912 0 0 1 1898 1913 0 0 0 1895 1913 0 0 1 1896 1914 0 0 0 1897 1914 0 0 1 1912 1915 0 1 0 1912 1916 0 0 0 1900 1917 0 0 0 1914 1918 0 0 0 1901 1919 0 0 0 1914 1920 0 1 0 1911 1921 0 0 0 1910 1922 0 0 0 1904 1923 0 0 0 1909 1924 0 0 0 1910 1925 0 1 0 1905 1925 0 0 1 1906 1926 0 0 0 1911 1926 0 1 1 1913 1927 0 1 0 1907 1927 0 0 1 1908 1928 0 0 0 1902 1928 0 0 1 1913 1929 0 0 0 1903 1929 0 0 1 1924 1930 0 0 0 1915 1931 0 0 0 1928 1932 0 0 0 1916 1933 0 0 0 1927 1934 0 1 0 1925 1935 0 0 0 1921 1936 0 0 0 1926 1937 0 0 0 1919 1938 0 0 0 1925 1939 0 1 0 1923 1940 0 0 0 1929 1940 0 0 1 1926 1941 0 1 0 1917 1941 0 0 1 1918 1942 0 0 0 1920 1942 0 0 1 1928 1943 0 1 0 1922 1943 0 0 1 1927 1944 0 0 0 1929 1944 0 1 1 1939 1945 0 0 0 1943 1946 0 0 0 1938 1947 0 0 0 1941 1948 0 0 0 1937 1949 0 0 0 1936 1950 0 0 0 1933 1951 0 0 0 1942 1952 0 1 0 1932 1953 0 0 0 1931 1954 0 0 0 1943 1955 0 1 0 1944 1955 0 1 1 1935 1956 0 0 0 1934 1956 0 0 1 1930 1957 0 0 0 1940 1957 0 1 1 1941 1958 0 1 0 1942 1958 0 0 1 1944 1959 0 0 0 1940 1959 0 0 1 1952 1960 0 0 0 1954 1961 0 0 0 1950 1962 0 0 0 1959 1963 0 1 0 1957 1964 0 1 0 1955 1965 0 0 0 1956 1966 0 0 0 1949 1967 0 0 0 1951 1968 0 0 0 1946 1969 0 0 0 1955 1970 0 1 0 1959 1970 0 0 1 1958 1971 0 1 0 1953 1971 0 0 1 1947 1972 0 0 0 1948 1972 0 0 1 1956 1973 0 1 0 1945 1973 0 0 1 1957 1974 0 0 0 1958 1974 0 0 1 1971 1975 0 1 0 1971 1976 0 0 0 1961 1977 0 0 0 1970 1978 0 0 0 1970 1979 0 1 0 1965 1980 0 0 0 1973 1981 0 0 0 1974 1982 0 1 0 1972 1983 0 1 0 1969 1984 0 0 0 1968 1985 0 0 0 1960 1985 0 0 1 1974 1986 0 0 0 1966 1986 0 0 1 1962 1987 0 0 0 1973 1987 0 1 1 1967 1988 0 0 0 1963 1988 0 0 1 1972 1989 0 0 0 1964 1989 0 0 1 1979 1990 0 0 0 1988 1991 0 1 0 1987 1992 0 1 0 1981 1993 0 0 0 1985 1994 0 0 0 1982 1995 0 0 0 1980 1996 0 0 0 1989 1997 0 0 0 1987 1998 0 0 0 1983 1999 0 0 0 1975 2000 0 0 0 1977 2000 0 0 1 1988 2001 0 0 0 1986 2001 0 0 1 1978 2002 0 0 0 1976 2002 0 0 1 1985 2003 0 1 0 1989 2003 0 1 1 1984 2004 0 0 0 1986 2004 0 1 1 2000 2005 0 1 0 2003 2006 0 1 0 2001 2007 0 0 0 2004 2008 0 0 0 1997 2009 0 0 0 1992 2010 0 0 0 1995 2011 0 0 0 1991 2012 0 0 0 1996 2013 0 0 0 1998 2014 0 0 0 2002 2015 0 0 0 2000 2015 0 0 1 2001 2016 0 1 0 1999 2016 0 0 1 1994 2017 0 0 0 2004 2017 0 1 1 2003 2018 0 0 0 2002 2018 0 1 1 1990 2019 0 0 0 1993 2019 0 0 1 2019 2020 0 1 0 2016 2021 0 1 0 2005 2022 0 0 0 2016 2023 0 0 0 2017 2024 0 1 0 2007 2025 0 0 0 2015 2026 0 1 0 2014 2027 0 0 0 2013 2028 0 0 0 2012 2029 0 0 0 2011 2030 0 0 0 2015 2030 0 0 1 2018 2031 0 1 0 2010 2031 0 0 1 2006 2032 0 0 0 2017 2032 0 0 1 2008 2033 0 0 0 2009 2033 0 0 1 2018 2034 0 0 0 2019 2034 0 0 1 2025 2035 0 0 0 2031 2036 0 1 0 2027 2037 0 0 0 2034 2038 0 0 0 2030 2039 0 0 0 2026 2040 0 0 0 2032 2041 0 0 0 2020 2042 0 0 0 2022 2043 0 0 0 2033 2044 0 1 0 2034 2045 0 1 0 2023 2045 0 0 1 2032 2046 0 1 0 2024 2046 0 0 1 2031 2047 0 0 0 2033 2047 0 0 1 2021 2048 0 0 0 2029 2048 0 0 1 2030 2049 0 1 0 2028 2049 0 0 1 2049 2050 0 1 0 2041 2051 0 0 0 2042 2052 0 0 0 2048 2053 0 0 0 2047 2054 0 0 0 2046 2055 0 0 0 2038 2056 0 0 0 2043 2057 0 0 0 2048 2058 0 1 0 2036 2059 0 0 0 2045 2060 0 0 0 2045 2060 0 1 1 2044 2061 0 0 0 2037 2061 0 0 1 2047 2062 0 1 0 2039 2062 0 0 1 2040 2063 0 0 0 2046 2063 0 1 1 2035 2064 0 0 0 2049 2064 0 0 1 2060 2065 0 0 0 2061 2066 0 0 0 2059 2067 0 0 0 2058 2068 0 0 0 2063 2069 0 0 0 2050 2070 0 0 0 2062 2071 0 1 0 2064 2072 0 0 0 2051 2073 0 0 0 2060 2074 0 1 0 2057 2075 0 0 0 2055 2075 0 0 1 2063 2076 0 1 0 2061 2076 0 1 1 2062 2077 0 0 0 2064 2077 0 1 1 2053 2078 0 0 0 2056 2078 0 0 1 2052 2079 0 0 0 2054 2079 0 0 1 2075 2080 0 1 0 2077 2081 0 1 0 2078 2082 0 0 0 2071 2083 0 0 0 2078 2084 0 1 0 2068 2085 0 0 0 2077 2086 0 0 0 2075 2087 0 0 0 2074 2088 0 0 0 2076 2089 0 1 0 2065 2090 0 0 0 2070 2090 0 0 1 2067 2091 0 0 0 2079 2091 0 1 1 2076 2092 0 0 0 2072 2092 0 0 1 2073 2093 0 0 0 2066 2093 0 0 1 2069 2094 0 0 0 2079 2094 0 0 1 2093 2095 0 0 0 2087 2096 0 0 0 2086 2097 0 0 0 2080 2098 0 0 0 2089 2099 0 0 0 2091 2100 0 1 0 2093 2101 0 1 0 2090 2102 0 0 0 2092 2103 0 0 0 2082 2104 0 0 0 2083 2105 0 0 0 2088 2105 0 0 1 2094 2106 0 1 0 2092 2106 0 1 1 2091 2107 0 0 0 2090 2107 0 1 1 2084 2108 0 0 0 2085 2108 0 0 1 2094 2109 0 0 0 2081 2109 0 0 1 2096 2110 0 0 0 2101 2111 0 0 0 2099 2112 0 0 0 2108 2113 0 0 0 2100 2114 0 0 0 2105 2115 0 0 0 2102 2116 0 0 0 2105 2117 0 1 0 2095 2118 0 0 0 2104 2119 0 0 0 2097 2120 0 0 0 2107 2120 0 0 1 2108 2121 0 1 0 2106 2121 0 1 1 2098 2122 0 0 0 2106 2122 0 0 1 2107 2123 0 1 0 2109 2123 0 1 1 2103 2124 0 0 0 2109 2124 0 0 1 2111 2125 0 0 0 2122 2126 0 1 0 2113 2127 0 0 0 2124 2128 0 1 0 2112 2129 0 0 0 2110 2130 0 0 0 2119 2131 0 0 0 2123 2132 0 0 0 2114 2133 0 0 0 2115 2134 0 0 0 2122 2135 0 0 0 2123 2135 0 1 1 2120 2136 0 0 0 2118 2136 0 0 1 2120 2137 0 1 0 2124 2137 0 0 1 2117 2138 0 0 0 2116 2138 0 0 1 2121 2139 0 1 0 2121 2139 0 0 1 2138 2140 0 1 0 2126 2141 0 0 0 2125 2142 0 0 0 2139 2143 0 0 0 2134 2144 0 0 0 2129 2145 0 0 0 2136 2146 0 1 0 2133 2147 0 0 0 2135 2148 0 1 0 2132 2149 0 0 0 2136 2150 0 0 0 2131 2150 0 0 1 2137 2151 0 0 0 2138 2151 0 0 1 2139 2152 0 1 0 2137 2152 0 1 1 2135 2153 0 0 0 2127 2153 0 0 1 2128 2154 0 0 0 2130 2154 0 0 1 2147 2155 0 0 0 2152 2156 0 0 0 2153 2157 0 0 0 2141 2158 0 0 0 2142 2159 0 0 0 2146 2160 0 0 0 2154 2161 0 0 0 2148 2162 0 0 0 2151 2163 0 0 0 2153 2164 0 1 0 2151 2165 0 1 0 2145 2165 0 0 1 2154 2166 0 1 0 2150 2166 0 0 1 2152 2167 0 1 0 2144 2167 0 0 1 2150 2168 0 1 0 2143 2168 0 0 1 2149 2169 0 0 0 2140 2169 0 0 1 2162 2170 0 0 0 2167 2171 0 1 0 2168 2172 0 1 0 2157 2173 0 0 0 2161 2174 0 0 0 2167 2175 0 0 0 2155 2176 0 0 0 2160 2177 0 0 0 2165 2178 0 0 0 2166 2179 0 0 0 2168 2180 0 0 0 2156 2180 0 0 1 2165 2181 0 1 0 2169 2181 0 1 1 2164 2182 0 0 0 2158 2182 0 0 1 2166 2183 0 1 0 2163 2183 0 0 1 2169 2184 0 0 0 2159 2184 0 0 1 2183 2185 0 1 0 2173 2186 0 0 0 2176 2187 0 0 0 2180 2188 0 0 0 2182 2189 0 1 0 2175 2190 0 0 0 2182 2191 0 0 0 2174 2192 0 0 0 2184 2193 0 1 0 2183 2194 0 0 0 2181 2195 0 0 0 2178 2195 0 0 1 2171 2196 0 0 0 2181 2196 0 1 1 2184 2197 0 0 0 2170 2197 0 0 1 2180 2198 0 1 0 2172 2198 0 0 1 2179 2199 0 0 0 2177 2199 0 0 1 2189 2200 0 0 0 2193 2201 0 0 0 2196 2202 0 1 0 2192 2203 0 0 0 2198 2204 0 0 0 2195 2205 0 0 0 2186 2206 0 0 0 2195 2207 0 1 0 2185 2208 0 0 0 2194 2209 0 0 0 2187 2210 0 0 0 2197 2210 0 1 1 2188 2211 0 0 0 2190 2211 0 0 1 2199 2212 0 1 0 2198 2212 0 1 1 2196 2213 0 0 0 2197 2213 0 0 1 2191 2214 0 0 0 2199 2214 0 0 1 2208 2215 0 0 0 2210 2216 0 0 0 2210 2217 0 1 0 2202 2218 0 0 0 2212 2219 0 1 0 2203 2220 0 0 0 2214 2221 0 0 0 2209 2222 0 0 0 2205 2223 0 0 0 2213 2224 0 1 0 2211 2225 0 0 0 2211 2225 0 1 1 2204 2226 0 0 0 2213 2226 0 0 1 2214 2227 0 1 0 2201 2227 0 0 1 2212 2228 0 0 0 2207 2228 0 0 1 2200 2229 0 0 0 2206 2229 0 0 1 2215 2230 0 0 0 2222 2231 0 0 0 2229 2232 0 0 0 2228 2233 0 1 0 2223 2234 0 0 0 2226 2235 0 0 0 2229 2236 0 1 0 2225 2237 0 1 0 2226 2238 0 1 0 2227 2239 0 0 0 2225 2240 0 0 0 2219 2240 0 0 1 2224 2241 0 0 0 2221 2241 0 0 1 2217 2242 0 0 0 2228 2242 0 0 1 2218 2243 0 0 0 2227 2243 0 1 1 2220 2244 0 0 0 2216 2244 0 0 1 2239 2245 0 0 0 2242 2246 0 0 0 2237 2247 0 0 0 2238 2248 0 0 0 2244 2249 0 0 0 2234 2250 0 0 0 2242 2251 0 1 0 2232 2252 0 0 0 2233 2253 0 0 0 2240 2254 0 0 0 2236 2255 0 0 0 2241 2255 0 0 1 2231 2256 0 0 0 2244 2256 0 1 1 2235 2257 0 0 0 2230 2257 0 0 1 2240 2258 0 1 0 2241 2258 0 1 1 2243 2259 0 0 0 2243 2259 0 1 1 2252 2260 0 0 0 2254 2261 0 0 0 2250 2262 0 0 0 2253 2263 0 0 0 2246 2264 0 0 0 2257 2265 0 0 0 2251 2266 0 0 0 2247 2267 0 0 0 2258 2268 0 0 0 2256 2269 0 1 0 2249 2270 0 0 0 2258 2270 0 1 1 2245 2271 0 0 0 2257 2271 0 1 1 2259 2272 0 0 0 2248 2272 0 0 1 2255 2273 0 0 0 2255 2273 0 1 1 2259 2274 0 1 0 2256 2274 0 0 1 2270 2275 0 0 0 2262 2276 0 0 0 2263 2277 0 0 0 2274 2278 0 0 0 2264 2279 0 0 0 2260 2280 0 0 0 2272 2281 0 0 0 2269 2282 0 0 0 2270 2283 0 1 0 2266 2284 0 0 0 2261 2285 0 0 0 2271 2285 0 1 1 2268 2286 0 0 0 2267 2286 0 0 1 2272 2287 0 1 0 2265 2287 0 0 1 2271 2288 0 0 0 2273 2288 0 1 1 2273 2289 0 0 0 2274 2289 0 1 1 2280 2290 0 0 0 2288 2291 0 1 0 2276 2292 0 0 0 2288 2293 0 0 0 2285 2294 0 0 0 2285 2295 0 1 0 2284 2296 0 0 0 2289 2297 0 0 0 2282 2298 0 0 0 2275 2299 0 0 0 2286 2300 0 1 0 2279 2300 0 0 1 2281 2301 0 0 0 2286 2301 0 0 1 2289 2302 0 1 0 2287 2302 0 0 1 2277 2303 0 0 0 2278 2303 0 0 1 2283 2304 0 0 0 2287 2304 0 1 1 2302 2305 0 1 0 2295 2306 0 0 0 2291 2307 0 0 0 2301 2308 0 1 0 2303 2309 0 1 0 2300 2310 0 0 0 2290 2311 0 0 0 2301 2312 0 0 0 2293 2313 0 0 0 2302 2314 0 0 0 2292 2315 0 0 0 2297 2315 0 0 1 2294 2316 0 0 0 2296 2316 0 0 1 2303 2317 0 0 0 2304 2317 0 0 1 2304 2318 0 1 0 2299 2318 0 0 1 2300 2319 0 1 0 2298 2319 0 0 1 2311 2320 0 0 0 2316 2321 0 0 0 2317 2322 0 1 0 2318 2323 0 0 0 2316 2324 0 1 0 2312 2325 0 0 0 2317 2326 0 0 0 2319 2327 0 0 0 2310 2328 0 0 0 2315 2329 0 0 0 2306 2330 0 0 0 2318 2330 0 1 1 2309 2331 0 0 0 2308 2331 0 0 1 2307 2332 0 0 0 2315 2332 0 1 1 2314 2333 0 0 0 2305 2333 0 0 1 2313 2334 0 0 0 2319 2334 0 1 1 2328 2335 0 0 0 2320 2336 0 0 0 2332 2337 0 1 0 2334 2338 0 1 0 2332 2339 0 0 0 2330 2340 0 1 0 2329 2341 0 0 0 2333 2342 0 0 0 2333 2343 0 1 0 2327 2344 0 0 0 2322 2345 0 0 0 2326 2345 0 0 1 2321 2346 0 0 0 2324 2346 0 0 1 2330 2347 0 0 0 2334 2347 0 0 1 2331 2348 0 1 0 2323 2348 0 0 1 2325 2349 0 0 0 2331 2349 0 0 1 2344 2350 0 0 0 2342 2351 0 0 0 2349 2352 0 0 0 2346 2353 0 1 0 2336 2354 0 0 0 2345 2355 0 1 0 2340 2356 0 0 0 2341 2357 0 0 0 2338 2358 0 0 0 2339 2359 0 0 0 2345 2360 0 0 0 2348 2360 0 1 1 2343 2361 0 0 0 2349 2361 0 1 1 2347 2362 0 0 0 2337 2362 0 0 1 2347 2363 0 1 0 2346 2363 0 0 1 2335 2364 0 0 0 2348 2364 0 0 1 2358 2365 0 0 0 2360 2366 0 0 0 2354 2367 0 0 0 2364 2368 0 1 0 2361 2369 0 0 0 2357 2370 0 0 0 2355 2371 0 0 0 2351 2372 0 0 0 2364 2373 0 0 0 2350 2374 0 0 0 2359 2375 0 0 0 2361 2375 0 1 1 2353 2376 0 0 0 2362 2376 0 0 1 2363 2377 0 0 0 2363 2377 0 1 1 2352 2378 0 0 0 2362 2378 0 1 1 2356 2379 0 0 0 2360 2379 0 1 1 2375 2380 0 1 0 2367 2381 0 0 0 2371 2382 0 0 0 2377 2383 0 1 0 2373 2384 0 0 0 2366 2385 0 0 0 2374 2386 0 0 0 2372 2387 0 0 0 2365 2388 0 0 0 2368 2389 0 0 0 2378 2390 0 0 0 2378 2390 0 1 1 2379 2391 0 0 0 2376 2391 0 1 1 2375 2392 0 0 0 2377 2392 0 0 1 2379 2393 0 1 0 2369 2393 0 0 1 2370 2394 0 0 0 2376 2394 0 0 1 2386 2395 0 0 0 2380 2396 0 0 0 2391 2397 0 1 0 2387 2398 0 0 0 2385 2399 0 0 0 2392 2400 0 0 0 2393 2401 0 1 0 2390 2402 0 1 0 2393 2403 0 0 0 2390 2404 0 0 0 2391 2405 0 0 0 2392 2405 0 1 1 2384 2406 0 0 0 2388 2406 0 0 1 2383 2407 0 0 0 2394 2407 0 1 1 2394 2408 0 0 0 2389 2408 0 0 1 2381 2409 0 0 0 2382 2409 0 0 1 2408 2410 0 0 0 2406 2411 0 0 0 2401 2412 0 0 0 2409 2413 0 0 0 2407 2414 0 0 0 2409 2415 0 1 0 2397 2416 0 0 0 2396 2417 0 0 0 2400 2418 0 0 0 2408 2419 0 1 0 2405 2420 0 1 0 2398 2420 0 0 1 2404 2421 0 0 0 2399 2421 0 0 1 2405 2422 0 0 0 2402 2422 0 0 1 2407 2423 0 1 0 2403 2423 0 0 1 2395 2424 0 0 0 2406 2424 0 1 1 2424 2425 0 1 0 2421 2426 0 0 0 2423 2427 0 0 0 2416 2428 0 0 0 2420 2429 0 1 0 2411 2430 0 0 0 2410 2431 0 0 0 2414 2432 0 0 0 2418 2433 0 0 0 2420 2434 0 0 0 2417 2435 0 0 0 2413 2435 0 0 1 2419 2436 0 0 0 2424 2436 0 0 1 2412 2437 0 0 0 2421 2437 0 1 1 2422 2438 0 0 0 2422 2438 0 1 1 2415 2439 0 0 0 2423 2439 0 1 1 2436 2440 0 1 0 2439 2441 0 0 0 2435 2442 0 1 0 2437 2443 0 1 0 2432 2444 0 0 0 2435 2445 0 0 0 2429 2446 0 0 0 2434 2447 0 0 0 2439 2448 0 1 0 2428 2449 0 0 0 2426 2450 0 0 0 2433 2450 0 0 1 2437 2451 0 0 0 2431 2451 0 0 1 2436 2452 0 0 0 2438 2452 0 1 1 2425 2453 0 0 0 2427 2453 0 0 1 2430 2454 0 0 0 2438 2454 0 0 1 2443 2455 0 0 0 2453 2456 0 0 0 2444 2457 0 0 0 2452 2458 0 1 0 2450 2459 0 0 0 2449 2460 0 0 0 2448 2461 0 0 0 2453 2462 0 1 0 2452 2463 0 0 0 2442 2464 0 0 0 2451 2465 0 0 0 2446 2465 0 0 1 2440 2466 0 0 0 2441 2466 0 0 1 2454 2467 0 0 0 2450 2467 0 1 1 2445 2468 0 0 0 2447 2468 0 0 1 2454 2469 0 1 0 2451 2469 0 1 1 2467 2470 0 0 0 2467 2471 0 1 0 2463 2472 0 0 0 2465 2473 0 1 0 2458 2474 0 0 0 2466 2475 0 1 0 2469 2476 0 0 0 2455 2477 0 0 0 2469 2478 0 1 0 2460 2479 0 0 0 2468 2480 0 0 0 2459 2480 0 0 1 2465 2481 0 0 0 2457 2481 0 0 1 2468 2482 0 1 0 2456 2482 0 0 1 2464 2483 0 0 0 2462 2483 0 0 1 2461 2484 0 0 0 2466 2484 0 0 1 2476 2485 0 0 0 2482 2486 0 0 0 2484 2487 0 0 0 2477 2488 0 0 0 2483 2489 0 1 0 2482 2490 0 1 0 2478 2491 0 0 0 2481 2492 0 1 0 2470 2493 0 0 0 2479 2494 0 0 0 2473 2495 0 0 0 2480 2495 0 1 1 2484 2496 0 1 0 2483 2496 0 0 1 2480 2497 0 0 0 2475 2497 0 0 1 2471 2498 0 0 0 2474 2498 0 0 1 2472 2499 0 0 0 2481 2499 0 0 1 2491 2500 0 0 0 2499 2501 0 1 0 2495 2502 0 0 0 2497 2503 0 1 0 2498 2504 0 0 0 2489 2505 0 0 0 2493 2506 0 0 0 2495 2507 0 1 0 2496 2508 0 1 0 2487 2509 0 0 0 2486 2510 0 0 0 2497 2510 0 0 1 2485 2511 0 0 0 2496 2511 0 0 1 2490 2512 0 0 0 2488 2512 0 0 1 2498 2513 0 1 0 2494 2513 0 0 1 2499 2514 0 0 0 2492 2514 0 0 1 2511 2515 0 1 0 2504 2516 0 0 0 2500 2517 0 0 0 2501 2518 0 0 0 2508 2519 0 0 0 2511 2520 0 0 0 2506 2521 0 0 0 2502 2522 0 0 0 2507 2523 0 0 0 2513 2524 0 1 0 2514 2525 0 1 0 2512 2525 0 0 1 2513 2526 0 0 0 2510 2526 0 0 1 2514 2527 0 0 0 2505 2527 0 0 1 2509 2528 0 0 0 2510 2528 0 1 1 2503 2529 0 0 0 2512 2529 0 1 1 2522 2530 0 0 0 2529 2531 0 0 0 2528 2532 0 0 0 2527 2533 0 1 0 2516 2534 0 0 0 2521 2535 0 0 0 2525 2536 0 0 0 2528 2537 0 1 0 2519 2538 0 0 0 2518 2539 0 0 0 2529 2540 0 1 0 2525 2540 0 1 1 2520 2541 0 0 0 2526 2541 0 1 1 2523 2542 0 0 0 2527 2542 0 0 1 2515 2543 0 0 0 2517 2543 0 0 1 2526 2544 0 0 0 2524 2544 0 0 1 2542 2545 0 1 0 2530 2546 0 0 0 2540 2547 0 1 0 2537 2548 0 0 0 2538 2549 0 0 0 2540 2550 0 0 0 2542 2551 0 0 0 2543 2552 0 0 0 2535 2553 0 0 0 2533 2554 0 0 0 2536 2555 0 0 0 2541 2555 0 1 1 2541 2556 0 0 0 2544 2556 0 1 1 2532 2557 0 0 0 2544 2557 0 0 1 2534 2558 0 0 0 2539 2558 0 0 1 2531 2559 0 0 0 2543 2559 0 1 1 2558 2560 0 1 0 2554 2561 0 0 0 2551 2562 0 0 0 2549 2563 0 0 0 2557 2564 0 1 0 2559 2565 0 1 0 2558 2566 0 0 0 2555 2567 0 0 0 2552 2568 0 0 0 2556 2569 0 1 0 2546 2570 0 0 0 2548 2570 0 0 1 2555 2571 0 1 0 2550 2571 0 0 1 2559 2572 0 0 0 2553 2572 0 0 1 2557 2573 0 0 0 2545 2573 0 0 1 2547 2574 0 0 0 2556 2574 0 0 1 2571 2575 0 1 0 2574 2576 0 0 0 2568 2577 0 0 0 2566 2578 0 0 0 2572 2579 0 1 0 2570 2580 0 0 0 2561 2581 0 0 0 2562 2582 0 0 0 2570 2583 0 1 0 2572 2584 0 0 0 2565 2585 0 0 0 2574 2585 0 1 1 2563 2586 0 0 0 2569 2586 0 0 1 2567 2587 0 0 0 2573 2587 0 1 1 2564 2588 0 0 0 2573 2588 0 0 1 2560 2589 0 0 0 2571 2589 0 0 1 2589 2590 0 0 0 2585 2591 0 1 0 2589 2592 0 1 0 2588 2593 0 1 0 2587 2594 0 0 0 2583 2595 0 0 0 2580 2596 0 0 0 2588 2597 0 0 0 2575 2598 0 0 0 2586 2599 0 1 0 2581 2600 0 0 0 2582 2600 0 0 1 2576 2601 0 0 0 2584 2601 0 0 1 2586 2602 0 0 0 2587 2602 0 1 1 2578 2603 0 0 0 2585 2603 0 0 1 2577 2604 0 0 0 2579 2604 0 0 1 2594 2605 0 0 0 2601 2606 0 0 0 2602 2607 0 0 0 2603 2608 0 1 0 2604 2609 0 1 0 2591 2610 0 0 0 2603 2611 0 0 0 2602 2612 0 1 0 2600 2613 0 1 0 2592 2614 0 0 0 2599 2615 0 0 0 2590 2615 0 0 1 2600 2616 0 0 0 2596 2616 0 0 1 2597 2617 0 0 0 2604 2617 0 0 1 2601 2618 0 1 0 2593 2618 0 0 1 2595 2619 0 0 0 2598 2619 0 0 1 2618 2620 0 1 0 2611 2621 0 0 0 2619 2622 0 1 0 2612 2623 0 0 0 2616 2624 0 1 0 2607 2625 0 0 0 2617 2626 0 0 0 2617 2627 0 1 0 2616 2628 0 0 0 2614 2629 0 0 0 2615 2630 0 0 0 2609 2630 0 0 1 2618 2631 0 0 0 2610 2631 0 0 1 2608 2632 0 0 0 2605 2632 0 0 1 2606 2633 0 0 0 2615 2633 0 1 1 2613 2634 0 0 0 2619 2634 0 0 1 2630 2635 0 1 0 2622 2636 0 0 0 2626 2637 0 0 0 2629 2638 0 0 0 2623 2639 0 0 0 2620 2640 0 0 0 2631 2641 0 1 0 2625 2642 0 0 0 2632 2643 0 0 0 2631 2644 0 0 0 2633 2645 0 0 0 2633 2645 0 1 1 2621 2646 0 0 0 2630 2646 0 0 1 2632 2647 0 1 0 2634 2647 0 0 1 2634 2648 0 1 0 2627 2648 0 0 1 2624 2649 0 0 0 2628 2649 0 0 1 2640 2650 0 0 0 2639 2651 0 0 0 2644 2652 0 0 0 2636 2653 0 0 0 2643 2654 0 0 0 2647 2655 0 1 0 2635 2656 0 0 0 2649 2657 0 1 0 2646 2658 0 1 0 2637 2659 0 0 0 2649 2660 0 0 0 2638 2660 0 0 1 2648 2661 0 1 0 2645 2661 0 0 1 2646 2662 0 0 0 2645 2662 0 1 1 2648 2663 0 0 0 2641 2663 0 0 1 2647 2664 0 0 0 2642 2664 0 0 1 2654 2665 0 0 0 2663 2666 0 1 0 2659 2667 0 0 0 2661 2668 0 1 0 2662 2669 0 1 0 2653 2670 0 0 0 2662 2671 0 0 0 2663 2672 0 0 0 2656 2673 0 0 0 2658 2674 0 0 0 2650 2675 0 0 0 2661 2675 0 0 1 2660 2676 0 0 0 2657 2676 0 0 1 2655 2677 0 0 0 2664 2677 0 0 1 2651 2678 0 0 0 2652 2678 0 0 1 2664 2679 0 1 0 2660 2679 0 1 1 2677 2680 0 0 0 2666 2681 0 0 0 2674 2682 0 0 0 2667 2683 0 0 0 2673 2684 0 0 0 2676 2685 0 0 0 2677 2686 0 1 0 2675 2687 0 0 0 2665 2688 0 0 0 2675 2689 0 1 0 2678 2690 0 0 0 2679 2690 0 1 1 2676 2691 0 1 0 2678 2691 0 1 1 2670 2692 0 0 0 2669 2692 0 0 1 2671 2693 0 0 0 2668 2693 0 0 1 2672 2694 0 0 0 2679 2694 0 0 1 2685 2695 0 0 0 2693 2696 0 1 0 2690 2697 0 0 0 2687 2698 0 0 0 2682 2699 0 0 0 2684 2700 0 0 0 2690 2701 0 1 0 2694 2702 0 1 0 2683 2703 0 0 0 2681 2704 0 0 0 2691 2705 0 1 0 2693 2705 0 0 1 2691 2706 0 0 0 2692 2706 0 1 1 2688 2707 0 0 0 2692 2707 0 0 1 2694 2708 0 0 0 2680 2708 0 0 1 2686 2709 0 0 0 2689 2709 0 0 1 2707 2710 0 0 0 2695 2711 0 0 0 2706 2712 0 1 0 2705 2713 0 1 0 2696 2714 0 0 0 2701 2715 0 0 0 2699 2716 0 0 0 2700 2717 0 0 0 2709 2718 0 0 0 2706 2719 0 0 0 2707 2720 0 1 0 2698 2720 0 0 1 2705 2721 0 0 0 2708 2721 0 0 1 2704 2722 0 0 0 2703 2722 0 0 1 2702 2723 0 0 0 2697 2723 0 0 1 2708 2724 0 1 0 2709 2724 0 1 1 2713 2725 0 0 0 2722 2726 0 1 0 2717 2727 0 0 0 2720 2728 0 0 0 2716 2729 0 0 0 2719 2730 0 0 0 2724 2731 0 0 0 2712 2732 0 0 0 2714 2733 0 0 0 2723 2734 0 0 0 2718 2735 0 0 0 2715 2735 0 0 1 2724 2736 0 1 0 2711 2736 0 0 1 2723 2737 0 1 0 2722 2737 0 0 1 2720 2738 0 1 0 2710 2738 0 0 1 2721 2739 0 0 0 2721 2739 0 1 1 2733 2740 0 0 0 2739 2741 0 0 0 2735 2742 0 1 0 2727 2743 0 0 0 2725 2744 0 0 0 2731 2745 0 0 0 2738 2746 0 1 0 2737 2747 0 1 0 2728 2748 0 0 0 2732 2749 0 0 0 2735 2750 0 0 0 2729 2750 0 0 1 2730 2751 0 0 0 2736 2751 0 1 1 2737 2752 0 0 0 2736 2752 0 0 1 2726 2753 0 0 0 2739 2753 0 1 1 2738 2754 0 0 0 2734 2754 0 0 1 2750 2755 0 1 0 2741 2756 0 0 0 2752 2757 0 1 0 2750 2758 0 0 0 2752 2759 0 0 0 2746 2760 0 0 0 2740 2761 0 0 0 2753 2762 0 1 0 2751 2763 0 1 0 2749 2764 0 0 0 2743 2765 0 0 0 2744 2765 0 0 1 2742 2766 0 0 0 2747 2766 0 0 1 2751 2767 0 0 0 2753 2767 0 0 1 2745 2768 0 0 0 2754 2768 0 1 1 2754 2769 0 0 0 2748 2769 0 0 1 2765 2770 0 1 0 2768 2771 0 0 0 2760 2772 0 0 0 2756 2773 0 0 0 2766 2774 0 0 0 2769 2775 0 1 0 2765 2776 0 0 0 2764 2777 0 0 0 2763 2778 0 0 0 2767 2779 0 0 0 2757 2780 0 0 0 2769 2780 0 0 1 2755 2781 0 0 0 2762 2781 0 0 1 2759 2782 0 0 0 2766 2782 0 1 1 2761 2783 0 0 0 2768 2783 0 1 1 2767 2784 0 1 0 2758 2784 0 0 1 2784 2785 0 0 0 2783 2786 0 0 0 2780 2787 0 1 0 2770 2788 0 0 0 2781 2789 0 1 0 2784 2790 0 1 0 2780 2791 0 0 0 2778 2792 0 0 0 2771 2793 0 0 0 2781 2794 0 0 0 2782 2795 0 1 0 2774 2795 0 0 1 2773 2796 0 0 0 2772 2796 0 0 1 2776 2797 0 0 0 2775 2797 0 0 1 2777 2798 0 0 0 2783 2798 0 1 1 2782 2799 0 0 0 2779 2799 0 0 1 2799 2800 0 0 0 2788 2801 0 0 0 2798 2802 0 1 0 2798 2803 0 0 0 2794 2804 0 0 0 2795 2805 0 1 0 2796 2806 0 0 0 2797 2807 0 0 0 2797 2808 0 1 0 2796 2809 0 1 0 2795 2810 0 0 0 2792 2810 0 0 1 2790 2811 0 0 0 2786 2811 0 0 1 2789 2812 0 0 0 2785 2812 0 0 1 2799 2813 0 1 0 2791 2813 0 0 1 2793 2814 0 0 0 2787 2814 0 0 1 2807 2815 0 0 0 2811 2816 0 0 0 2800 2817 0 0 0 2803 2818 0 0 0 2810 2819 0 1 0 2809 2820 0 0 0 2811 2821 0 1 0 2808 2822 0 0 0 2812 2823 0 1 0 2813 2824 0 1 0 2802 2825 0 0 0 2814 2825 0 1 1 2801 2826 0 0 0 2805 2826 0 0 1 2806 2827 0 0 0 2813 2827 0 0 1 2812 2828 0 0 0 2810 2828 0 0 1 2804 2829 0 0 0 2814 2829 0 0 1 2828 2830 0 1 0 2822 2831 0 0 0 2825 2832 0 1 0 2815 2833 0 0 0 2816 2834 0 0 0 2828 2835 0 0 0 2829 2836 0 0 0 2817 2837 0 0 0 2829 2838 0 1 0 2821 2839 0 0 0 2820 2840 0 0 0 2818 2840 0 0 1 2827 2841 0 1 0 2827 2841 0 0 1 2825 2842 0 0 0 2819 2842 0 0 1 2823 2843 0 0 0 2824 2843 0 0 1 2826 2844 0 1 0 2826 2844 0 0 1 2835 2845 0 0 0 2841 2846 0 1 0 2843 2847 0 0 0 2844 2848 0 0 0 2840 2849 0 1 0 2832 2850 0 0 0 2834 2851 0 0 0 2842 2852 0 1 0 2836 2853 0 0 0 2830 2854 0 0 0 2843 2855 0 1 0 2831 2855 0 0 1 2844 2856 0 1 0 2838 2856 0 0 1 2839 2857 0 0 0 2833 2857 0 0 1 2841 2858 0 0 0 2840 2858 0 0 1 2842 2859 0 0 0 2837 2859 0 0 1 2858 2860 0 0 0 2847 2861 0 0 0 2846 2862 0 0 0 2850 2863 0 0 0 2856 2864 0 1 0 2851 2865 0 0 0 2854 2866 0 0 0 2849 2867 0 0 0 2852 2868 0 0 0 2857 2869 0 0 0 2845 2870 0 0 0 2858 2870 0 1 1 2856 2871 0 0 0 2859 2871 0 0 1 2859 2872 0 1 0 2855 2872 0 1 1 2853 2873 0 0 0 2848 2873 0 0 1 2855 2874 0 0 0 2857 2874 0 1 1 2860 2875 0 0 0 2865 2876 0 0 0 2864 2877 0 0 0 2870 2878 0 0 0 2869 2879 0 0 0 2871 2880 0 0 0 2867 2881 0 0 0 2872 2882 0 1 0 2870 2883 0 1 0 2866 2884 0 0 0 2862 2885 0 0 0 2873 2885 0 0 1 2874 2886 0 0 0 2863 2886 0 0 1 2872 2887 0 0 0 2873 2887 0 1 1 2874 2888 0 1 0 2861 2888 0 0 1 2871 2889 0 1 0 2868 2889 0 0 1 2875 2890 0 0 0 2885 2891 0 0 0 2882 2892 0 0 0 2887 2893 0 1 0 2879 2894 0 0 0 2877 2895 0 0 0 2888 2896 0 1 0 2878 2897 0 0 0 2885 2898 0 1 0 2883 2899 0 0 0 2881 2900 0 0 0 2886 2900 0 1 1 2887 2901 0 0 0 2889 2901 0 0 1 2880 2902 0 0 0 2886 2902 0 0 1 2876 2903 0 0 0 2889 2903 0 1 1 2884 2904 0 0 0 2888 2904 0 0 1 2896 2905 0 0 0 2902 2906 0 1 0 2891 2907 0 0 0 2899 2908 0 0 0 2892 2909 0 0 0 2902 2910 0 0 0 2900 2911 0 1 0 2895 2912 0 0 0 2901 2913 0 0 0 2901 2914 0 1 0 2894 2915 0 0 0 2897 2915 0 0 1 2904 2916 0 1 0 2904 2916 0 0 1 2903 2917 0 0 0 2893 2917 0 0 1 2900 2918 0 0 0 2898 2918 0 0 1 2890 2919 0 0 0 2903 2919 0 1 1 2917 2920 0 1 0 2918 2921 0 1 0 2915 2922 0 0 0 2906 2923 0 0 0 2915 2924 0 1 0 2907 2925 0 0 0 2913 2926 0 0 0 2910 2927 0 0 0 2908 2928 0 0 0 2905 2929 0 0 0 2918 2930 0 0 0 2919 2930 0 1 1 2916 2931 0 0 0 2914 2931 0 0 1 2909 2932 0 0 0 2912 2932 0 0 1 2911 2933 0 0 0 2916 2933 0 1 1 2919 2934 0 0 0 2917 2934 0 0 1 2927 2935 0 0 0 2929 2936 0 0 0 2928 2937 0 0 0 2921 2938 0 0 0 2925 2939 0 0 0 2931 2940 0 1 0 2933 2941 0 0 0 2931 2942 0 0 0 2932 2943 0 1 0 2924 2944 0 0 0 2922 2945 0 0 0 2934 2945 0 1 1 2926 2946 0 0 0 2930 2946 0 0 1 2930 2947 0 1 0 2932 2947 0 0 1 2920 2948 0 0 0 2923 2948 0 0 1 2933 2949 0 1 0 2934 2949 0 0 1 2949 2950 0 1 0 2948 2951 0 0 0 2947 2952 0 1 0 2946 2953 0 0 0 2938 2954 0 0 0 2944 2955 0 0 0 2949 2956 0 0 0 2939 2957 0 0 0 2943 2958 0 0 0 2935 2959 0 0 0 2947 2960 0 0 0 2941 2960 0 0 1 2948 2961 0 1 0 2945 2961 0 0 1 2940 2962 0 0 0 2945 2962 0 1 1 2937 2963 0 0 0 2946 2963 0 1 1 2936 2964 0 0 0 2942 2964 0 0 1 2962 2965 0 1 0 2955 2966 0 0 0 2951 2967 0 0 0 2963 2968 0 0 0 2957 2969 0 0 0 2950 2970 0 0 0 2954 2971 0 0 0 2964 2972 0 1 0 2953 2973 0 0 0 2961 2974 0 1 0 2962 2975 0 0 0 2960 2975 0 1 1 2956 2976 0 0 0 2958 2976 0 0 1 2952 2977 0 0 0 2960 2977 0 0 1 2959 2978 0 0 0 2964 2978 0 0 1 2961 2979 0 0 0 2963 2979 0 1 1 2976 2980 0 1 0 2972 2981 0 0 0 2977 2982 0 1 0 2968 2983 0 0 0 2975 2984 0 1 0 2979 2985 0 0 0 2976 2986 0 0 0 2978 2987 0 1 0 2965 2988 0 0 0 2971 2989 0 0 0 2978 2990 0 0 0 2969 2990 0 0 1 2974 2991 0 0 0 2967 2991 0 0 1 2975 2992 0 0 0 2970 2992 0 0 1 2973 2993 0 0 0 2966 2993 0 0 1 2977 2994 0 0 0 2979 2994 0 1 1 2991 2995 0 1 0 2988 2996 0 0 0 2981 2997 0 0 0 2993 2998 0 0 0 2984 2999 0 0 0 2983 3000 0 0 0 2991 3001 0 0 0 2990 3002 0 1 0 2994 3003 0 0 0 2990 3004 0 0 0 2986 3005 0 0 0 2992 3005 0 1 1 2985 3006 0 0 0 2989 3006 0 0 1 2987 3007 0 0 0 2993 3007 0 1 1 2982 3008 0 0 0 2980 3008 0 0 1 2992 3009 0 0 0 2994 3009 0 1 1 3009 3010 0 1 0 2995 3011 0 0 0 3006 3012 0 1 0 3005 3013 0 0 0 3005 3014 0 1 0 3007 3015 0 1 0 3004 3016 0 0 0 3006 3017 0 0 0 3008 3018 0 0 0 3003 3019 0 0 0 3008 3020 0 1 0 2998 3020 0 0 1 2997 3021 0 0 0 3007 3021 0 0 1 3002 3022 0 0 0 2999 3022 0 0 1 3001 3023 0 0 0 2996 3023 0 0 1 3000 3024 0 0 0 3009 3024 0 0 1 3019 3025 0 0 0 3025 7 0 0 0 3013 3026 0 0 0 3026 13 0 0 0 3023 3027 0 0 0 3027 23 0 0 0 3010 3028 0 0 0 3028 19 0 0 0 3020 3029 0 1 0 3029 35 0 0 0 3022 3030 0 1 0 3030 29 0 0 0 3016 3031 0 0 0 3031 1 0 0 0 3021 3032 0 0 0 3032 11 0 0 0 3018 3033 0 0 0 3033 33 0 0 0 3024 3034 0 0 0 3034 17 0 0 0 3022 3035 0 0 0 3035 5 0 0 0 3012 3035 0 0 1 3035 21 0 1 0 3017 3036 0 0 0 3036 37 0 0 0 3011 3036 0 0 1 3036 27 0 1 0 3015 3037 0 0 0 3037 3 0 0 0 3021 3037 0 1 1 3037 15 0 1 0 3014 3038 0 0 0 3038 9 0 0 0 3023 3038 0 1 1 3038 25 0 1 0 3024 3039 0 1 0 3039 39 0 0 0 3020 3039 0 0 1 3039 31 0 1 0 0 0 0 0 20 0 0 0 0 0 0 1 16 1 0 -6 1 q 1 0 0 0 0 1 16 -7 1 q 1 0 1 0 2 3 16 -8 1 q 1 0 2 0 4 5 16 -9 1 q 1 0 3 0 6 7 16 -10 1 q 1 0 4 0 8 9 16 -11 1 q 1 0 5 0 10 11 16 -12 1 q 1 0 6 0 12 13 16 -13 1 q 1 0 7 0 14 15 16 -14 1 q 1 0 8 0 16 17 16 -15 1 q 1 0 9 0 18 19 16 -16 1 q 1 0 10 0 20 21 16 -17 1 q 1 0 11 0 22 23 16 -18 1 q 1 0 12 0 24 25 16 -19 1 q 1 0 13 0 26 27 16 -20 1 q 1 0 14 0 28 29 16 -21 1 q 1 0 15 0 30 31 16 -22 1 q 1 0 16 0 32 33 16 -23 1 q 1 0 17 0 34 35 16 -24 1 q 1 0 18 0 36 37 16 -25 1 q 1 0 19 0 38 39 \ No newline at end of file diff --git a/tket/conanfile.py b/tket/conanfile.py index c21629af57..370cb07e28 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.63" + version = "1.2.64" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" diff --git a/tket/src/Circuit/CMakeLists.txt b/tket/src/Circuit/CMakeLists.txt deleted file mode 100644 index e69de29bb2..0000000000 From 02b7a623bd960d553ea0d71430df19e141df7e70 Mon Sep 17 00:00:00 2001 From: CalMacCQ <93673602+CalMacCQ@users.noreply.github.com> Date: Thu, 2 Nov 2023 19:03:33 +0000 Subject: [PATCH 17/36] Add pytket extensions index page to pytket API docs (#1105) * add extensions index to API docs * remove duplicate extensions link * Solve docs build failure caused by duplicate link warnings * Use smaller text for sub-headings * Put QuantinuumBackend QPU first and update devices * some cleanup * remove duplicate links from sidebar --- pytket/docs/extensions_index.rst | 159 +++++++++++++++++++++++++++++++ pytket/docs/index.rst | 5 +- 2 files changed, 161 insertions(+), 3 deletions(-) create mode 100644 pytket/docs/extensions_index.rst diff --git a/pytket/docs/extensions_index.rst b/pytket/docs/extensions_index.rst new file mode 100644 index 0000000000..8c26c94475 --- /dev/null +++ b/pytket/docs/extensions_index.rst @@ -0,0 +1,159 @@ +pytket extensions +================= + +The pytket extensions are separate python modules which allow pytket to interface with backends from a range of providers including quantum devices from Quantinuum and IBM. +In pytket a ``Backend`` represents a connection to a QPU (Quantum Processing Unit) or simulator for processing quantum circuits. One can also access additional quantum devices and simulators via the cloud through the extensions for `Azure `_ and `Braket `_ . + +Additionally, the extensions allow pytket to cross-compile circuits from different quantum computing libraries with the extensions for `qiskit `_, `cirq `_ and `pennylane `_ . This enables pytket's compilation features to be used in conjunction with other software tools. + +The additional modules can be installed adding the extension name to the installation command for pytket. For example pytket-quantinuum can be installed by running + +:: + + pip install pytket-quantinuum + +The types of ``Backend`` available in pytket are the following + +Types of Backend +---------------- + +* **QPUs** - These are real quantum computers that return shots based results. E.g the `QuantinuumBackend `_ . +* **Cloud Access** - Cloud backends allow pytket to interface with cloud platforms to access additional QPUs and simulators. E.g `BraketBackend `_ . +* **Emulators** - These classically simulate a circuit and produce shots based results. Sometimes emulators use a noise model and have connectivity constraints to emulate real QPUs. E.g. `IBMQEmulatorBackend`_ +* **Statevector Simulators** - Calculates the pure quantum state prepared by a circuit returning a vector/ndarray. Examples of statevector simulators are the `ForestStateBackend`_ and the `AerStateBackend`_. +* **Unitary Simulators** - Unitary simulators calculate the unitary operator that is applied by a circuit. A unitary matrix/ndarray is returned `AerUnitaryBackend`_ is an example of such a simulator. +* **Density Matrix Simulators** - These simulators compute the density matrix prepared by a circuit. The result can be a statistical mixture of states in contrast to statevector simulation. E.g. `CirqDensityMatrixSampleBackend`_ +* **Other specialised simulators** - There are extensions for simulating specific types of circuit. For instance the `SimplexBackend`_ is designed to simulate Clifford circuits. + +A full list of available pytket backends is shown below. + +QPUs +---- + +`QuantinuumBackend `_ +- Interface to a remote Quantinuum device or simulator. There are currently two Quantinuum devices offered (H1-1 and H2-1). + +`IBMQBackend `_ +- A backend for running circuits on remote IBMQ devices. + +`IonQBackend `_ +- A backend for running circuits on remote IONQ devices. + +`ForestBackend `_ +- A backend for running circuits on remote Rigetti devices. + +`AQTBackend `_ +- Interface to an AQT device or simulator. + +`IQMBackend `_ +- Interface to an IQM device or simulator. + +Cloud Access +------------ + +`AzureBackend `_ +- Backend for running circuits remotely using Azure Quantum devices and simulators. + +`BraketBackend `_ +- Interface to Amazon Braket service. + +Emulators +--------- + +`IBMQEmulatorBackend`_ - A backend which uses the `AerBackend `_ to emulate the behavior of IBMQBackend. + +`QuantinuumBackend `_ +- The QuantinuumBackend has two available emulators namely H1-1E and H1-2E. These are device specific emulators for the H1-1 and H1-2 devices. These emualtors run remotely on a server. + +Statevector Simulators +---------------------- + +`CirqStateSampleBackend `_ +- Backend for Cirq statevector simulator sampling. + +`CirqStateSimBackend `_ +- Backend for Cirq statevector simulator state return. + +`AerStateBackend`_ - Backend for running simulations on the Qiskit Aer Statevector simulator. + +`ForestStateBackend`_ - State-based interface to a Rigetti device. + +`ProjectQBackend `_ +- Backend for running statevector simulations on the ProjectQ simulator. + +Unitary Simulators +------------------ + +`AerUnitaryBackend`_ - Backend for running simulations on the Qiskit Aer unitary simulator. + +Density Matrix Simulators +------------------------- + +`CirqDensityMatrixSampleBackend`_ +- Backend for Cirq density matrix simulator sampling. + +`CirqDensityMatrixSimBackend `_ +- Backend for Cirq density matrix simulator density_matrix return. + +Clifford Simulators +------------------- + +`CirqCliffordSampleBackend `_ +- Backend for Cirq Clifford simulator sampling. + +`CirqCliffordSimBackend `_ +- Backend for Cirq Clifford simulator state return. + +`SimplexBackend`_- Backend for simulating Clifford circuits using pysimplex. + +`StimBackend `_ +- Backend for simulating Clifford circuits using Stim. + +Other +----- + +`AerBackend `_ +- Backend for running simulations on the Qiskit Aer QASM simulator. This simulator is noiseless by default but can take a user defined ``NoiseModel``. + +`QulacsBackend `_ +- Backend for running simulations of variational quantum circuits on the Qulacs simulator. + +`QsharpSimulatorBackend `_ +- Backend for simulating a circuit using the QDK. + +`QsharpToffoliSimulatorBackend `_ +- Backend for simulating a Toffoli circuit using the QDK. + + +.. toctree:: + :caption: Extensions: + :maxdepth: 0 + + pytket-aqt + pytket-braket + pytket-cirq + pytket-ionq + pytket-iqm + pytket-pennylane + pytket-projectq + pytket-pyquil + pytket-pysimplex + pytket-pyzx + pytket-qir + pytket-qiskit + pytket-qsharp + pytket-quantinuum + pytket-cutensornet + pytket-qulacs + pytket-qujax + pytket-stim + + +.. _pytket: https://tket.quantinuum.com/tket/pytket/api/ +.. _Quantinuum: https://quantinuum.com +.. _IBMQEmulatorBackend: https://tket.quantinuum.com/extensions/pytket-qiskit/api/api.html#pytket.extensions.qiskit.IBMQEmulatorBackend +.. _AerStateBackend: https://tket.quantinuum.com/extensions/pytket-qiskit/api.html#pytket.extensions.qiskit.AerStateBackend +.. _ForestStateBackend: https://tket.quantinuum.com/extensions/pytket-pyquil/api/api.html#pytket.extensions.pyquil.ForestStateBackend +.. _AerUnitaryBackend: https://tket.quantinuum.com/extensions/pytket-qiskit/api/api.html#pytket.extensions.qiskit.AerUnitaryBackend +.. _CirqDensityMatrixSampleBackend: https://tket.quantinuum.com/extensions/pytket-cirq/api/api.html#pytket.extensions.cirq.CirqDensityMatrixSampleBackend +.. _SimplexBackend: https://tket.quantinuum.com/extensions/pytket-simplex/api.html#pytket.extensions.pysimplex.SimplexBackend \ No newline at end of file diff --git a/pytket/docs/index.rst b/pytket/docs/index.rst index 2cdd6e701e..57f3761305 100644 --- a/pytket/docs/index.rst +++ b/pytket/docs/index.rst @@ -81,14 +81,13 @@ Licensed under the `Apache 2 License - Extensions + extensions_index.rst Example notebooks .. toctree:: From ff68b3e07fb7bf48c001fae719e0a3087e5344ac Mon Sep 17 00:00:00 2001 From: Will Simmons Date: Tue, 7 Nov 2023 10:43:57 +0000 Subject: [PATCH 18/36] Unitary Synthesis of ChoiMixTableau for Diagonalisation (#941) * Copy files over from refactor/pauligraph * Make identity pauli gadget still have correct qubits * Remove unused line * Rewrite ChoiMixTableauConverter to make easier to follow * Combine diagonalisation steps * Remove separate methods for solving post, init, and collapse spaces * Split method into sections again for readability * Rewrite header description * Bump tket version * Remove unused function * Add tests for coverage * Fix failing coverage tests * Make gadget synthesis only use CXs to comply with test analysis * Synthesising gadget pairs with a consistent CXConfigType varies performance figures * Apply suggestions from code review Co-authored-by: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> * Update tket/src/Converters/ChoiMixTableauConverters.cpp Co-authored-by: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> * Implement most reviewer feedback * Bump tket version number * Doxygen error and formatting * Initial implementation attempt * Solve a bunch of linker errors * Test comparators * Test multiplications * Tested hashing * Refactor Utils, OpType, Ops, Gate, Clifford * Refactored source and tests; some tests fail * Fix test errors * Binders compile, failing json validation * Attempt to make serialisation backwards compatible * Fix remaining serialisation bugs * Fixed it! * Rename PauliStrings2 to PauliTensor * Remove old PauliStrings * Rename test_PauliString2 * Rename file references * File references in CMakeLists * Bump tket version number * Run formatter * Fix binder errors * Compiler errors on other OSs on CI * More merge conflicts from deleted files * Fix stub changes * Test coverage * Fix comparison issue * Remove commented out code * Implement reviewer feedback * Bump tket version numbers * Docs formatting error on CI * Retain fix from merge conflict * Fix merge bugs * Error in merge * Bump tket version number * Missing TKET_ASSERTs from reviewer suggestions * Test Z,X,H methods on UnitaryTableau for coverage * Mixed initialisation test didn't actually use them * Remove unused function --------- Co-authored-by: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> --- pytket/conanfile.py | 2 +- pytket/tests/ansatz_sequence_test.py | 6 +- tket/CMakeLists.txt | 2 - tket/conanfile.py | 2 +- tket/include/tket/Circuit/CircUtils.hpp | 26 +- tket/include/tket/Circuit/PauliExpBoxes.hpp | 42 + tket/include/tket/Clifford/ChoiMixTableau.hpp | 21 +- .../tket/Clifford/SymplecticTableau.hpp | 41 +- tket/include/tket/Clifford/UnitaryTableau.hpp | 12 + tket/include/tket/Converters/Converters.hpp | 83 +- tket/include/tket/Converters/PauliGadget.hpp | 83 -- .../tket/Diagonalisation/Diagonalisation.hpp | 39 +- tket/src/Circuit/CircUtils.cpp | 206 +-- tket/src/Circuit/PauliExpBoxes.cpp | 92 +- tket/src/Clifford/ChoiMixTableau.cpp | 179 +-- tket/src/Clifford/SymplecticTableau.cpp | 247 ++-- tket/src/Clifford/UnitaryTableau.cpp | 212 ++- .../Converters/ChoiMixTableauConverters.cpp | 1211 +++++++++-------- tket/src/Converters/PauliGadget.cpp | 381 ------ tket/src/Converters/PauliGraphConverters.cpp | 1 - .../Converters/UnitaryTableauConverters.cpp | 44 +- tket/src/Diagonalisation/Diagonalisation.cpp | 406 ++++++ .../src/Transformations/PauliOptimisation.cpp | 8 +- tket/test/CMakeLists.txt | 1 + tket/test/src/test_ChoiMixTableau.cpp | 389 +++++- tket/test/src/test_Diagonalisation.cpp | 124 ++ tket/test/src/test_PauliGraph.cpp | 20 +- tket/test/src/test_PhaseGadget.cpp | 5 +- tket/test/src/test_UnitaryTableau.cpp | 134 ++ 29 files changed, 2464 insertions(+), 1555 deletions(-) delete mode 100644 tket/include/tket/Converters/PauliGadget.hpp delete mode 100644 tket/src/Converters/PauliGadget.cpp create mode 100644 tket/test/src/test_Diagonalisation.cpp diff --git a/pytket/conanfile.py b/pytket/conanfile.py index 139dba5197..9b3546cf1f 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,7 +32,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.64@tket/stable") + self.requires("tket/1.2.65@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("tkassert/0.3.3@tket/stable") diff --git a/pytket/tests/ansatz_sequence_test.py b/pytket/tests/ansatz_sequence_test.py index 7dd1825954..4406ace0e8 100644 --- a/pytket/tests/ansatz_sequence_test.py +++ b/pytket/tests/ansatz_sequence_test.py @@ -88,9 +88,9 @@ def test_nontrivial_sequence() -> None: GraphColourMethod.Exhaustive: (3, 28, 20, 19), }, PauliPartitionStrat.NonConflictingSets: { - GraphColourMethod.LargestFirst: (6, 28, 28, 28), - GraphColourMethod.Lazy: (6, 28, 28, 26), - GraphColourMethod.Exhaustive: (6, 28, 28, 26), + GraphColourMethod.LargestFirst: (6, 28, 28, 26), + GraphColourMethod.Lazy: (6, 28, 28, 28), + GraphColourMethod.Exhaustive: (6, 28, 28, 28), }, } diff --git a/tket/CMakeLists.txt b/tket/CMakeLists.txt index aaa4497799..958ea72490 100644 --- a/tket/CMakeLists.txt +++ b/tket/CMakeLists.txt @@ -222,7 +222,6 @@ target_sources(tket src/ZX/MBQCRewrites.cpp src/ZX/ZXRWSequences.cpp src/Converters/ChoiMixTableauConverters.cpp - src/Converters/PauliGadget.cpp src/Converters/PauliGraphConverters.cpp src/Converters/Gauss.cpp src/Converters/PhasePoly.cpp @@ -373,7 +372,6 @@ target_sources(tket include/tket/ZX/ZXGenerator.hpp include/tket/Converters/Converters.hpp include/tket/Converters/Gauss.hpp - include/tket/Converters/PauliGadget.hpp include/tket/Converters/PhasePoly.hpp include/tket/Converters/UnitaryTableauBox.hpp include/tket/Placement/NeighbourPlacements.hpp diff --git a/tket/conanfile.py b/tket/conanfile.py index 370cb07e28..55ed429a6f 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.64" + version = "1.2.65" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" diff --git a/tket/include/tket/Circuit/CircUtils.hpp b/tket/include/tket/Circuit/CircUtils.hpp index c9706161ac..4acf5e30d4 100644 --- a/tket/include/tket/Circuit/CircUtils.hpp +++ b/tket/include/tket/Circuit/CircUtils.hpp @@ -111,13 +111,13 @@ std::pair decompose_2cx_DV(const Eigen::Matrix4cd& U); * Construct a phase gadget * * @param n_qubits number of qubits - * @param t phase parameter + * @param angle phase parameter * @param cx_config CX configuration * * @return phase gadget implementation wrapped in a ConjugationBox */ Circuit phase_gadget( - unsigned n_qubits, const Expr& t, + unsigned n_qubits, const Expr& angle, CXConfigType cx_config = CXConfigType::Snake); /** @@ -127,13 +127,29 @@ Circuit phase_gadget( * \f$ e^{-\frac12 i \pi t \sigma_0 \otimes \sigma_1 \otimes \cdots} \f$ * where \f$ \sigma_i \in \{I,X,Y,Z\} \f$ are the Pauli operators. * - * @param paulis Pauli operators - * @param t angle in half-turns + * @param paulis Pauli operators; coefficient gives rotation angle in half-turns * @param cx_config CX configuration * @return Pauli gadget implementation wrapped in a ConjugationBox */ Circuit pauli_gadget( - const std::vector& paulis, const Expr& t, + SpSymPauliTensor paulis, CXConfigType cx_config = CXConfigType::Snake); + +/** + * Construct a circuit realising a pair of Pauli gadgets with the fewest + * two-qubit gates. + * + * The returned circuit implements the unitary e^{-i pi angle1 paulis1 / 2} + * e^{-i pi angle0 paulis0 / 2}, i.e. a gadget of angle0 about paulis0 followed + * by a gadget of angle1 about paulis1. + * + * @param paulis0 Pauli operators for first gadget; coefficient gives rotation + * angle in half-turns + * @param paulis1 Pauli operators for second gadget; coefficient gives rotation + * angle in half-turns + * @param cx_config CX configuration + */ +Circuit pauli_gadget_pair( + SpSymPauliTensor paulis0, SpSymPauliTensor paulis1, CXConfigType cx_config = CXConfigType::Snake); /** diff --git a/tket/include/tket/Circuit/PauliExpBoxes.hpp b/tket/include/tket/Circuit/PauliExpBoxes.hpp index 78dc171ea3..2e0180c5b9 100644 --- a/tket/include/tket/Circuit/PauliExpBoxes.hpp +++ b/tket/include/tket/Circuit/PauliExpBoxes.hpp @@ -202,4 +202,46 @@ class PauliExpCommutingSetBox : public Box { CXConfigType cx_config_; }; +/** + * Constructs a PauliExpBox for a single pauli gadget and appends it to a + * circuit. + * + * @param circ The circuit to append the box to + * @param pauli The pauli operator of the gadget; coefficient gives the rotation + * angle in half-turns + * @param cx_config The CX configuration to be used during synthesis + */ +void append_single_pauli_gadget_as_pauli_exp_box( + Circuit &circ, const SpSymPauliTensor &pauli, CXConfigType cx_config); + +/** + * Constructs a PauliExpPairBox for a pair of pauli gadgets and appends it to a + * circuit. The pauli gadgets may or may not commute, so the ordering matters. + * + * @param circ The circuit to append the box to + * @param pauli0 The pauli operator of the first gadget; coefficient gives the + * rotation angle in half-turns + * @param pauli1 The pauli operator of the second gadget; coefficient gives the + * rotation angle in half-turns + * @param cx_config The CX configuration to be used during synthesis + */ +void append_pauli_gadget_pair_as_box( + Circuit &circ, const SpSymPauliTensor &pauli0, + const SpSymPauliTensor &pauli1, CXConfigType cx_config); + +/** + * Constructs a PauliExpCommutingSetBox for a set of mutually commuting pauli + * gadgets and appends it to a circuit. As the pauli gadgets all commute, the + * ordering does not matter semantically, but may yield different synthesised + * circuits. + * + * @param circ The circuit to append the box to + * @param gadgets Description of the pauli gadgets; coefficients give the + * rotation angles in half-turns + * @param cx_config The CX configuration to be used during synthesis + */ +void append_commuting_pauli_gadget_set_as_box( + Circuit &circ, const std::list &gadgets, + CXConfigType cx_config); + } // namespace tket diff --git a/tket/include/tket/Clifford/ChoiMixTableau.hpp b/tket/include/tket/Clifford/ChoiMixTableau.hpp index 1a3a8dae91..96c1483dca 100644 --- a/tket/include/tket/Clifford/ChoiMixTableau.hpp +++ b/tket/include/tket/Clifford/ChoiMixTableau.hpp @@ -45,7 +45,8 @@ class ChoiMixTableau { * When mapped to a sparse readable representation, independent * SpPauliStabiliser objects are used for each segment, so we no longer expect * their individual phases to be +-1, instead only requiring this on their - * product. + * product. get_row() will automatically transpose the input segment term so + * it is presented as RxS s.t. SCR = C. * * Columns of the tableau are indexed by pair of Qubit id and a tag to * distinguish input vs output. Rows are not maintained in any particular @@ -93,6 +94,7 @@ class ChoiMixTableau { * Construct a tableau directly from its rows. * Each row is represented as a product of SpPauliStabilisers where the first * is over the input qubits and the second is over the outputs. + * A row RxS is a pair s.t. SCR = C */ explicit ChoiMixTableau(const std::list& rows); /** @@ -122,13 +124,23 @@ class ChoiMixTableau { * Get the number of boundaries representing outputs from the process. */ unsigned get_n_outputs() const; + /** + * Get all qubit names present in the input segment. + */ + qubit_vector_t input_qubits() const; + /** + * Get all qubit names present in the output segment. + */ + qubit_vector_t output_qubits() const; /** - * Read off a row as a Pauli string + * Read off a row as a Pauli string. + * Returns a pair of Pauli strings RxS such that SCR = C */ row_tensor_t get_row(unsigned i) const; /** - * Combine rows into a single row + * Combine rows into a single row. + * Returns a pair of Pauli strings RxS such that SCR = C */ row_tensor_t get_row_product(const std::vector& rows) const; @@ -142,7 +154,10 @@ class ChoiMixTableau { * outputs. */ void apply_S(const Qubit& qb, TableauSegment seg = TableauSegment::Output); + void apply_Z(const Qubit& qb, TableauSegment seg = TableauSegment::Output); void apply_V(const Qubit& qb, TableauSegment seg = TableauSegment::Output); + void apply_X(const Qubit& qb, TableauSegment seg = TableauSegment::Output); + void apply_H(const Qubit& qb, TableauSegment seg = TableauSegment::Output); void apply_CX( const Qubit& control, const Qubit& target, TableauSegment seg = TableauSegment::Output); diff --git a/tket/include/tket/Clifford/SymplecticTableau.hpp b/tket/include/tket/Clifford/SymplecticTableau.hpp index 86c7c63532..c6bd327fd9 100644 --- a/tket/include/tket/Clifford/SymplecticTableau.hpp +++ b/tket/include/tket/Clifford/SymplecticTableau.hpp @@ -20,12 +20,6 @@ namespace tket { -// Forward declare friend classes for converters -class ChoiMixTableau; -class UnitaryTableau; -class UnitaryRevTableau; -class Circuit; - /** * Boolean encoding of Pauli * = ==> I @@ -136,10 +130,13 @@ class SymplecticTableau { void row_mult(unsigned ra, unsigned rw, Complex coeff = 1.); /** - * Applies an S/V/CX gate to the given qubit(s) + * Applies a chosen gate to the given qubit(s) */ void apply_S(unsigned qb); + void apply_Z(unsigned qb); void apply_V(unsigned qb); + void apply_X(unsigned qb); + void apply_H(unsigned qb); void apply_CX(unsigned qc, unsigned qt); void apply_gate(OpType type, const std::vector &qbs); @@ -173,29 +170,19 @@ class SymplecticTableau { */ void gaussian_form(); - private: - /** - * Number of rows - */ - unsigned n_rows_; - - /** - * Number of qubits in each row - */ - unsigned n_qubits_; - /** * Tableau contents */ - MatrixXb xmat_; - MatrixXb zmat_; - VectorXb phase_; + MatrixXb xmat; + MatrixXb zmat; + VectorXb phase; /** * Complex conjugate of the state by conjugating rows */ SymplecticTableau conjugate() const; + private: /** * Helper methods for manipulating the tableau when applying gates */ @@ -206,18 +193,6 @@ class SymplecticTableau { void col_mult( const MatrixXb::ColXpr &a, const MatrixXb::ColXpr &b, bool flip, MatrixXb::ColXpr &w, VectorXb &pw); - - friend class UnitaryTableau; - friend class ChoiMixTableau; - friend Circuit unitary_tableau_to_circuit(const UnitaryTableau &tab); - friend std::pair cm_tableau_to_circuit( - const ChoiMixTableau &tab); - friend std::ostream &operator<<(std::ostream &os, const UnitaryTableau &tab); - friend std::ostream &operator<<( - std::ostream &os, const UnitaryRevTableau &tab); - - friend void to_json(nlohmann::json &j, const SymplecticTableau &tab); - friend void from_json(const nlohmann::json &j, SymplecticTableau &tab); }; JSON_DECL(SymplecticTableau) diff --git a/tket/include/tket/Clifford/UnitaryTableau.hpp b/tket/include/tket/Clifford/UnitaryTableau.hpp index 45388acda0..25b3b3dd80 100644 --- a/tket/include/tket/Clifford/UnitaryTableau.hpp +++ b/tket/include/tket/Clifford/UnitaryTableau.hpp @@ -101,8 +101,14 @@ class UnitaryTableau { */ void apply_S_at_front(const Qubit& qb); void apply_S_at_end(const Qubit& qb); + void apply_Z_at_front(const Qubit& qb); + void apply_Z_at_end(const Qubit& qb); void apply_V_at_front(const Qubit& qb); void apply_V_at_end(const Qubit& qb); + void apply_X_at_front(const Qubit& qb); + void apply_X_at_end(const Qubit& qb); + void apply_H_at_front(const Qubit& qb); + void apply_H_at_end(const Qubit& qb); void apply_CX_at_front(const Qubit& control, const Qubit& target); void apply_CX_at_end(const Qubit& control, const Qubit& target); void apply_gate_at_front(OpType type, const qubit_vector_t& qbs); @@ -236,8 +242,14 @@ class UnitaryRevTableau { */ void apply_S_at_front(const Qubit& qb); void apply_S_at_end(const Qubit& qb); + void apply_Z_at_front(const Qubit& qb); + void apply_Z_at_end(const Qubit& qb); void apply_V_at_front(const Qubit& qb); void apply_V_at_end(const Qubit& qb); + void apply_X_at_front(const Qubit& qb); + void apply_X_at_end(const Qubit& qb); + void apply_H_at_front(const Qubit& qb); + void apply_H_at_end(const Qubit& qb); void apply_CX_at_front(const Qubit& control, const Qubit& target); void apply_CX_at_end(const Qubit& control, const Qubit& target); void apply_gate_at_front(OpType type, const qubit_vector_t& qbs); diff --git a/tket/include/tket/Converters/Converters.hpp b/tket/include/tket/Converters/Converters.hpp index fc0775c2e4..f629de88ba 100644 --- a/tket/include/tket/Converters/Converters.hpp +++ b/tket/include/tket/Converters/Converters.hpp @@ -47,13 +47,88 @@ ChoiMixTableau circuit_to_cm_tableau(const Circuit &circ); /** * Constructs a circuit producing the same effect as a ChoiMixTableau. - * Uses a naive synthesis method until we develop a good heuristic. * Since Circuit does not support distinct qubit addresses for inputs and * outputs, also returns a map from the output qubit IDs in the tableau to their - * corresponding outputs in the circuit + * corresponding outputs in the circuit. + * + * The circuit produced will be the (possibly non-unitary) channel whose + * stabilisers are exactly those of the tableau and no more, using + * initialisations, post-selections, discards, resets, and collapses to ensure + * this. It will automatically reuse qubits so no more qubits will be needed + * than max(tab.get_n_inputs(), tab.get_n_outputs()). + * + * Example 1: + * ZXI -> () + * YYZ -> () + * This becomes a diagonalisation circuit followed by post-selections. + * + * Example 2: + * Z -> ZZ + * X -> IY + * Z -> -XX + * Combining the first and last rows reveals an initialisation is required for I + * -> YY. Since there are two output qubits, at least one of them does not + * already exist in the input fragment so we can freely add an extra qubit on + * the input side, initialise it and apply a unitary mapping IZ -> YY. + * + * Example 3: + * ZX -> IZ + * II -> ZI + * We require an initialised qubit for the final row, but both input and output + * spaces only have q[0] and q[1], of which both inputs need to be open for the + * first row. We can obtain an initialised qubit by resetting a qubit after + * reducing the first row to only a single qubit. */ -std::pair cm_tableau_to_circuit( - const ChoiMixTableau &circ); +std::pair cm_tableau_to_exact_circuit( + const ChoiMixTableau &tab, CXConfigType cx_config = CXConfigType::Snake); + +/** + * We define a unitary extension of a ChoiMixTableau to be a unitary circuit + * whose stabilizer group contain all the rows of the ChoiMixTableau and + * possibly more. This is useful when we are treating the ChoiMixTableau as a + * means to encode a diagonalisation problem, since we are generally looking for + * a unitary as we may wish to apply the inverse afterwards (e.g. conjugating + * some rotations to implement a set of Pauli gadgets). + * + * Not every ChoiMixTableau can be extended to a unitary by just adding rows, + * e.g. if it requires any initialisation or post-selections. In this case, the + * unitary circuit is extended with additional input qubits which are assumed to + * be zero-initialised, and additional output qubits which are assumed to be + * post-selected. The synthesis guarantees that, if we take the unitary, + * initialise all designated inputs, and post-select on all designated outputs, + * every row from the original tableau is a stabiliser for the remaining + * projector. When not enough additional qubit names are provided, an error is + * thrown. + * + * + * Example 1: + * ZXI -> () + * YYZ -> () + * Since, in exact synthesis, at least two post-selections would be required, we + * pick two names from post_names. This is then a diagonalisation circuit which + * maps each row to an arbitrary diagonal string over post_names. + * + * Example 2: + * Z -> ZZ + * X -> IY + * Z -> -XX + * Combining the first and last rows reveals an initialisation is required for I + * -> YY. We extend the inputs with a qubit from init_names. The initialisation + * can manifest as either altering the first row to ZZ -> ZZ or the last row to + * ZZ -> -XX. + * + * Example 3: + * ZX -> IZ + * II -> ZI + * We require an initialised qubit for the final row, but both input and output + * spaces only have q[0] and q[1], of which both inputs need to be open for the + * first row. Unlike exact synthesis, we cannot reuse qubits, so the returned + * circuit will be over 3 qubits, extending with a name from init_names. + */ +std::pair cm_tableau_to_unitary_extension_circuit( + const ChoiMixTableau &tab, const std::vector &init_names = {}, + const std::vector &post_names = {}, + CXConfigType cx_config = CXConfigType::Snake); PauliGraph circuit_to_pauli_graph(const Circuit &circ); diff --git a/tket/include/tket/Converters/PauliGadget.hpp b/tket/include/tket/Converters/PauliGadget.hpp deleted file mode 100644 index 6413ee34c5..0000000000 --- a/tket/include/tket/Converters/PauliGadget.hpp +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2019-2023 Cambridge Quantum Computing -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#pragma once - -#include - -#include "tket/Circuit/Circuit.hpp" -#include "tket/Utils/PauliTensor.hpp" - -namespace tket { - -class ImplicitPermutationNotAllowed : public std::logic_error { - public: - explicit ImplicitPermutationNotAllowed(const std::string& message) - : std::logic_error(message) {} -}; - -/** - * Append a Pauli gadget to the end of a given circuit. - * Automatically uses Snake CX configuration - * - * @param circ circuit to append to - * @param pauli Pauli operators and their respective qubits; coefficient gives - * rotation angle in half-turns - * @param cx_config which type of CX configuration to decompose into - */ -void append_single_pauli_gadget( - Circuit& circ, const SpSymPauliTensor& pauli, - CXConfigType cx_config = CXConfigType::Snake); - -/** - * Append a Pauli gadget to the end of a given circuit as a - * PauliExpBox. - * Automatically uses Snake CX configuration - * - * @param circ circuit to append to - * @param pauli Pauli operators and their respective qubits; coefficient gives - * rotation angle in half-turns - * @param cx_config which type of CX configuration to decompose into - */ -void append_single_pauli_gadget_as_pauli_exp_box( - Circuit& circ, const SpSymPauliTensor& pauli, CXConfigType cx_config); - -/** - * Append a pair of Pauli gadgets to the end of a given circuit. - * (shallow) Uses an adapted arrangement of CX that gives balanced trees - * over the matching qubits to improve depth. Better performance - * is not guaranteed as CXs may not align for cancellation and - * it can be harder to route. - * (!shallow) Uses the original method with naive arrangement of CXs. - * - * @param circ circuit to append to - * @param pauli0 first Pauli string; coefficient gives rotation angle in - * half-turns - * @param pauli1 second Pauli string; coefficient gives rotation angle in - * half-turns - * @param cx_config which type of CX configuration to decompose into - */ -void append_pauli_gadget_pair( - Circuit& circ, SpSymPauliTensor pauli0, SpSymPauliTensor pauli1, - CXConfigType cx_config = CXConfigType::Snake); - -void append_pauli_gadget_pair_as_box( - Circuit& circ, const SpSymPauliTensor& pauli0, - const SpSymPauliTensor& pauli1, CXConfigType cx_config); - -void append_commuting_pauli_gadget_set_as_box( - Circuit& circ, const std::list& gadgets, - CXConfigType cx_config); - -} // namespace tket diff --git a/tket/include/tket/Diagonalisation/Diagonalisation.hpp b/tket/include/tket/Diagonalisation/Diagonalisation.hpp index aa66d8f370..ce3a75198c 100644 --- a/tket/include/tket/Diagonalisation/Diagonalisation.hpp +++ b/tket/include/tket/Diagonalisation/Diagonalisation.hpp @@ -60,13 +60,38 @@ void apply_conjugations( SpSymPauliTensor &qps, const Conjugations &conjugations); /** - * Given two qubits on which to conjugate a CX gate, try to conjugate with a - * XXPhase3 instead. If successful, undoes conjugations that must be undone and - * replaces it with XXPhase3 conjugation. Returns true if successful and false - * otherwise. + * Given a Pauli tensor P, produces a short Clifford circuit C which maps P to Z + * on a single qubit, i.e. Z_i C P = C. This can be viewed as the components + * required to synthesise a single Pauli gadget C^dag RZ(a)_i C = exp(-i pi a + * P/2) (up to global phase), or as a diagonalisation of a single Pauli string + * along with CXs to reduce it to a single qubit. Returns the circuit C and the + * qubit i where the Z ends up. */ -bool conjugate_with_xxphase3( - const Qubit &qb_a, const Qubit &qb_b, Conjugations &conjugations, - Circuit &cliff_circ); +std::pair reduce_pauli_to_z( + const SpPauliStabiliser &pauli, CXConfigType cx_config); + +/** + * Given a pair of anticommuting Pauli tensors P0, P1, produces a short Clifford + * circuit C which maps P0 to Z and P1 to X on the same qubit, i.e. Z_i C P0 = C + * = X_i C P1. This can be viewed as the components required to synthesise a + * pair of noncommuting Pauli gadgets C^dag RX(b)_i RZ(a)_i C = exp(-i pi b + * P1/2) exp(-i pi a P0/2) (up to global phase). This is not strictly a + * diagonalisation because anticommuting strings cannot be simultaneously + * diagonalised. Returns the circuit C and the qubit i where the Z and X end up. + */ +std::pair reduce_anticommuting_paulis_to_z_x( + SpPauliStabiliser pauli0, SpPauliStabiliser pauli1, CXConfigType cx_config); + +/** + * Given a pair of commuting Pauli tensors P0, P1, produces a short Clifford + * circuit C which maps P0 and P1 to Z on different qubits, i.e. Z_i C P0 = C = + * Z_j C P1. This can be viewed as the components required to synthesise a pair + * of commuting Pauli gadgets C^dag RZ(b)_j RZ(a)_i C = exp(-i pi b P1/2) exp(-i + * pi a P0/2) (up to global phase), or as a mutual diagonalisation of two Pauli + * strings along with CXs to reduce them to independent, individual qubits. + * Returns the circuit C and the qubits i and j where the Zs end up. + */ +std::tuple reduce_commuting_paulis_to_zi_iz( + SpPauliStabiliser pauli0, SpPauliStabiliser pauli1, CXConfigType cx_config); } // namespace tket diff --git a/tket/src/Circuit/CircUtils.cpp b/tket/src/Circuit/CircUtils.cpp index 07f9bb9dec..17b0deb998 100644 --- a/tket/src/Circuit/CircUtils.cpp +++ b/tket/src/Circuit/CircUtils.cpp @@ -22,6 +22,7 @@ #include "tket/Circuit/CircPool.hpp" #include "tket/Circuit/Circuit.hpp" #include "tket/Circuit/ConjugationBox.hpp" +#include "tket/Diagonalisation/Diagonalisation.hpp" #include "tket/Gate/GatePtr.hpp" #include "tket/Gate/GateUnitaryMatrixImplementations.hpp" #include "tket/Gate/Rotation.hpp" @@ -268,152 +269,79 @@ std::pair decompose_2cx_DV(const Eigen::Matrix4cd &U) { } Circuit phase_gadget(unsigned n_qubits, const Expr &t, CXConfigType cx_config) { - // Handle n_qubits==0 as a special case, or the calculations below - // go badly wrong. - Circuit new_circ(n_qubits); - Circuit compute(n_qubits); - Circuit action(n_qubits); - Circuit uncompute(n_qubits); - if (n_qubits == 0) { - new_circ.add_phase(-t / 2); - return new_circ; - } - switch (cx_config) { - case CXConfigType::Snake: { - for (unsigned i = n_qubits - 1; i != 0; --i) { - unsigned j = i - 1; - compute.add_op(OpType::CX, {i, j}); - } - action.add_op(OpType::Rz, t, {0}); - for (unsigned i = 0; i != n_qubits - 1; ++i) { - unsigned j = i + 1; - uncompute.add_op(OpType::CX, {j, i}); - } - break; - } - case CXConfigType::Star: { - for (unsigned i = n_qubits - 1; i != 0; --i) { - compute.add_op(OpType::CX, {i, 0}); - } - action.add_op(OpType::Rz, t, {0}); - for (unsigned i = 1; i != n_qubits; ++i) { - uncompute.add_op(OpType::CX, {i, 0}); - } - break; - } - case CXConfigType::Tree: { - unsigned complete_layers = floor(log2(n_qubits)); - unsigned dense_end = pow(2, complete_layers); - for (unsigned i = 0; i < n_qubits - dense_end; i++) - compute.add_op( - OpType::CX, {dense_end + i, dense_end - 1 - i}); - for (unsigned step_size = 1; step_size < dense_end; step_size *= 2) { - for (unsigned i = 0; i < dense_end; i += 2 * step_size) - compute.add_op(OpType::CX, {i + step_size, i}); - } - action.add_op(OpType::Rz, t, {0}); - for (unsigned step_size = dense_end / 2; step_size >= 1; step_size /= 2) { - for (unsigned i = 0; i < dense_end; i += 2 * step_size) - uncompute.add_op(OpType::CX, {i + step_size, i}); - } - for (unsigned i = 0; i < n_qubits - dense_end; i++) - uncompute.add_op( - OpType::CX, {dense_end + i, dense_end - 1 - i}); - break; - } - case CXConfigType::MultiQGate: { - std::vector> conjugations; - int sign_correction = 1; - for (int q = n_qubits - 1; q > 0; q -= 2) { - if (q - 1 > 0) { - unsigned i = q, j = q - 1; - // this is only equal to the CX decompositions above - // up to phase, but phase differences are cancelled out by - // its dagger XXPhase(-1/2) below. - compute.add_op(OpType::H, {i}); - compute.add_op(OpType::H, {j}); - compute.add_op(OpType::XXPhase3, 0.5, {i, j, 0}); - sign_correction *= -1; - conjugations.push_back({i, j, 0}); - } else { - unsigned i = q; - compute.add_op(OpType::CX, {i, 0}); - conjugations.push_back({i, 0}); - } - } - action.add_op(OpType::Rz, sign_correction * t, {0}); - for (const auto &conj : conjugations) { - if (conj.size() == 2) { - uncompute.add_op(OpType::CX, conj); - } else { - TKET_ASSERT(conj.size() == 3); - uncompute.add_op(OpType::XXPhase3, -0.5, conj); - uncompute.add_op(OpType::H, {conj[0]}); - uncompute.add_op(OpType::H, {conj[1]}); - } - } - break; - } + return pauli_gadget( + SpSymPauliTensor(DensePauliMap(n_qubits, Pauli::Z), t), cx_config); +} + +Circuit pauli_gadget(SpSymPauliTensor paulis, CXConfigType cx_config) { + if (SpPauliString(paulis.string) == SpPauliString{}) { + Circuit phase_circ(paulis.size()); + phase_circ.add_phase(-paulis.coeff / 2); + return phase_circ; } + std::pair diag = + reduce_pauli_to_z(SpPauliStabiliser(paulis.string), cx_config); + Circuit compute = diag.first; + qubit_vector_t all_qubits = compute.all_qubits(); + unit_map_t mapping = compute.flatten_registers(); + Circuit action(all_qubits.size()); + action.add_op(OpType::Rz, paulis.coeff, {mapping.at(diag.second)}); + Circuit circ(all_qubits, {}); ConjugationBox box( - std::make_shared(compute), std::make_shared(action), - std::make_shared(uncompute)); - new_circ.add_box(box, new_circ.all_qubits()); - return new_circ; + std::make_shared(compute), std::make_shared(action)); + circ.add_box(box, all_qubits); + return circ; } -Circuit pauli_gadget( - const std::vector &paulis, const Expr &t, CXConfigType cx_config) { - unsigned n = paulis.size(); - Circuit circ(n); - Circuit compute(n); - Circuit action(n); - Circuit uncompute(n); - std::vector qubits; - for (unsigned i = 0; i < n; i++) { - switch (paulis[i]) { - case Pauli::I: - break; - case Pauli::X: - compute.add_op(OpType::H, {i}); - qubits.push_back(i); - break; - case Pauli::Y: - compute.add_op(OpType::V, {i}); - qubits.push_back(i); - break; - case Pauli::Z: - qubits.push_back(i); - break; - } +Circuit pauli_gadget_pair( + SpSymPauliTensor paulis0, SpSymPauliTensor paulis1, + CXConfigType cx_config) { + if (SpPauliString(paulis0.string) == SpPauliString{}) { + Circuit p1_circ = pauli_gadget(paulis1, cx_config); + p1_circ.add_phase(-paulis0.coeff / 2); + return p1_circ; + } else if (SpPauliString(paulis1.string) == SpPauliString{}) { + Circuit p0_circ = pauli_gadget(paulis0, cx_config); + p0_circ.add_phase(-paulis1.coeff / 2); + return p0_circ; } - if (qubits.empty()) { - circ.add_phase(-t / 2); + if (paulis0.commutes_with(paulis1)) { + std::tuple diag = reduce_commuting_paulis_to_zi_iz( + SpPauliStabiliser(paulis0.string), SpPauliStabiliser(paulis1.string), + cx_config); + Circuit &diag_circ = std::get<0>(diag); + qubit_vector_t all_qubits = diag_circ.all_qubits(); + unit_map_t mapping = diag_circ.flatten_registers(); + Circuit rot_circ(all_qubits.size()); + rot_circ.add_op( + OpType::Rz, paulis0.coeff, {mapping.at(std::get<1>(diag))}); + rot_circ.add_op( + OpType::Rz, paulis1.coeff, {mapping.at(std::get<2>(diag))}); + ConjugationBox box( + std::make_shared(diag_circ), + std::make_shared(rot_circ)); + Circuit circ(all_qubits, {}); + circ.add_box(box, all_qubits); + return circ; + } else { + std::pair diag = reduce_anticommuting_paulis_to_z_x( + SpPauliStabiliser(paulis0.string), SpPauliStabiliser(paulis1.string), + cx_config); + Circuit &diag_circ = diag.first; + qubit_vector_t all_qubits = diag_circ.all_qubits(); + unit_map_t mapping = diag_circ.flatten_registers(); + Circuit rot_circ(all_qubits.size()); + rot_circ.add_op( + OpType::Rz, paulis0.coeff, {mapping.at(diag.second)}); + rot_circ.add_op( + OpType::Rx, paulis1.coeff, {mapping.at(diag.second)}); + ConjugationBox box( + std::make_shared(diag_circ), + std::make_shared(rot_circ)); + Circuit circ(all_qubits, {}); + circ.add_box(box, all_qubits); return circ; } - Vertex v = action.add_op(OpType::PhaseGadget, t, qubits); - Circuit cx_gadget = phase_gadget(action.n_in_edges(v), t, cx_config); - Subcircuit sub = {action.get_in_edges(v), action.get_all_out_edges(v), {v}}; - action.substitute(cx_gadget, sub, Circuit::VertexDeletion::Yes); - for (unsigned i = 0; i < n; i++) { - switch (paulis[i]) { - case Pauli::I: - break; - case Pauli::X: - uncompute.add_op(OpType::H, {i}); - break; - case Pauli::Y: - uncompute.add_op(OpType::Vdg, {i}); - break; - case Pauli::Z: - break; - } - } - ConjugationBox box( - std::make_shared(compute), std::make_shared(action), - std::make_shared(uncompute)); - circ.add_box(box, circ.all_qubits()); - return circ; } void replace_CX_with_TK2(Circuit &c) { diff --git a/tket/src/Circuit/PauliExpBoxes.cpp b/tket/src/Circuit/PauliExpBoxes.cpp index 23f81c9d8e..049121b571 100644 --- a/tket/src/Circuit/PauliExpBoxes.cpp +++ b/tket/src/Circuit/PauliExpBoxes.cpp @@ -18,7 +18,6 @@ #include "tket/Circuit/CircUtils.hpp" #include "tket/Circuit/ConjugationBox.hpp" -#include "tket/Converters/PauliGadget.hpp" #include "tket/Converters/PhasePoly.hpp" #include "tket/Diagonalisation/Diagonalisation.hpp" #include "tket/Ops/OpJsonFactory.hpp" @@ -61,7 +60,11 @@ Op_ptr PauliExpBox::symbol_substitution( } void PauliExpBox::generate_circuit() const { - Circuit circ = pauli_gadget(paulis_.string, paulis_.coeff, cx_config_); + // paulis_ gets cast to a sparse form, so circuit from pauli_gadget will only + // contain qubits with {X, Y, Z}; appending it to a blank circuit containing + // all qubits makes the size of the circuit fixed + Circuit circ(paulis_.size()); + circ.append(pauli_gadget(paulis_, cx_config_)); circ_ = std::make_shared(circ); } @@ -149,8 +152,12 @@ Op_ptr PauliExpPairBox::symbol_substitution( } void PauliExpPairBox::generate_circuit() const { - Circuit circ = Circuit(paulis0_.size()); - append_pauli_gadget_pair(circ, paulis0_, paulis1_, cx_config_); + // paulis0_ and paulis1_ gets cast to a sparse form, so circuit from + // pauli_gadget_pair will only contain qubits with {X, Y, Z} on at least one; + // appending it to a blank circuit containing all qubits makes the size of the + // circuit fixed + Circuit circ(paulis0_.size()); + circ.append(pauli_gadget_pair(paulis0_, paulis1_, cx_config_)); circ_ = std::make_shared(circ); } @@ -306,7 +313,7 @@ void PauliExpCommutingSetBox::generate_circuit() const { Circuit phase_poly_circ(n_qubits); for (const SpSymPauliTensor &pgp : gadgets) { - append_single_pauli_gadget(phase_poly_circ, pgp); + phase_poly_circ.append(pauli_gadget(pgp, CXConfigType::Snake)); } phase_poly_circ.decompose_boxes_recursively(); PhasePolyBox ppbox(phase_poly_circ); @@ -363,4 +370,79 @@ Op_ptr PauliExpCommutingSetBox::from_json(const nlohmann::json &j) { REGISTER_OPFACTORY(PauliExpCommutingSetBox, PauliExpCommutingSetBox) +void append_single_pauli_gadget_as_pauli_exp_box( + Circuit &circ, const SpSymPauliTensor &pauli, CXConfigType cx_config) { + std::vector string; + std::vector mapping; + for (const std::pair &term : pauli.string) { + string.push_back(term.second); + mapping.push_back(term.first); + } + PauliExpBox box(SymPauliTensor(string, pauli.coeff), cx_config); + circ.add_box(box, mapping); +} + +void append_pauli_gadget_pair_as_box( + Circuit &circ, const SpSymPauliTensor &pauli0, + const SpSymPauliTensor &pauli1, CXConfigType cx_config) { + std::vector mapping; + std::vector paulis0; + std::vector paulis1; + QubitPauliMap p1map = pauli1.string; + // add paulis for qubits in pauli0_string + for (const std::pair &term : pauli0.string) { + mapping.push_back(term.first); + paulis0.push_back(term.second); + auto found = p1map.find(term.first); + if (found == p1map.end()) { + paulis1.push_back(Pauli::I); + } else { + paulis1.push_back(found->second); + p1map.erase(found); + } + } + // add paulis for qubits in pauli1_string that weren't in pauli0_string + for (const std::pair &term : p1map) { + mapping.push_back(term.first); + paulis1.push_back(term.second); + paulis0.push_back(Pauli::I); // If pauli0_string contained qubit, would + // have been handled above + } + PauliExpPairBox box( + SymPauliTensor(paulis0, pauli0.coeff), + SymPauliTensor(paulis1, pauli1.coeff), cx_config); + circ.add_box(box, mapping); +} + +void append_commuting_pauli_gadget_set_as_box( + Circuit &circ, const std::list &gadgets, + CXConfigType cx_config) { + // Translate from QubitPauliTensors to vectors of Paulis of same length + // Preserves ordering of qubits + + std::set all_qubits; + for (const SpSymPauliTensor &gadget : gadgets) { + for (const std::pair &qubit_pauli : gadget.string) { + all_qubits.insert(qubit_pauli.first); + } + } + + std::vector mapping; + for (const auto &qubit : all_qubits) { + mapping.push_back(qubit); + } + + std::vector pauli_gadgets; + for (const SpSymPauliTensor &gadget : gadgets) { + SymPauliTensor &new_gadget = + pauli_gadgets.emplace_back(DensePauliMap{}, gadget.coeff); + for (const Qubit &qubit : mapping) { + new_gadget.string.push_back(gadget.get(qubit)); + } + } + + PauliExpCommutingSetBox box(pauli_gadgets, cx_config); + circ.add_box(box, mapping); +} + } // namespace tket diff --git a/tket/src/Clifford/ChoiMixTableau.cpp b/tket/src/Clifford/ChoiMixTableau.cpp index b481d54893..80f0765937 100644 --- a/tket/src/Clifford/ChoiMixTableau.cpp +++ b/tket/src/Clifford/ChoiMixTableau.cpp @@ -103,11 +103,13 @@ ChoiMixTableau::ChoiMixTableau(const std::list& rows) VectorXb phase = VectorXb::Zero(n_rows); unsigned r = 0; for (const row_tensor_t& row : rows) { + unsigned n_ys = 0; for (const std::pair& qb : row.first.string) { unsigned c = col_index_.left.at(col_key_t{qb.first, TableauSegment::Input}); if (qb.second == Pauli::X || qb.second == Pauli::Y) xmat(r, c) = true; if (qb.second == Pauli::Z || qb.second == Pauli::Y) zmat(r, c) = true; + if (qb.second == Pauli::Y) ++n_ys; } for (const std::pair& qb : row.second.string) { unsigned c = @@ -115,7 +117,8 @@ ChoiMixTableau::ChoiMixTableau(const std::list& rows) if (qb.second == Pauli::X || qb.second == Pauli::Y) xmat(r, c) = true; if (qb.second == Pauli::Z || qb.second == Pauli::Y) zmat(r, c) = true; } - phase(r) = row.first.is_real_negative() ^ row.second.is_real_negative(); + phase(r) = row.first.is_real_negative() ^ row.second.is_real_negative() ^ + (n_ys % 2 == 1); ++r; } tab_ = SymplecticTableau(xmat, zmat, phase); @@ -125,22 +128,30 @@ unsigned ChoiMixTableau::get_n_rows() const { return tab_.get_n_rows(); } unsigned ChoiMixTableau::get_n_boundaries() const { return col_index_.size(); } -unsigned ChoiMixTableau::get_n_inputs() const { - unsigned n = 0; +unsigned ChoiMixTableau::get_n_inputs() const { return input_qubits().size(); } + +unsigned ChoiMixTableau::get_n_outputs() const { + return output_qubits().size(); +} + +qubit_vector_t ChoiMixTableau::input_qubits() const { + qubit_vector_t ins; BOOST_FOREACH ( tableau_col_index_t::left_const_reference entry, col_index_.left) { - if (entry.first.second == TableauSegment::Input) ++n; + if (entry.first.second == TableauSegment::Input) + ins.push_back(entry.first.first); } - return n; + return ins; } -unsigned ChoiMixTableau::get_n_outputs() const { - unsigned n = 0; +qubit_vector_t ChoiMixTableau::output_qubits() const { + qubit_vector_t outs; BOOST_FOREACH ( tableau_col_index_t::left_const_reference entry, col_index_.left) { - if (entry.first.second == TableauSegment::Output) ++n; + if (entry.first.second == TableauSegment::Output) + outs.push_back(entry.first.first); } - return n; + return outs; } ChoiMixTableau::row_tensor_t ChoiMixTableau::stab_to_row_tensor( @@ -173,17 +184,22 @@ PauliStabiliser ChoiMixTableau::row_tensor_to_stab( } ChoiMixTableau::row_tensor_t ChoiMixTableau::get_row(unsigned i) const { - return stab_to_row_tensor(tab_.get_pauli(i)); + ChoiMixTableau::row_tensor_t res = stab_to_row_tensor(tab_.get_pauli(i)); + res.first.transpose(); + res.second.coeff = (res.first.coeff + res.second.coeff) % 4; + res.first.coeff = 0; + return res; } ChoiMixTableau::row_tensor_t ChoiMixTableau::get_row_product( const std::vector& rows) const { row_tensor_t result = {{}, {}}; for (unsigned i : rows) { - row_tensor_t row_i = get_row(i); + row_tensor_t row_i = stab_to_row_tensor(tab_.get_pauli(i)); result.first = result.first * row_i.first; result.second = result.second * row_i.second; } + result.first.transpose(); result.second.coeff = (result.first.coeff + result.second.coeff) % 4; result.first.coeff = 0; return result; @@ -194,11 +210,26 @@ void ChoiMixTableau::apply_S(const Qubit& qb, TableauSegment seg) { tab_.apply_S(col); } +void ChoiMixTableau::apply_Z(const Qubit& qb, TableauSegment seg) { + unsigned col = col_index_.left.at(col_key_t{qb, seg}); + tab_.apply_Z(col); +} + void ChoiMixTableau::apply_V(const Qubit& qb, TableauSegment seg) { unsigned col = col_index_.left.at(col_key_t{qb, seg}); tab_.apply_V(col); } +void ChoiMixTableau::apply_X(const Qubit& qb, TableauSegment seg) { + unsigned col = col_index_.left.at(col_key_t{qb, seg}); + tab_.apply_X(col); +} + +void ChoiMixTableau::apply_H(const Qubit& qb, TableauSegment seg) { + unsigned col = col_index_.left.at(col_key_t{qb, seg}); + tab_.apply_H(col); +} + void ChoiMixTableau::apply_CX( const Qubit& control, const Qubit& target, TableauSegment seg) { unsigned uc = col_index_.left.at(col_key_t{control, seg}); @@ -210,20 +241,16 @@ void ChoiMixTableau::apply_gate( OpType type, const qubit_vector_t& qbs, TableauSegment seg) { switch (type) { case OpType::Z: { - apply_S(qbs.at(0), seg); - apply_S(qbs.at(0), seg); + apply_Z(qbs.at(0), seg); break; } case OpType::X: { - apply_V(qbs.at(0), seg); - apply_V(qbs.at(0), seg); + apply_X(qbs.at(0), seg); break; } case OpType::Y: { - apply_S(qbs.at(0), seg); - apply_S(qbs.at(0), seg); - apply_V(qbs.at(0), seg); - apply_V(qbs.at(0), seg); + apply_Z(qbs.at(0), seg); + apply_X(qbs.at(0), seg); break; } case OpType::S: { @@ -232,8 +259,7 @@ void ChoiMixTableau::apply_gate( } case OpType::Sdg: { apply_S(qbs.at(0), seg); - apply_S(qbs.at(0), seg); - apply_S(qbs.at(0), seg); + apply_Z(qbs.at(0), seg); break; } case OpType::SX: @@ -244,14 +270,11 @@ void ChoiMixTableau::apply_gate( case OpType::SXdg: case OpType::Vdg: { apply_V(qbs.at(0), seg); - apply_V(qbs.at(0), seg); - apply_V(qbs.at(0), seg); + apply_X(qbs.at(0), seg); break; } case OpType::H: { - apply_S(qbs.at(0), seg); - apply_V(qbs.at(0), seg); - apply_S(qbs.at(0), seg); + apply_H(qbs.at(0), seg); break; } case OpType::CX: { @@ -263,25 +286,19 @@ void ChoiMixTableau::apply_gate( apply_S(qbs.at(1), seg); apply_CX(qbs.at(0), qbs.at(1), seg); apply_S(qbs.at(1), seg); - apply_S(qbs.at(1), seg); - apply_S(qbs.at(1), seg); + apply_Z(qbs.at(1), seg); } else { apply_S(qbs.at(1), seg); - apply_S(qbs.at(1), seg); - apply_S(qbs.at(1), seg); + apply_Z(qbs.at(1), seg); apply_CX(qbs.at(0), qbs.at(1), seg); apply_S(qbs.at(1), seg); } break; } case OpType::CZ: { - apply_S(qbs.at(1), seg); - apply_V(qbs.at(1), seg); - apply_S(qbs.at(1), seg); + apply_H(qbs.at(1), seg); apply_CX(qbs.at(0), qbs.at(1), seg); - apply_S(qbs.at(1), seg); - apply_V(qbs.at(1), seg); - apply_S(qbs.at(1), seg); + apply_H(qbs.at(1), seg); break; } case OpType::ZZMax: { @@ -292,16 +309,14 @@ void ChoiMixTableau::apply_gate( } case OpType::ECR: { if (seg == TableauSegment::Input) { - apply_V(qbs.at(0), seg); - apply_V(qbs.at(0), seg); + apply_X(qbs.at(0), seg); apply_S(qbs.at(0), seg); apply_V(qbs.at(1), seg); apply_CX(qbs.at(0), qbs.at(1), seg); } else { apply_CX(qbs.at(0), qbs.at(1), seg); apply_S(qbs.at(0), seg); - apply_V(qbs.at(0), seg); - apply_V(qbs.at(0), seg); + apply_X(qbs.at(0), seg); apply_V(qbs.at(1), seg); } break; @@ -312,8 +327,7 @@ void ChoiMixTableau::apply_gate( apply_CX(qbs.at(0), qbs.at(1), seg); apply_V(qbs.at(0), seg); apply_S(qbs.at(1), seg); - apply_S(qbs.at(1), seg); - apply_S(qbs.at(1), seg); + apply_Z(qbs.at(1), seg); apply_CX(qbs.at(0), qbs.at(1), seg); apply_V(qbs.at(0), seg); apply_V(qbs.at(1), seg); @@ -341,28 +355,25 @@ void ChoiMixTableau::apply_gate( // reinsert qubit initialised to maximally mixed state (no coherent // stabilizers) col_index_.insert({{qbs.at(0), TableauSegment::Input}, col}); - tab_.xmat_.conservativeResize(rows, col + 1); - tab_.xmat_.col(col) = MatrixXb::Zero(rows, 1); - tab_.zmat_.conservativeResize(rows, col + 1); - tab_.zmat_.col(col) = MatrixXb::Zero(rows, 1); - ++tab_.n_qubits_; + tab_.xmat.conservativeResize(rows, col + 1); + tab_.xmat.col(col) = MatrixXb::Zero(rows, 1); + tab_.zmat.conservativeResize(rows, col + 1); + tab_.zmat.col(col) = MatrixXb::Zero(rows, 1); } else { discard_qubit(qbs.at(0), TableauSegment::Output); unsigned col = get_n_boundaries(); unsigned rows = get_n_rows(); // reinsert qubit initialised to |0> (add a Z stabilizer) col_index_.insert({{qbs.at(0), TableauSegment::Output}, col}); - tab_.xmat_.conservativeResize(rows + 1, col + 1); - tab_.xmat_.col(col) = MatrixXb::Zero(rows + 1, 1); - tab_.xmat_.row(rows) = MatrixXb::Zero(1, col + 1); - tab_.zmat_.conservativeResize(rows + 1, col + 1); - tab_.zmat_.col(col) = MatrixXb::Zero(rows + 1, 1); - tab_.zmat_.row(rows) = MatrixXb::Zero(1, col + 1); - tab_.zmat_(rows, col) = true; - tab_.phase_.conservativeResize(rows + 1); - tab_.phase_(rows) = false; - ++tab_.n_rows_; - ++tab_.n_qubits_; + tab_.xmat.conservativeResize(rows + 1, col + 1); + tab_.xmat.col(col) = MatrixXb::Zero(rows + 1, 1); + tab_.xmat.row(rows) = MatrixXb::Zero(1, col + 1); + tab_.zmat.conservativeResize(rows + 1, col + 1); + tab_.zmat.col(col) = MatrixXb::Zero(rows + 1, 1); + tab_.zmat.row(rows) = MatrixXb::Zero(1, col + 1); + tab_.zmat(rows, col) = true; + tab_.phase.conservativeResize(rows + 1); + tab_.phase(rows) = false; } break; } @@ -399,10 +410,10 @@ void ChoiMixTableau::post_select(const Qubit& qb, TableauSegment seg) { unsigned n_cols = get_n_boundaries(); unsigned col = col_index_.left.at(col_key_t{qb, seg}); for (unsigned r = 0; r < n_rows; ++r) { - if (tab_.zmat_(r, col)) { + if (tab_.zmat(r, col)) { bool only_z = true; for (unsigned c = 0; c < n_cols; ++c) { - if ((tab_.xmat_(r, c) || tab_.zmat_(r, c)) && (c != col)) { + if ((tab_.xmat(r, c) || tab_.zmat(r, c)) && (c != col)) { only_z = false; break; } @@ -410,7 +421,7 @@ void ChoiMixTableau::post_select(const Qubit& qb, TableauSegment seg) { if (!only_z) break; // Not deterministic // From here, we know we are in a deterministic case // If deterministically fail, throw an exception - if (tab_.phase_(r)) + if (tab_.phase(r)) throw std::logic_error( "Post-selecting a tableau fails deterministically"); // Otherwise, we succeed and remove the stabilizer @@ -423,7 +434,7 @@ void ChoiMixTableau::post_select(const Qubit& qb, TableauSegment seg) { // Isolate a single row with an X (if one exists) std::optional x_row = std::nullopt; for (unsigned r = 0; r < n_rows; ++r) { - if (tab_.xmat_(r, col)) { + if (tab_.xmat(r, col)) { if (x_row) { // Already found another row with an X, so combine them tab_.row_mult(*x_row, r); @@ -446,7 +457,7 @@ void ChoiMixTableau::discard_qubit(const Qubit& qb, TableauSegment seg) { // Isolate a single row with an X (if one exists) std::optional x_row = std::nullopt; for (unsigned r = 0; r < get_n_rows(); ++r) { - if (tab_.xmat_(r, col)) { + if (tab_.xmat(r, col)) { if (x_row) { // Already found another row with an X, so combine them tab_.row_mult(*x_row, r); @@ -464,7 +475,7 @@ void ChoiMixTableau::discard_qubit(const Qubit& qb, TableauSegment seg) { // Isolate a single row with a Z (if one exists) std::optional z_row = std::nullopt; for (unsigned r = 0; r < get_n_rows(); ++r) { - if (tab_.zmat_(r, col)) { + if (tab_.zmat(r, col)) { if (z_row) { // Already found another row with a Z, so combine them tab_.row_mult(*z_row, r); @@ -487,7 +498,7 @@ void ChoiMixTableau::collapse_qubit(const Qubit& qb, TableauSegment seg) { // Isolate a single row with an X (if one exists) std::optional x_row = std::nullopt; for (unsigned r = 0; r < get_n_rows(); ++r) { - if (tab_.xmat_(r, col)) { + if (tab_.xmat(r, col)) { if (x_row) { // Already found another row with an X, so combine them tab_.row_mult(*x_row, r); @@ -512,14 +523,13 @@ void ChoiMixTableau::remove_row(unsigned row) { unsigned n_rows = get_n_rows(); unsigned n_cols = get_n_boundaries(); if (row < n_rows - 1) { - tab_.xmat_.row(row) = tab_.xmat_.row(n_rows - 1); - tab_.zmat_.row(row) = tab_.zmat_.row(n_rows - 1); - tab_.phase_(row) = tab_.phase_(n_rows - 1); + tab_.xmat.row(row) = tab_.xmat.row(n_rows - 1); + tab_.zmat.row(row) = tab_.zmat.row(n_rows - 1); + tab_.phase(row) = tab_.phase(n_rows - 1); } - tab_.xmat_.conservativeResize(n_rows - 1, n_cols); - tab_.zmat_.conservativeResize(n_rows - 1, n_cols); - tab_.phase_.conservativeResize(n_rows - 1); - --tab_.n_rows_; + tab_.xmat.conservativeResize(n_rows - 1, n_cols); + tab_.zmat.conservativeResize(n_rows - 1, n_cols); + tab_.phase.conservativeResize(n_rows - 1); } void ChoiMixTableau::remove_col(unsigned col) { @@ -530,11 +540,11 @@ void ChoiMixTableau::remove_col(unsigned col) { unsigned n_rows = get_n_rows(); unsigned n_cols = get_n_boundaries(); if (col < n_cols - 1) { - tab_.xmat_.col(col) = tab_.xmat_.col(n_cols - 1); - tab_.zmat_.col(col) = tab_.zmat_.col(n_cols - 1); + tab_.xmat.col(col) = tab_.xmat.col(n_cols - 1); + tab_.zmat.col(col) = tab_.zmat.col(n_cols - 1); } - tab_.xmat_.conservativeResize(n_rows, n_cols - 1); - tab_.zmat_.conservativeResize(n_rows, n_cols - 1); + tab_.xmat.conservativeResize(n_rows, n_cols - 1); + tab_.zmat.conservativeResize(n_rows, n_cols - 1); col_index_.right.erase(col); if (col < n_cols - 1) { tableau_col_index_t::right_iterator it = col_index_.right.find(n_cols - 1); @@ -542,7 +552,6 @@ void ChoiMixTableau::remove_col(unsigned col) { col_index_.right.erase(it); col_index_.insert({last, col}); } - --tab_.n_qubits_; } void ChoiMixTableau::canonical_column_order(TableauSegment first) { @@ -579,10 +588,10 @@ void ChoiMixTableau::canonical_column_order(TableauSegment first) { for (unsigned j = 0; j < i; ++j) { col_key_t key = new_index.right.at(j); unsigned c = col_index_.left.at(key); - xmat.col(j) = tab_.xmat_.col(c); - zmat.col(j) = tab_.zmat_.col(c); + xmat.col(j) = tab_.xmat.col(c); + zmat.col(j) = tab_.zmat.col(c); } - tab_ = SymplecticTableau(xmat, zmat, tab_.phase_); + tab_ = SymplecticTableau(xmat, zmat, tab_.phase); col_index_ = new_index; } @@ -620,12 +629,12 @@ ChoiMixTableau ChoiMixTableau::compose( } MatrixXb fullx(f_rows + s_rows, f_cols + s_cols), fullz(f_rows + s_rows, f_cols + s_cols); - fullx << first.tab_.xmat_, MatrixXb::Zero(f_rows, s_cols), - MatrixXb::Zero(s_rows, f_cols), second.tab_.xmat_; - fullz << first.tab_.zmat_, MatrixXb::Zero(f_rows, s_cols), - MatrixXb::Zero(s_rows, f_cols), second.tab_.zmat_; + fullx << first.tab_.xmat, MatrixXb::Zero(f_rows, s_cols), + MatrixXb::Zero(s_rows, f_cols), second.tab_.xmat; + fullz << first.tab_.zmat, MatrixXb::Zero(f_rows, s_cols), + MatrixXb::Zero(s_rows, f_cols), second.tab_.zmat; VectorXb fullph(f_rows + s_rows); - fullph << first.tab_.phase_, second.tab_.phase_; + fullph << first.tab_.phase, second.tab_.phase; ChoiMixTableau combined(fullx, fullz, fullph, 0); // For each connecting pair of qubits, compose via a Bell post-selection for (unsigned i = 0; i < f_cols; ++i) { diff --git a/tket/src/Clifford/SymplecticTableau.cpp b/tket/src/Clifford/SymplecticTableau.cpp index 45ba0011db..d2b373e38f 100644 --- a/tket/src/Clifford/SymplecticTableau.cpp +++ b/tket/src/Clifford/SymplecticTableau.cpp @@ -62,56 +62,51 @@ const std::map, std::pair> SymplecticTableau::SymplecticTableau( const MatrixXb &xmat, const MatrixXb &zmat, const VectorXb &phase) - : n_rows_(xmat.rows()), - n_qubits_(xmat.cols()), - xmat_(xmat), - zmat_(zmat), - phase_(phase) { - if (zmat.rows() != n_rows_ || phase_.size() != n_rows_) + : xmat(xmat), zmat(zmat), phase(phase) { + if (zmat.rows() != xmat.rows() || phase.size() != xmat.rows()) throw std::invalid_argument( "Tableau must have the same number of rows in each component."); - if (zmat.cols() != n_qubits_) + if (zmat.cols() != xmat.cols()) throw std::invalid_argument( "Tableau must have the same number of columns in x and z components."); } SymplecticTableau::SymplecticTableau(const PauliStabiliserVec &rows) { - n_rows_ = rows.size(); - if (n_rows_ == 0) - n_qubits_ = 0; - else - n_qubits_ = rows[0].string.size(); - xmat_ = MatrixXb::Zero(n_rows_, n_qubits_); - zmat_ = MatrixXb::Zero(n_rows_, n_qubits_); - phase_ = VectorXb::Zero(n_rows_); - for (unsigned i = 0; i < n_rows_; ++i) { + unsigned n_rows = rows.size(); + unsigned n_qubits = 0; + if (n_rows != 0) n_qubits = rows[0].string.size(); + xmat = MatrixXb::Zero(n_rows, n_qubits); + zmat = MatrixXb::Zero(n_rows, n_qubits); + phase = VectorXb::Zero(n_rows); + for (unsigned i = 0; i < n_rows; ++i) { const PauliStabiliser &stab = rows[i]; - if (stab.string.size() != n_qubits_) + if (stab.string.size() != n_qubits) throw std::invalid_argument( "Tableau must have the same number of qubits in each row."); - for (unsigned q = 0; q < n_qubits_; ++q) { + for (unsigned q = 0; q < n_qubits; ++q) { const Pauli &p = stab.get(q); - xmat_(i, q) = (p == Pauli::X) || (p == Pauli::Y); - zmat_(i, q) = (p == Pauli::Z) || (p == Pauli::Y); + xmat(i, q) = (p == Pauli::X) || (p == Pauli::Y); + zmat(i, q) = (p == Pauli::Z) || (p == Pauli::Y); } - phase_(i) = stab.is_real_negative(); + phase(i) = stab.is_real_negative(); } } -unsigned SymplecticTableau::get_n_rows() const { return n_rows_; } -unsigned SymplecticTableau::get_n_qubits() const { return n_qubits_; } +unsigned SymplecticTableau::get_n_rows() const { return xmat.rows(); } +unsigned SymplecticTableau::get_n_qubits() const { return xmat.cols(); } PauliStabiliser SymplecticTableau::get_pauli(unsigned i) const { - std::vector str(n_qubits_); - for (unsigned q = 0; q < n_qubits_; ++q) { - str[q] = BoolPauli{xmat_(i, q), zmat_(i, q)}.to_pauli(); + unsigned n_qubits = get_n_qubits(); + std::vector str(n_qubits); + for (unsigned q = 0; q < n_qubits; ++q) { + str[q] = BoolPauli{xmat(i, q), zmat(i, q)}.to_pauli(); } - return PauliStabiliser(str, phase_(i) ? 2 : 0); + return PauliStabiliser(str, phase(i) ? 2 : 0); } std::ostream &operator<<(std::ostream &os, const SymplecticTableau &tab) { - for (unsigned i = 0; i < tab.n_rows_; ++i) { - os << tab.xmat_.row(i) << " " << tab.zmat_.row(i) << " " << tab.phase_(i) + for (unsigned i = 0; i < tab.get_n_rows(); ++i) { + os << tab.xmat.row(i) << " " << tab.zmat.row(i) << " " << tab.phase(i) << std::endl; } return os; @@ -120,40 +115,58 @@ std::ostream &operator<<(std::ostream &os, const SymplecticTableau &tab) { bool SymplecticTableau::operator==(const SymplecticTableau &other) const { // Need this to short-circuit before matrix checks as comparing matrices of // different sizes will throw an exception - return (this->n_rows_ == other.n_rows_) && - (this->n_qubits_ == other.n_qubits_) && (this->xmat_ == other.xmat_) && - (this->zmat_ == other.zmat_) && (this->phase_ == other.phase_); + return (this->get_n_rows() == other.get_n_rows()) && + (this->get_n_qubits() == other.get_n_qubits()) && + (this->xmat == other.xmat) && (this->zmat == other.zmat) && + (this->phase == other.phase); } void SymplecticTableau::row_mult(unsigned ra, unsigned rw, Complex coeff) { - MatrixXb::RowXpr xa = xmat_.row(ra); - MatrixXb::RowXpr za = zmat_.row(ra); - MatrixXb::RowXpr xw = xmat_.row(rw); - MatrixXb::RowXpr zw = zmat_.row(rw); - row_mult(xa, za, phase_(ra), xw, zw, phase_(rw), coeff, xw, zw, phase_(rw)); + MatrixXb::RowXpr xa = xmat.row(ra); + MatrixXb::RowXpr za = zmat.row(ra); + MatrixXb::RowXpr xw = xmat.row(rw); + MatrixXb::RowXpr zw = zmat.row(rw); + row_mult(xa, za, phase(ra), xw, zw, phase(rw), coeff, xw, zw, phase(rw)); } void SymplecticTableau::apply_S(unsigned qb) { - MatrixXb::ColXpr xcol = xmat_.col(qb); - MatrixXb::ColXpr zcol = zmat_.col(qb); - col_mult(xcol, zcol, false, zcol, phase_); + MatrixXb::ColXpr xcol = xmat.col(qb); + MatrixXb::ColXpr zcol = zmat.col(qb); + col_mult(xcol, zcol, false, zcol, phase); +} + +void SymplecticTableau::apply_Z(unsigned qb) { + for (unsigned i = 0; i < get_n_rows(); ++i) phase(i) = phase(i) ^ xmat(i, qb); } void SymplecticTableau::apply_V(unsigned qb) { - MatrixXb::ColXpr xcol = xmat_.col(qb); - MatrixXb::ColXpr zcol = zmat_.col(qb); - col_mult(zcol, xcol, true, xcol, phase_); + MatrixXb::ColXpr xcol = xmat.col(qb); + MatrixXb::ColXpr zcol = zmat.col(qb); + col_mult(zcol, xcol, true, xcol, phase); +} + +void SymplecticTableau::apply_X(unsigned qb) { + for (unsigned i = 0; i < get_n_rows(); ++i) phase(i) = phase(i) ^ zmat(i, qb); +} + +void SymplecticTableau::apply_H(unsigned qb) { + for (unsigned i = 0; i < get_n_rows(); ++i) { + phase(i) = phase(i) ^ (xmat(i, qb) && zmat(i, qb)); + bool temp = xmat(i, qb); + xmat(i, qb) = zmat(i, qb); + zmat(i, qb) = temp; + } } void SymplecticTableau::apply_CX(unsigned qc, unsigned qt) { if (qc == qt) throw std::logic_error( "Attempting to apply a CX with equal control and target in a tableau"); - for (unsigned i = 0; i < n_rows_; ++i) { - phase_(i) = phase_(i) ^ (xmat_(i, qc) && zmat_(i, qt) && - !(xmat_(i, qt) ^ zmat_(i, qc))); - xmat_(i, qt) = xmat_(i, qc) ^ xmat_(i, qt); - zmat_(i, qc) = zmat_(i, qc) ^ zmat_(i, qt); + for (unsigned i = 0; i < get_n_rows(); ++i) { + phase(i) = + phase(i) ^ (xmat(i, qc) && zmat(i, qt) && !(xmat(i, qt) ^ zmat(i, qc))); + xmat(i, qt) = xmat(i, qc) ^ xmat(i, qt); + zmat(i, qc) = zmat(i, qc) ^ zmat(i, qt); } } @@ -161,20 +174,16 @@ void SymplecticTableau::apply_gate( OpType type, const std::vector &qbs) { switch (type) { case OpType::Z: { - apply_S(qbs.at(0)); - apply_S(qbs.at(0)); + apply_Z(qbs.at(0)); break; } case OpType::X: { - apply_V(qbs.at(0)); - apply_V(qbs.at(0)); + apply_X(qbs.at(0)); break; } case OpType::Y: { - apply_S(qbs.at(0)); - apply_S(qbs.at(0)); - apply_V(qbs.at(0)); - apply_V(qbs.at(0)); + apply_Z(qbs.at(0)); + apply_X(qbs.at(0)); break; } case OpType::S: { @@ -183,24 +192,22 @@ void SymplecticTableau::apply_gate( } case OpType::Sdg: { apply_S(qbs.at(0)); - apply_S(qbs.at(0)); - apply_S(qbs.at(0)); + apply_Z(qbs.at(0)); break; } - case OpType::V: { + case OpType::V: + case OpType::SX: { apply_V(qbs.at(0)); break; } - case OpType::Vdg: { - apply_V(qbs.at(0)); - apply_V(qbs.at(0)); + case OpType::Vdg: + case OpType::SXdg: { apply_V(qbs.at(0)); + apply_X(qbs.at(0)); break; } case OpType::H: { - apply_S(qbs.at(0)); - apply_V(qbs.at(0)); - apply_S(qbs.at(0)); + apply_H(qbs.at(0)); break; } case OpType::CX: { @@ -209,20 +216,15 @@ void SymplecticTableau::apply_gate( } case OpType::CY: { apply_S(qbs.at(1)); - apply_S(qbs.at(1)); - apply_S(qbs.at(1)); + apply_Z(qbs.at(1)); apply_CX(qbs.at(0), qbs.at(1)); apply_S(qbs.at(1)); break; } case OpType::CZ: { - apply_S(qbs.at(1)); - apply_V(qbs.at(1)); - apply_S(qbs.at(1)); + apply_H(qbs.at(1)); apply_CX(qbs.at(0), qbs.at(1)); - apply_S(qbs.at(1)); - apply_V(qbs.at(1)); - apply_S(qbs.at(1)); + apply_H(qbs.at(1)); break; } case OpType::SWAP: { @@ -235,6 +237,34 @@ void SymplecticTableau::apply_gate( apply_CX(qbs.at(0), qbs.at(2)); break; } + case OpType::ZZMax: { + apply_H(qbs.at(1)); + apply_S(qbs.at(0)); + apply_V(qbs.at(1)); + apply_CX(qbs.at(0), qbs.at(1)); + apply_H(qbs.at(1)); + break; + } + case OpType::ECR: { + apply_S(qbs.at(0)); + apply_X(qbs.at(0)); + apply_V(qbs.at(1)); + apply_X(qbs.at(1)); + apply_CX(qbs.at(0), qbs.at(1)); + break; + } + case OpType::ISWAPMax: { + apply_V(qbs.at(0)); + apply_V(qbs.at(1)); + apply_CX(qbs.at(0), qbs.at(1)); + apply_V(qbs.at(0)); + apply_S(qbs.at(1)); + apply_Z(qbs.at(1)); + apply_CX(qbs.at(0), qbs.at(1)); + apply_V(qbs.at(0)); + apply_V(qbs.at(1)); + break; + } case OpType::noop: case OpType::Phase: { break; @@ -249,7 +279,8 @@ void SymplecticTableau::apply_gate( void SymplecticTableau::apply_pauli_gadget( const PauliStabiliser &pauli, unsigned half_pis) { - if (pauli.string.size() != n_qubits_) { + unsigned n_qubits = get_n_qubits(); + if (pauli.string.size() != n_qubits) { throw std::invalid_argument( "Cannot apply pauli gadget to SymplecticTableau; string and tableau " "have different numbers of qubits"); @@ -281,39 +312,40 @@ void SymplecticTableau::apply_pauli_gadget( // From here, half_pis == 1 or 3 // They act the same except for a phase flip on the product term - MatrixXb pauli_xrow = MatrixXb::Zero(1, n_qubits_); - MatrixXb pauli_zrow = MatrixXb::Zero(1, n_qubits_); - for (unsigned i = 0; i < n_qubits_; ++i) { + MatrixXb pauli_xrow = MatrixXb::Zero(1, n_qubits); + MatrixXb pauli_zrow = MatrixXb::Zero(1, n_qubits); + for (unsigned i = 0; i < n_qubits; ++i) { Pauli p = pauli.string.at(i); pauli_xrow(i) = (p == Pauli::X) || (p == Pauli::Y); pauli_zrow(i) = (p == Pauli::Z) || (p == Pauli::Y); } - bool phase = pauli.is_real_negative() ^ (half_pis == 3); + bool phase_flip = pauli.is_real_negative() ^ (half_pis == 3); - for (unsigned i = 0; i < n_rows_; ++i) { + for (unsigned i = 0; i < get_n_rows(); ++i) { bool anti = false; - MatrixXb::RowXpr xr = xmat_.row(i); - MatrixXb::RowXpr zr = zmat_.row(i); - for (unsigned q = 0; q < n_qubits_; ++q) { + MatrixXb::RowXpr xr = xmat.row(i); + MatrixXb::RowXpr zr = zmat.row(i); + for (unsigned q = 0; q < n_qubits; ++q) { anti ^= (xr(q) && pauli_zrow(q)); anti ^= (zr(q) && pauli_xrow(q)); } if (anti) { row_mult( - xr, zr, phase_(i), pauli_xrow.row(0), pauli_zrow.row(0), phase, i_, - xr, zr, phase_(i)); + xr, zr, phase(i), pauli_xrow.row(0), pauli_zrow.row(0), phase_flip, + i_, xr, zr, phase(i)); } } } MatrixXb SymplecticTableau::anticommuting_rows() const { - MatrixXb res = MatrixXb::Zero(n_rows_, n_rows_); - for (unsigned i = 0; i < n_rows_; ++i) { + unsigned n_rows = get_n_rows(); + MatrixXb res = MatrixXb::Zero(n_rows, n_rows); + for (unsigned i = 0; i < n_rows; ++i) { for (unsigned j = 0; j < i; ++j) { bool anti = false; - for (unsigned q = 0; q < n_qubits_; ++q) { - anti ^= (xmat_(i, q) && zmat_(j, q)); - anti ^= (xmat_(j, q) && zmat_(i, q)); + for (unsigned q = 0; q < get_n_qubits(); ++q) { + anti ^= (xmat(i, q) && zmat(j, q)); + anti ^= (xmat(j, q) && zmat(i, q)); } res(i, j) = anti; res(j, i) = anti; @@ -327,32 +359,33 @@ unsigned SymplecticTableau::rank() const { SymplecticTableau copy(*this); copy.gaussian_form(); unsigned empty_rows = 0; - for (unsigned i = 0; i < n_rows_; ++i) { - if (copy.xmat_.row(n_rows_ - 1 - i).isZero() && - copy.zmat_.row(n_rows_ - 1 - i).isZero()) + unsigned n_rows = get_n_rows(); + for (unsigned i = 0; i < n_rows; ++i) { + if (copy.xmat.row(n_rows - 1 - i).isZero() && + copy.zmat.row(n_rows - 1 - i).isZero()) ++empty_rows; else break; } - return n_rows_ - empty_rows; + return n_rows - empty_rows; } SymplecticTableau SymplecticTableau::conjugate() const { SymplecticTableau conj(*this); - for (unsigned i = 0; i < n_rows_; ++i) { + for (unsigned i = 0; i < get_n_rows(); ++i) { unsigned sum = 0; - for (unsigned j = 0; j < n_qubits_; ++j) { - if (xmat_(i, j) && zmat_(i, j)) ++sum; + for (unsigned j = 0; j < get_n_qubits(); ++j) { + if (xmat(i, j) && zmat(i, j)) ++sum; } - if (sum % 2 == 1) conj.phase_(i) ^= true; + if (sum % 2 == 1) conj.phase(i) ^= true; } return conj; } void SymplecticTableau::gaussian_form() { - MatrixXb fullmat = MatrixXb::Zero(n_rows_, 2 * n_qubits_); - fullmat(Eigen::all, Eigen::seq(0, Eigen::last, 2)) = xmat_; - fullmat(Eigen::all, Eigen::seq(1, Eigen::last, 2)) = zmat_; + MatrixXb fullmat = MatrixXb::Zero(get_n_rows(), 2 * get_n_qubits()); + fullmat(Eigen::all, Eigen::seq(0, Eigen::last, 2)) = xmat; + fullmat(Eigen::all, Eigen::seq(1, Eigen::last, 2)) = zmat; std::vector> row_ops = gaussian_elimination_row_ops(fullmat); for (const std::pair &op : row_ops) { @@ -366,7 +399,7 @@ void SymplecticTableau::row_mult( Complex phase, MatrixXb::RowXpr &xw, MatrixXb::RowXpr &zw, bool &pw) { if (pa) phase *= -1; if (pb) phase *= -1; - for (unsigned i = 0; i < n_qubits_; i++) { + for (unsigned i = 0; i < get_n_qubits(); i++) { std::pair res = BoolPauli::mult_lut.at({{xa(i), za(i)}, {xb(i), zb(i)}}); xw(i) = res.first.x; @@ -379,18 +412,18 @@ void SymplecticTableau::row_mult( void SymplecticTableau::col_mult( const MatrixXb::ColXpr &a, const MatrixXb::ColXpr &b, bool flip, MatrixXb::ColXpr &w, VectorXb &pw) { - for (unsigned i = 0; i < n_rows_; i++) { + for (unsigned i = 0; i < get_n_rows(); i++) { pw(i) = pw(i) ^ (a(i) && (b(i) ^ flip)); w(i) = a(i) ^ b(i); } } void to_json(nlohmann::json &j, const SymplecticTableau &tab) { - j["nrows"] = tab.n_rows_; - j["nqubits"] = tab.n_qubits_; - j["xmat"] = tab.xmat_; - j["zmat"] = tab.zmat_; - j["phase"] = tab.phase_; + j["nrows"] = tab.get_n_rows(); + j["nqubits"] = tab.get_n_qubits(); + j["xmat"] = tab.xmat; + j["zmat"] = tab.zmat; + j["phase"] = tab.phase; } void from_json(const nlohmann::json &j, SymplecticTableau &tab) { diff --git a/tket/src/Clifford/UnitaryTableau.cpp b/tket/src/Clifford/UnitaryTableau.cpp index 4f0527c949..80b9dffd53 100644 --- a/tket/src/Clifford/UnitaryTableau.cpp +++ b/tket/src/Clifford/UnitaryTableau.cpp @@ -155,6 +155,16 @@ void UnitaryTableau::apply_S_at_end(const Qubit& qb) { tab_.apply_S(uqb); } +void UnitaryTableau::apply_Z_at_front(const Qubit& qb) { + unsigned uqb = qubits_.left.at(qb); + tab_.phase(uqb) = !tab_.phase(uqb); +} + +void UnitaryTableau::apply_Z_at_end(const Qubit& qb) { + unsigned uqb = qubits_.left.at(qb); + tab_.apply_Z(uqb); +} + void UnitaryTableau::apply_V_at_front(const Qubit& qb) { unsigned uqb = qubits_.left.at(qb); tab_.row_mult(uqb, uqb + qubits_.size(), -i_); @@ -165,6 +175,31 @@ void UnitaryTableau::apply_V_at_end(const Qubit& qb) { tab_.apply_V(uqb); } +void UnitaryTableau::apply_X_at_front(const Qubit& qb) { + unsigned uqb = qubits_.left.at(qb); + tab_.phase(uqb + qubits_.size()) = !tab_.phase(uqb + qubits_.size()); +} + +void UnitaryTableau::apply_X_at_end(const Qubit& qb) { + unsigned uqb = qubits_.left.at(qb); + tab_.apply_X(uqb); +} + +void UnitaryTableau::apply_H_at_front(const Qubit& qb) { + unsigned uqb = qubits_.left.at(qb); + unsigned n_qubits = qubits_.size(); + bool temp = tab_.phase(uqb); + tab_.phase(uqb) = tab_.phase(uqb + n_qubits); + tab_.phase(uqb + n_qubits) = temp; + tab_.xmat.row(uqb).swap(tab_.xmat.row(uqb + n_qubits)); + tab_.zmat.row(uqb).swap(tab_.zmat.row(uqb + n_qubits)); +} + +void UnitaryTableau::apply_H_at_end(const Qubit& qb) { + unsigned uqb = qubits_.left.at(qb); + tab_.apply_H(uqb); +} + void UnitaryTableau::apply_CX_at_front( const Qubit& control, const Qubit& target) { unsigned uc = qubits_.left.at(control); @@ -184,20 +219,16 @@ void UnitaryTableau::apply_gate_at_front( OpType type, const qubit_vector_t& qbs) { switch (type) { case OpType::Z: { - apply_S_at_front(qbs.at(0)); - apply_S_at_front(qbs.at(0)); + apply_Z_at_front(qbs.at(0)); break; } case OpType::X: { - apply_V_at_front(qbs.at(0)); - apply_V_at_front(qbs.at(0)); + apply_X_at_front(qbs.at(0)); break; } case OpType::Y: { - apply_S_at_front(qbs.at(0)); - apply_S_at_front(qbs.at(0)); - apply_V_at_front(qbs.at(0)); - apply_V_at_front(qbs.at(0)); + apply_Z_at_front(qbs.at(0)); + apply_X_at_front(qbs.at(0)); break; } case OpType::S: { @@ -206,24 +237,22 @@ void UnitaryTableau::apply_gate_at_front( } case OpType::Sdg: { apply_S_at_front(qbs.at(0)); - apply_S_at_front(qbs.at(0)); - apply_S_at_front(qbs.at(0)); + apply_Z_at_front(qbs.at(0)); break; } - case OpType::V: { + case OpType::V: + case OpType::SX: { apply_V_at_front(qbs.at(0)); break; } - case OpType::Vdg: { - apply_V_at_front(qbs.at(0)); - apply_V_at_front(qbs.at(0)); + case OpType::Vdg: + case OpType::SXdg: { apply_V_at_front(qbs.at(0)); + apply_X_at_front(qbs.at(0)); break; } case OpType::H: { - apply_S_at_front(qbs.at(0)); - apply_V_at_front(qbs.at(0)); - apply_S_at_front(qbs.at(0)); + apply_H_at_front(qbs.at(0)); break; } case OpType::CX: { @@ -234,18 +263,13 @@ void UnitaryTableau::apply_gate_at_front( apply_S_at_front(qbs.at(1)); apply_CX_at_front(qbs.at(0), qbs.at(1)); apply_S_at_front(qbs.at(1)); - apply_S_at_front(qbs.at(1)); - apply_S_at_front(qbs.at(1)); + apply_Z_at_front(qbs.at(1)); break; } case OpType::CZ: { - apply_S_at_front(qbs.at(1)); - apply_V_at_front(qbs.at(1)); - apply_S_at_front(qbs.at(1)); + apply_H_at_front(qbs.at(1)); apply_CX_at_front(qbs.at(0), qbs.at(1)); - apply_S_at_front(qbs.at(1)); - apply_V_at_front(qbs.at(1)); - apply_S_at_front(qbs.at(1)); + apply_H_at_front(qbs.at(1)); break; } case OpType::SWAP: { @@ -258,6 +282,34 @@ void UnitaryTableau::apply_gate_at_front( apply_CX_at_front(qbs.at(0), qbs.at(2)); break; } + case OpType::ZZMax: { + apply_H_at_front(qbs.at(1)); + apply_S_at_front(qbs.at(0)); + apply_V_at_front(qbs.at(1)); + apply_CX_at_front(qbs.at(0), qbs.at(1)); + apply_H_at_front(qbs.at(1)); + break; + } + case OpType::ECR: { + apply_CX_at_front(qbs.at(0), qbs.at(1)); + apply_X_at_front(qbs.at(0)); + apply_S_at_front(qbs.at(0)); + apply_V_at_front(qbs.at(1)); + apply_X_at_front(qbs.at(1)); + break; + } + case OpType::ISWAPMax: { + apply_V_at_front(qbs.at(0)); + apply_V_at_front(qbs.at(1)); + apply_CX_at_front(qbs.at(0), qbs.at(1)); + apply_V_at_front(qbs.at(0)); + apply_S_at_front(qbs.at(1)); + apply_Z_at_front(qbs.at(1)); + apply_CX_at_front(qbs.at(0), qbs.at(1)); + apply_V_at_front(qbs.at(0)); + apply_V_at_front(qbs.at(1)); + break; + } case OpType::noop: case OpType::Phase: { break; @@ -383,8 +435,8 @@ UnitaryTableau UnitaryTableau::dagger() const { for (unsigned j = 0; j < nqb; ++j) { // Take effect of some input on some output and invert auto inv_cell = invert_cell_map().at( - {BoolPauli{tab_.xmat_(i, j), tab_.zmat_(i, j)}, - BoolPauli{tab_.xmat_(i + nqb, j), tab_.zmat_(i + nqb, j)}}); + {BoolPauli{tab_.xmat(i, j), tab_.zmat(i, j)}, + BoolPauli{tab_.xmat(i + nqb, j), tab_.zmat(i + nqb, j)}}); // Transpose tableau and fill in cell dxx(j, i) = inv_cell.first.x; dxz(j, i) = inv_cell.first.z; @@ -399,9 +451,9 @@ UnitaryTableau UnitaryTableau::dagger() const { // Correct phases for (unsigned i = 0; i < nqb; ++i) { SpPauliStabiliser xr = dag.get_xrow(qubits_.right.at(i)); - dag.tab_.phase_(i) = get_row_product(xr).is_real_negative(); + dag.tab_.phase(i) = get_row_product(xr).is_real_negative(); SpPauliStabiliser zr = dag.get_zrow(qubits_.right.at(i)); - dag.tab_.phase_(i + nqb) = get_row_product(zr).is_real_negative(); + dag.tab_.phase(i + nqb) = get_row_product(zr).is_real_negative(); } return dag; @@ -422,14 +474,14 @@ std::ostream& operator<<(std::ostream& os, const UnitaryTableau& tab) { unsigned nqs = tab.qubits_.size(); for (unsigned i = 0; i < nqs; ++i) { Qubit qi = tab.qubits_.right.at(i); - os << "X@" << qi.repr() << "\t->\t" << tab.tab_.xmat_.row(i) << " " - << tab.tab_.zmat_.row(i) << " " << tab.tab_.phase_(i) << std::endl; + os << "X@" << qi.repr() << "\t->\t" << tab.tab_.xmat.row(i) << " " + << tab.tab_.zmat.row(i) << " " << tab.tab_.phase(i) << std::endl; } os << "--" << std::endl; for (unsigned i = 0; i < nqs; ++i) { Qubit qi = tab.qubits_.right.at(i); - os << "Z@" << qi.repr() << "\t->\t" << tab.tab_.xmat_.row(i + nqs) << " " - << tab.tab_.zmat_.row(i + nqs) << " " << tab.tab_.phase_(i + nqs) + os << "Z@" << qi.repr() << "\t->\t" << tab.tab_.xmat.row(i + nqs) << " " + << tab.tab_.zmat.row(i + nqs) << " " << tab.tab_.phase(i + nqs) << std::endl; } return os; @@ -446,13 +498,13 @@ bool UnitaryTableau::operator==(const UnitaryTableau& other) const { for (unsigned j = 0; j < nq; ++j) { Qubit qj = qubits_.right.at(j); unsigned oj = other.qubits_.left.at(qj); - if (tab_.xmat_(i, j) != other.tab_.xmat_(oi, oj)) return false; - if (tab_.zmat_(i, j) != other.tab_.zmat_(oi, oj)) return false; - if (tab_.xmat_(i + nq, j) != other.tab_.xmat_(oi + nq, oj)) return false; - if (tab_.zmat_(i + nq, j) != other.tab_.zmat_(oi + nq, oj)) return false; + if (tab_.xmat(i, j) != other.tab_.xmat(oi, oj)) return false; + if (tab_.zmat(i, j) != other.tab_.zmat(oi, oj)) return false; + if (tab_.xmat(i + nq, j) != other.tab_.xmat(oi + nq, oj)) return false; + if (tab_.zmat(i + nq, j) != other.tab_.zmat(oi + nq, oj)) return false; } - if (tab_.phase_(i) != other.tab_.phase_(oi)) return false; - if (tab_.phase_(i + nq) != other.tab_.phase_(oi + nq)) return false; + if (tab_.phase(i) != other.tab_.phase(oi)) return false; + if (tab_.phase(i + nq) != other.tab_.phase(oi + nq)) return false; } return true; @@ -524,6 +576,14 @@ void UnitaryRevTableau::apply_S_at_end(const Qubit& qb) { tab_.apply_pauli_at_front(SpPauliStabiliser(qb, Pauli::Z), 3); } +void UnitaryRevTableau::apply_Z_at_front(const Qubit& qb) { + tab_.apply_Z_at_end(qb); +} + +void UnitaryRevTableau::apply_Z_at_end(const Qubit& qb) { + tab_.apply_Z_at_front(qb); +} + void UnitaryRevTableau::apply_V_at_front(const Qubit& qb) { tab_.apply_pauli_at_end(SpPauliStabiliser(qb, Pauli::X), 3); } @@ -532,6 +592,22 @@ void UnitaryRevTableau::apply_V_at_end(const Qubit& qb) { tab_.apply_pauli_at_front(SpPauliStabiliser(qb, Pauli::X), 3); } +void UnitaryRevTableau::apply_X_at_front(const Qubit& qb) { + tab_.apply_X_at_end(qb); +} + +void UnitaryRevTableau::apply_X_at_end(const Qubit& qb) { + tab_.apply_X_at_front(qb); +} + +void UnitaryRevTableau::apply_H_at_front(const Qubit& qb) { + tab_.apply_H_at_end(qb); +} + +void UnitaryRevTableau::apply_H_at_end(const Qubit& qb) { + tab_.apply_H_at_front(qb); +} + void UnitaryRevTableau::apply_CX_at_front( const Qubit& control, const Qubit& target) { tab_.apply_CX_at_end(control, target); @@ -544,14 +620,54 @@ void UnitaryRevTableau::apply_CX_at_end( void UnitaryRevTableau::apply_gate_at_front( OpType type, const qubit_vector_t& qbs) { - if (type != OpType::Phase) - tab_.apply_gate_at_end(get_op_ptr(type)->dagger()->get_type(), qbs); + // Handle types whose dagger is not an optype + switch (type) { + case OpType::ZZMax: { + tab_.apply_gate_at_end(OpType::ZZMax, qbs); + tab_.apply_gate_at_end(OpType::Z, {qbs.at(0)}); + tab_.apply_gate_at_end(OpType::Z, {qbs.at(1)}); + break; + } + case OpType::ISWAPMax: { + tab_.apply_gate_at_end(OpType::ISWAPMax, qbs); + tab_.apply_gate_at_end(OpType::Z, {qbs.at(0)}); + tab_.apply_gate_at_end(OpType::Z, {qbs.at(1)}); + break; + } + case OpType::Phase: { + break; + } + default: { + tab_.apply_gate_at_end(get_op_ptr(type)->dagger()->get_type(), qbs); + break; + } + } } void UnitaryRevTableau::apply_gate_at_end( OpType type, const qubit_vector_t& qbs) { - if (type != OpType::Phase) - tab_.apply_gate_at_front(get_op_ptr(type)->dagger()->get_type(), qbs); + // Handle types whose dagger is not an optype + switch (type) { + case OpType::ZZMax: { + tab_.apply_gate_at_front(OpType::ZZMax, qbs); + tab_.apply_gate_at_front(OpType::Z, {qbs.at(0)}); + tab_.apply_gate_at_front(OpType::Z, {qbs.at(1)}); + break; + } + case OpType::ISWAPMax: { + tab_.apply_gate_at_front(OpType::ISWAPMax, qbs); + tab_.apply_gate_at_front(OpType::Z, {qbs.at(0)}); + tab_.apply_gate_at_front(OpType::Z, {qbs.at(1)}); + break; + } + case OpType::Phase: { + break; + } + default: { + tab_.apply_gate_at_front(get_op_ptr(type)->dagger()->get_type(), qbs); + break; + } + } } void UnitaryRevTableau::apply_pauli_at_front( @@ -593,16 +709,16 @@ std::ostream& operator<<(std::ostream& os, const UnitaryRevTableau& tab) { unsigned nqs = tab.tab_.qubits_.size(); for (unsigned i = 0; i < nqs; ++i) { Qubit qi = tab.tab_.qubits_.right.at(i); - os << tab.tab_.tab_.xmat_.row(i) << " " << tab.tab_.tab_.zmat_.row(i) - << " " << tab.tab_.tab_.phase_(i) << "\t->\t" + os << tab.tab_.tab_.xmat.row(i) << " " << tab.tab_.tab_.zmat.row(i) + << " " << tab.tab_.tab_.phase(i) << "\t->\t" << "X@" << qi.repr() << std::endl; } os << "--" << std::endl; for (unsigned i = 0; i < nqs; ++i) { Qubit qi = tab.tab_.qubits_.right.at(i); - os << tab.tab_.tab_.xmat_.row(i + nqs) << " " - << tab.tab_.tab_.zmat_.row(i + nqs) << " " - << tab.tab_.tab_.phase_(i + nqs) << "\t->\t" + os << tab.tab_.tab_.xmat.row(i + nqs) << " " + << tab.tab_.tab_.zmat.row(i + nqs) << " " + << tab.tab_.tab_.phase(i + nqs) << "\t->\t" << "Z@" << qi.repr() << std::endl; } return os; diff --git a/tket/src/Converters/ChoiMixTableauConverters.cpp b/tket/src/Converters/ChoiMixTableauConverters.cpp index 5a57e16cc8..450cd9208c 100644 --- a/tket/src/Converters/ChoiMixTableauConverters.cpp +++ b/tket/src/Converters/ChoiMixTableauConverters.cpp @@ -13,7 +13,6 @@ // limitations under the License. #include -#include #include "tket/Converters/Converters.hpp" #include "tket/Diagonalisation/Diagonalisation.hpp" @@ -30,637 +29,729 @@ ChoiMixTableau circuit_to_cm_tableau(const Circuit& circ) { qubit_vector_t qbs = {args.begin(), args.end()}; tab.apply_gate(com.get_op_ptr()->get_type(), qbs); } + tab.rename_qubits( + circ.implicit_qubit_permutation(), + ChoiMixTableau::TableauSegment::Output); for (const Qubit& q : circ.discarded_qubits()) { tab.discard_qubit(q); } + tab.canonical_column_order(); + tab.gaussian_form(); return tab; } -std::pair cm_tableau_to_circuit(const ChoiMixTableau& t) { +struct ChoiMixBuilder { /** - * THE PLAN: - * We first identify and solve all post-selections by Gaussian elimination and - * diagonalisation of the input-only rows. This provides us with better - * guarantees about the form of the stabilizers generated by the remaining - * tableau - specifically that every possible stabilizer will involve at least - * some output portion, so out_qb will always be set in later sections of the - * synthesis. Diagonalisation of the input-only rows reduces them to just Z - * strings but not necessarily over a minimal number of qubits. This can be - * achieved by taking the Z matrix of these rows and performing row-wise - * Gaussian elimination. The leading 1s indicate which qubits we are isolating - * them onto and the rest gives the CXs required to reduce them to just the - * leading qubits. After all post-selections have been identified, we enter - * the main loop of handling all other inputs and reducing them one at a time - * to either an identity wire or Z-decoherence (OpType::Collapse) connected to - * an output, or to a discard. Let in_qb be this qubit to be solved. Pick a - * row containing X_in_qb (if one exists). Since it must contain some - * non-identity component in the output segment, we can pick one of these to - * be out_qb and apply unitary gates at the input and output to reduce the row - * to X_in_qb X_out_qb. We do the same with Z (if a row exists) to necessarily - * give Z_in_qb Z_out_qb by commutativity properties, or we pick out_qb here - * if no X row was found. If we had both an X row and a Z row, we have reduced - * it to an identity wire just fine. If we have only one of them, e.g. X_in_qb - * X_out_qb, we wish to make it the only row with X on either in_qb or out_qb - * to leave a decoherence channel. We note that any other row containing - * X_out_qb must have some other P_out2, since their combination cannot leave - * an empty output segment. So we can apply a unitary gate to eliminate the - * X_out_qb on the other row. By doing output-first gaussian elimination on - * the output sub-tableau ignoring the target row and X_out_qb column, for - * each such row with X_out_qb there is some other output column P_out2 for - * which it is the unique entry, so we can be sure that applying the unitary - * gate does not add X_out_qb onto other rows. Having this strategy available - * to make it the unique row with X_out_qb still allows us to make it the - * unique row with X_in_qb by row combinations. Once all rows with inputs have - * been eliminated, any unsolved inputs must have been discarded and the - * remaining tableau is an inverse diagonalisation tableau (only outputs). + * We will consider applying gates to either side of the tableau to reduce + * qubits down to one of a few simple states (identity, collapse, zero + * initialise, mixed initialised, post-selected, or discarded), allowing us to + * remove that qubit and continue until the tableau contains no qubits left. + * This gradually builds up a set of operations both before and after the + * working tableau. We should ask for the following combination of temporary + * states to compose to form a channel equivalent to that described by the + * input tableau: + * - in_circ: a unitary circuit (without implicit permutations) + * - post_selected: a set of post-selection actions to apply to the outputs of + * in_circ + * - discarded: a set of discard actions to apply to the outputs of in_circ + * - collapsed: a set of collapse actions to apply to the outputs of in_circ + * (i.e. decoherence in the Z basis) + * - tab: the remaining tableau still to be solved. Acting as an identity on + * any qubits not contained within tab + * - in_out_permutation: a permutation of the qubits, read as a map from the + * input qubit name to the output qubit it is sent to + * - zero_initialised: a set of initialisations of fresh output qubits + * (in_out_permutation may join these qubits onto input qubits that have been + * post-selected or discarded to reuse qubits) + * - mix_initialised: a set of initialisations of output qubits into + * maximally-mixed states (in_out_permutation may similarly join these onto + * input qubits no longer in use) + * - out_circ_tp: the transpose of a unitary circuit (without implicit + * permuations); we store this as the transpose so we can build it up in + * reverse */ + Circuit in_circ; + std::set post_selected; + std::set discarded; + std::set collapsed; + ChoiMixTableau tab; + boost::bimap in_out_permutation; + std::set zero_initialised; + std::set mix_initialised; + Circuit out_circ_tp; + + // The CXConfigType preferred when invoking diagonalisation techniques + CXConfigType cx_config; + + // Additional qubit names (distinct from qubits already on the respective + // segment of the tableau) than can be used for zero initialisations and + // post-selections when synthesising a unitary extension + qubit_vector_t unitary_init_names; + qubit_vector_t unitary_post_names; + + // Initialises the builder with a tableau + explicit ChoiMixBuilder(const ChoiMixTableau& tab, CXConfigType cx_config); + // For synthesis of a unitary extension, initialises the builder with a + // tableau and some additional qubit names which the resulting circuit may + // optionally use, representing zero-initialised or post-selected qubits. + // These are the qubits on which we can freely add Zs to the rows of the given + // tableau to guarantee a unitary extension; none of these names should appear + // in tab + explicit ChoiMixBuilder( + const ChoiMixTableau& tab, CXConfigType cx_config, + const qubit_vector_t& init_names, const qubit_vector_t& post_names); + + // Debug method: applies all staged operations back onto tab to provide the + // tableau that the synthesis result is currently aiming towards. In exact + // synthesis, this should remain invariant during synthesis. For synthesis of + // a unitary extension, this should at least span the rows of the original + // tableau up to additional Zs on spare input and output qubits. + ChoiMixTableau realised_tableau() const; - // Operate on a copy of the tableau to track the remainder as we extract gates - ChoiMixTableau tab(t); + /** + * STAGES OF SYNTHESIS + */ - // Canonicalise tableau and perform output-first gaussian elimination to - // isolate post-selected subspace in lower rows - tab.canonical_column_order(ChoiMixTableau::TableauSegment::Output); - tab.gaussian_form(); + // Match up pairs of generators that anti-commute in the input segment but + // commute with all others; such pairs of rows reduce to an identity wire + // between a pair of qubits; we solve this by pairwise Pauli reduction methods + void solve_id_subspace(); + // After removing the identity subspace, all remaining rows mutually commute + // within each tableau segment; diagonalise each segment individually + void diagonalise_segments(); + // Solve the post-selected subspace which has already been diagonalised + void solve_postselected_subspace(); + // Solve the zero-initialised subspace which has already been diagonalised + void solve_initialised_subspace(); + // All remaining rows are in the collapsed subspace (each row is the unique + // stabilizer passing through some Collapse gate); solve it + void solve_collapsed_subspace(); + + // Simplifies the tableau by removing qubits on which all rows have I; such + // qubits are either discarded inputs or mixed-initialised outputs + void remove_unused_qubits(); + // For synthesis of a unitary extension, match up qubits from + // post-selected/zero-initialised with unitary_post_names/unitary_init_names + // and add them to in_out_permutation + void assign_init_post_names(); + // Fill out in_out_permutation to map all qubits; this typically takes the + // form of a standard qubit reuse pattern (e.g. discard and reinitialise) + void assign_remaining_names(); + // Once tab has been completely reduced to no rows and no qubits, compose the + // staged operations to build the output circuit and return the renaming map + // from output names of original tableau to the qubits of the returned circuit + // they are mapped to + std::pair output_circuit(); + std::pair unitary_output_circuit(); +}; + +std::pair cm_tableau_to_exact_circuit( + const ChoiMixTableau& tab, CXConfigType cx_config) { + ChoiMixBuilder builder(tab, cx_config); + builder.remove_unused_qubits(); + builder.solve_id_subspace(); + builder.diagonalise_segments(); + builder.solve_postselected_subspace(); + builder.solve_initialised_subspace(); + builder.solve_collapsed_subspace(); + builder.remove_unused_qubits(); + builder.assign_remaining_names(); + return builder.output_circuit(); +} - // Set up circuits for extracting gates into (in_circ is set up after - // diagonalising the post-selected subspace) - qubit_vector_t input_qubits, output_qubits; +std::pair cm_tableau_to_unitary_extension_circuit( + const ChoiMixTableau& tab, const std::vector& init_names, + const std::vector& post_names, CXConfigType cx_config) { + ChoiMixBuilder builder(tab, cx_config, init_names, post_names); + builder.remove_unused_qubits(); + builder.solve_id_subspace(); + builder.diagonalise_segments(); + builder.solve_postselected_subspace(); + builder.solve_initialised_subspace(); + builder.solve_collapsed_subspace(); + builder.remove_unused_qubits(); + builder.assign_init_post_names(); + builder.assign_remaining_names(); + return builder.unitary_output_circuit(); +} + +ChoiMixBuilder::ChoiMixBuilder(const ChoiMixTableau& t, CXConfigType cx) + : ChoiMixBuilder(t, cx, {}, {}) {} + +ChoiMixBuilder::ChoiMixBuilder( + const ChoiMixTableau& t, CXConfigType cx, const qubit_vector_t& inits, + const qubit_vector_t& posts) + : in_circ(), + post_selected(), + discarded(), + collapsed(), + tab(t), + in_out_permutation(), + zero_initialised(), + mix_initialised(), + out_circ_tp(), + cx_config(cx), + unitary_init_names(inits), + unitary_post_names(posts) { for (unsigned i = 0; i < tab.get_n_boundaries(); ++i) { ChoiMixTableau::col_key_t key = tab.col_index_.right.at(i); if (key.second == ChoiMixTableau::TableauSegment::Input) - input_qubits.push_back(key.first); + in_circ.add_qubit(key.first); else - output_qubits.push_back(key.first); + out_circ_tp.add_qubit(key.first); } - Circuit out_circ_tp(output_qubits, {}); - unit_map_t join_permutation; - std::set post_selected; - std::map> in_x_row; - std::map> in_z_row; - boost::bimap matched_qubits; - - // Call diagonalisation methods to diagonalise post-selected subspace - std::list to_diag; - for (unsigned r = tab.get_n_rows(); r > 0;) { - --r; - ChoiMixTableau::row_tensor_t rten = tab.get_row(r); - if (rten.second.size() != 0) { - // Reached the rows with non-empty output segment - break; - } - // Else, we add the row to the subspace - to_diag.push_back(rten.first); + for (const Qubit& init_q : unitary_init_names) { + if (tab.col_index_.left.find(ChoiMixTableau::col_key_t{ + init_q, ChoiMixTableau::TableauSegment::Input}) != + tab.col_index_.left.end()) + throw std::logic_error( + "Free qubit name for initialisation conflicts with existing live " + "input of ChoiMixTableau"); } - unsigned post_selected_size = to_diag.size(); - std::set diag_ins{input_qubits.begin(), input_qubits.end()}; - Circuit in_circ = mutual_diagonalise(to_diag, diag_ins, CXConfigType::Tree); - // Extract the dagger of each gate in order from tab - for (const Command& com : in_circ) { - auto args = com.get_args(); - qubit_vector_t qbs = {args.begin(), args.end()}; - tab.apply_gate( - com.get_op_ptr()->dagger()->get_type(), qbs, - ChoiMixTableau::TableauSegment::Input); + for (const Qubit& post_q : unitary_post_names) { + if (tab.col_index_.left.find(ChoiMixTableau::col_key_t{ + post_q, ChoiMixTableau::TableauSegment::Output}) != + tab.col_index_.left.end()) + throw std::logic_error( + "Free qubit name for post-selection conflicts with existing live " + "output of ChoiMixTableau"); } +} - // Diagonalised rows should still be at the bottom of the tableau - reduce - // them to a minimal set of qubits for post-selection by first reducing to - // upper echelon form - std::vector> row_ops = - gaussian_elimination_row_ops( - tab.tab_.zmat_.bottomRows(post_selected_size)); - for (const std::pair& op : row_ops) { - tab.tab_.row_mult(op.first, op.second); - } - // Obtain CX instructions as column operations - std::vector> col_ops = - gaussian_elimination_col_ops( - tab.tab_.zmat_.bottomRows(post_selected_size)); - // These gates will also swap qubits to isolate the post-selections on the - // first few qubits - this is fine as can be cleaned up later with peephole - // optimisations - for (const std::pair& op : col_ops) { - tab.tab_.apply_CX(op.first, op.second); - ChoiMixTableau::col_key_t ctrl = tab.col_index_.right.at(op.first); - ChoiMixTableau::col_key_t trgt = tab.col_index_.right.at(op.second); - in_circ.add_op(OpType::CX, {ctrl.first, trgt.first}); +ChoiMixTableau ChoiMixBuilder::realised_tableau() const { + ChoiMixTableau in_tab = circuit_to_cm_tableau(in_circ); + for (const Qubit& q : post_selected) + in_tab.post_select(q, ChoiMixTableau::TableauSegment::Output); + for (const Qubit& q : discarded) + in_tab.discard_qubit(q, ChoiMixTableau::TableauSegment::Output); + for (const Qubit& q : collapsed) + in_tab.collapse_qubit(q, ChoiMixTableau::TableauSegment::Output); + ChoiMixTableau out_tab = circuit_to_cm_tableau(out_circ_tp.transpose()); + for (const Qubit& q : zero_initialised) + out_tab.post_select(q, ChoiMixTableau::TableauSegment::Input); + for (const Qubit& q : mix_initialised) + out_tab.discard_qubit(q, ChoiMixTableau::TableauSegment::Input); + qubit_map_t out_in_permutation{}; + using perm_entry = boost::bimap::left_const_reference; + BOOST_FOREACH (perm_entry entry, in_out_permutation.left) { + out_in_permutation.insert({entry.second, entry.first}); } + out_tab.rename_qubits( + out_in_permutation, ChoiMixTableau::TableauSegment::Output); + return ChoiMixTableau::compose(ChoiMixTableau::compose(in_tab, tab), out_tab); +} - // Post-select rows - // TODO Post-selection op is not yet available in tket - replace this once - // implemented; an implementation hint is provided below - if (post_selected_size != 0) - throw std::logic_error( - "Not yet implemented: post-selection required during ChoiMixTableau " - "synthesis"); - // for (unsigned r = 0; r < post_selected_size; ++r) { - // ChoiMixTableau::row_tensor_t row = tab.get_row(tab.get_n_rows() - 1); - // if (row.second.string.map.size() != 0 || row.first.string.map.size() != 1 - // || row.first.string.map.begin()->second != Pauli::Z) throw - // std::logic_error("Unexpected error during post-selection identification - // in ChoiMixTableau synthesis"); Qubit post_selected_qb = - // row.first.string.map.begin()->first; if (row.second.coeff == -1.) - // in_circ.add_op(OpType::X, {post_selected_qb}); - // tab.remove_row(tab.get_n_rows() - 1); - // post_selected.insert(post_selected_qb); - // throw std::logic_error("Not yet implemented: post-selection required - // during ChoiMixTableau synthesis"); - // } - +void ChoiMixBuilder::solve_id_subspace() { // Input-first gaussian elimination to solve input-sides of remaining rows tab.canonical_column_order(ChoiMixTableau::TableauSegment::Input); tab.gaussian_form(); - // Iterate through remaining inputs and reduce output portion to a single - // qubit - for (const Qubit& in_qb : input_qubits) { - // Skip post-selected qubits - if (post_selected.find(in_qb) != post_selected.end()) continue; - - unsigned col = tab.col_index_.left.at(ChoiMixTableau::col_key_t{ - in_qb, ChoiMixTableau::TableauSegment::Input}); - std::optional out_qb = std::nullopt; + std::set solved_rows; + std::set solved_ins, solved_outs; + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + if (solved_rows.find(r) != solved_rows.end()) continue; - // Find the row with X_in_qb (if one exists) - std::optional x_row = std::nullopt; - for (unsigned r = 0; r < tab.get_n_rows(); ++r) { - if (tab.tab_.xmat_(r, col)) { - x_row = r; - break; - } + // Look for a row which anticommutes with row r over the inputs + std::list xcols, zcols; + for (unsigned c = 0; c < tab.get_n_inputs(); ++c) { + if (tab.tab_.xmat(r, c)) xcols.push_back(c); + if (tab.tab_.zmat(r, c)) zcols.push_back(c); } - - if (x_row) { - // A possible optimisation could involve row multiplications to reduce the - // Hamming weight of the row before applying gates, but minimising this - // would solve minimum weight/distance of a binary linear code whose - // decision problem is NP-complete (shown by Vardy, "The intractability of - // computing the minimum distance of a code", 1997). Just settle on using - // the first row for now, reducing the input and output to a single qubit - ChoiMixTableau::row_tensor_t row_paulis = tab.get_row(*x_row); - for (const std::pair& p : row_paulis.second.string) { - if (matched_qubits.right.find(p.first) == matched_qubits.right.end()) { - out_qb = p.first; - matched_qubits.insert({in_qb, *out_qb}); - break; - } + for (unsigned r2 = r + 1; r2 < tab.get_n_rows(); ++r2) { + if (solved_rows.find(r2) != solved_rows.end()) continue; + bool anti = false; + for (const unsigned c : xcols) anti ^= tab.tab_.zmat(r2, c); + for (const unsigned c : zcols) anti ^= tab.tab_.xmat(r2, c); + if (!anti) continue; + + // Found a candidate pair of rows. Because of the Gaussian elimination, it + // is more likely that the first mismatching qubit is X for r and Z for + // r2, so favour reducing r2 to Z and r to X + ChoiMixTableau::row_tensor_t row_r = tab.get_row(r); + ChoiMixTableau::row_tensor_t row_r2 = tab.get_row(r2); + std::pair in_diag_circ = + reduce_anticommuting_paulis_to_z_x( + row_r2.first, row_r.first, cx_config); + in_circ.append(in_diag_circ.first); + for (const Command& com : in_diag_circ.first) { + auto args = com.get_args(); + qubit_vector_t qbs = {args.begin(), args.end()}; + tab.apply_gate( + com.get_op_ptr()->dagger()->get_type(), qbs, + ChoiMixTableau::TableauSegment::Input); } - // Reduce input string to just X_in_qb - if (row_paulis.first.get(in_qb) == Pauli::Y) { - // If it is a Y, extract an Sdg gate so the Pauli is exactly X - in_circ.add_op(OpType::Sdg, {in_qb}); - tab.apply_S(in_qb, ChoiMixTableau::TableauSegment::Input); - } - for (const std::pair& qbp : row_paulis.first.string) { - if (qbp.first == in_qb) continue; - // Extract an entangling gate to eliminate the qubit - switch (qbp.second) { - case Pauli::X: { - in_circ.add_op(OpType::CX, {in_qb, qbp.first}); - tab.apply_CX( - in_qb, qbp.first, ChoiMixTableau::TableauSegment::Input); - break; - } - case Pauli::Y: { - in_circ.add_op(OpType::CY, {in_qb, qbp.first}); - tab.apply_gate( - OpType::CY, {in_qb, qbp.first}, - ChoiMixTableau::TableauSegment::Input); - break; - } - case Pauli::Z: { - in_circ.add_op(OpType::CZ, {in_qb, qbp.first}); - tab.apply_gate( - OpType::CZ, {in_qb, qbp.first}, - ChoiMixTableau::TableauSegment::Input); - break; - } - default: { - break; - } - } + // Since the full rows must commute but they anticommute over the inputs, + // they must also anticommute over the outputs; we similarly reduce these + // down to Z and X + std::pair out_diag_circ_dag = + reduce_anticommuting_paulis_to_z_x( + row_r2.second, row_r.second, cx_config); + out_circ_tp.append(out_diag_circ_dag.first.dagger().transpose()); + for (const Command& com : out_diag_circ_dag.first) { + auto args = com.get_args(); + qubit_vector_t qbs = {args.begin(), args.end()}; + tab.apply_gate( + com.get_op_ptr()->get_type(), qbs, + ChoiMixTableau::TableauSegment::Output); } - // And then the same for X_out_qb - if (row_paulis.second.get(*out_qb) == Pauli::Y) { - // If it is a Y, extract an Sdg gate so the Pauli is exactly X - out_circ_tp.add_op(OpType::Sdg, {*out_qb}); - tab.apply_S(*out_qb, ChoiMixTableau::TableauSegment::Output); - } else if (row_paulis.second.get(*out_qb) == Pauli::Z) { - // If it is a Z, extract an Vdg and Sdg gate so the Pauli is exactly X - out_circ_tp.add_op(OpType::Vdg, {*out_qb}); - out_circ_tp.add_op(OpType::Sdg, {*out_qb}); - tab.apply_V(*out_qb, ChoiMixTableau::TableauSegment::Output); - tab.apply_S(*out_qb, ChoiMixTableau::TableauSegment::Output); + // Check that rows have been successfully reduced + row_r = tab.get_row(r); + row_r2 = tab.get_row(r2); + if (row_r.first.size() != 1 || + row_r.first.string.begin()->second != Pauli::X || + row_r.second.size() != 1 || + row_r.second.string.begin()->second != Pauli::X || + row_r2.first.size() != 1 || + row_r2.first.string.begin()->second != Pauli::Z || + row_r2.second.size() != 1 || + row_r2.second.string.begin()->second != Pauli::Z) + throw std::logic_error( + "Unexpected error during identity reduction in ChoiMixTableau " + "synthesis"); + // Solve phases + if (row_r.second.is_real_negative()) { + in_circ.add_op(OpType::Z, {in_diag_circ.second}); + tab.apply_gate( + OpType::Z, {in_diag_circ.second}, + ChoiMixTableau::TableauSegment::Input); } - for (const std::pair& qbp : - row_paulis.second.string) { - if (qbp.first == *out_qb) continue; - // Extract an entangling gate to eliminate the qubit - switch (qbp.second) { - case Pauli::X: { - out_circ_tp.add_op(OpType::CX, {*out_qb, qbp.first}); - tab.apply_CX( - *out_qb, qbp.first, ChoiMixTableau::TableauSegment::Output); - break; - } - case Pauli::Y: { - // CY does not have a transpose OpType defined so decompose - out_circ_tp.add_op(OpType::S, {qbp.first}); - out_circ_tp.add_op(OpType::CX, {*out_qb, qbp.first}); - out_circ_tp.add_op(OpType::Sdg, {qbp.first}); - tab.apply_gate( - OpType::CY, {*out_qb, qbp.first}, - ChoiMixTableau::TableauSegment::Output); - break; - } - case Pauli::Z: { - out_circ_tp.add_op(OpType::CZ, {*out_qb, qbp.first}); - tab.apply_gate( - OpType::CZ, {*out_qb, qbp.first}, - ChoiMixTableau::TableauSegment::Output); - break; - } - default: { - break; - } - } + if (row_r2.second.is_real_negative()) { + in_circ.add_op(OpType::X, {in_diag_circ.second}); + tab.apply_gate( + OpType::X, {in_diag_circ.second}, + ChoiMixTableau::TableauSegment::Input); } - } - - // Find the row with Z_in_qb (if one exists) - std::optional z_row = std::nullopt; - for (unsigned r = 0; r < tab.get_n_rows(); ++r) { - if (tab.tab_.zmat_(r, col)) { - z_row = r; - break; + // Connect in permutation + in_out_permutation.insert( + {in_diag_circ.second, out_diag_circ_dag.second}); + solved_rows.insert(r); + solved_rows.insert(r2); + + // Remove these solved qubits from other rows; by commutation of rows, a + // row contains Z@in_diag_circ.second iff it contains + // Z@out_diag_circ_dag.second and similarly for X + unsigned in_c = tab.col_index_.left.at(ChoiMixTableau::col_key_t{ + in_diag_circ.second, ChoiMixTableau::TableauSegment::Input}); + for (unsigned r3 = 0; r3 < tab.get_n_rows(); ++r3) { + if (r3 != r && tab.tab_.xmat(r3, in_c)) tab.tab_.row_mult(r, r3); + if (r3 != r2 && tab.tab_.zmat(r3, in_c)) tab.tab_.row_mult(r2, r3); } - } - if (z_row) { - // If both an X and Z row exist, then out_qb should have a - // value and the rows should have anticommuting Paulis on out_qb to - // preserve commutativity of rows - ChoiMixTableau::row_tensor_t row_paulis = tab.get_row(*z_row); - if (!x_row) { - for (const std::pair& p : - row_paulis.second.string) { - if (matched_qubits.right.find(p.first) == - matched_qubits.right.end()) { - out_qb = p.first; - matched_qubits.insert({in_qb, *out_qb}); - break; - } - } - } - - // Reduce input string to just Z_in_qb. - // No need to consider different paulis on in_qb: if we had X or Y, this - // row would have been identified as x_row instead of Z row, and if - // another row was already chosen as x_row then canonical gaussian form - // would imply all other rows do not contain X_in_qb or Y_in_qb - for (const std::pair& qbp : row_paulis.first.string) { - if (qbp.first == in_qb) continue; - // Extract an entangling gate to eliminate the qubit - switch (qbp.second) { - case Pauli::X: { - in_circ.add_op(OpType::H, {qbp.first}); - in_circ.add_op(OpType::CX, {qbp.first, in_qb}); - tab.apply_gate( - OpType::H, {qbp.first}, ChoiMixTableau::TableauSegment::Input); - tab.apply_CX( - qbp.first, in_qb, ChoiMixTableau::TableauSegment::Input); - break; - } - case Pauli::Y: { - in_circ.add_op(OpType::Vdg, {qbp.first}); - in_circ.add_op(OpType::CX, {qbp.first, in_qb}); - tab.apply_V(qbp.first, ChoiMixTableau::TableauSegment::Input); - tab.apply_CX( - qbp.first, in_qb, ChoiMixTableau::TableauSegment::Input); - break; - } - case Pauli::Z: { - in_circ.add_op(OpType::CX, {qbp.first, in_qb}); - tab.apply_CX( - qbp.first, in_qb, ChoiMixTableau::TableauSegment::Input); - break; - } - default: { - break; - } - } - } - - // And then reduce output string to just Z_out_qb - if (row_paulis.second.get(*out_qb) == Pauli::Y) { - // If it is a Y, extract a Vdg gate so the Pauli is exactly Z - out_circ_tp.add_op(OpType::Vdg, {*out_qb}); - tab.apply_V(*out_qb, ChoiMixTableau::TableauSegment::Output); - } else if (row_paulis.second.get(*out_qb) == Pauli::X) { - // If it is an X, extract an Sdg and Vdg gate so the Pauli is exactly Z - // We do not need to care about messing up the X row here since if we - // solved an X row then this row can't also have X by commutativity - out_circ_tp.add_op(OpType::Sdg, {*out_qb}); - out_circ_tp.add_op(OpType::Vdg, {*out_qb}); - tab.apply_S(*out_qb, ChoiMixTableau::TableauSegment::Output); - tab.apply_V(*out_qb, ChoiMixTableau::TableauSegment::Output); - } - for (const std::pair& qbp : - row_paulis.second.string) { - if (qbp.first == *out_qb) continue; - // Extract an entangling gate to eliminate the qubit - switch (qbp.second) { - case Pauli::X: { - out_circ_tp.add_op(OpType::H, {qbp.first}); - out_circ_tp.add_op(OpType::CX, {qbp.first, *out_qb}); - tab.apply_gate( - OpType::H, {qbp.first}, ChoiMixTableau::TableauSegment::Output); - tab.apply_CX( - qbp.first, *out_qb, ChoiMixTableau::TableauSegment::Output); - break; - } - case Pauli::Y: { - out_circ_tp.add_op(OpType::Vdg, {qbp.first}); - out_circ_tp.add_op(OpType::CX, {qbp.first, *out_qb}); - tab.apply_V(qbp.first, ChoiMixTableau::TableauSegment::Output); - tab.apply_CX( - qbp.first, *out_qb, ChoiMixTableau::TableauSegment::Output); - break; - } - case Pauli::Z: { - out_circ_tp.add_op(OpType::CX, {qbp.first, *out_qb}); - tab.apply_CX( - qbp.first, *out_qb, ChoiMixTableau::TableauSegment::Output); - break; - } - default: { - break; - } - } - } - } - - in_x_row.insert({in_qb, x_row}); - in_z_row.insert({in_qb, z_row}); - } - - // X and Z row are guaranteed to be the unique rows with X_in_qb and Z_in_qb. - // If the Z row exists, then all rows must commute with Z_in_qb Z_out_qb, so - // if any row has X_out_qb it must also have X_in_qb. Hence if both exist then - // the X row is also the unique row with X_out_qb, and by similar argument the - // Z row is the unique row with Z_out_qb. However, if only one row exists, - // this uniqueness may not hold but can be forced by applying some unitary - // gates to eliminate e.g. Z_out_qb from all other rows. We use a gaussian - // elimination subroutine to identify a combination of gates that won't add - // Z_out_qb onto other qubits. Since we have already removed them from all - // other rows containing input components, we only need to consider the - // output-only rows, which all exist at the bottom of the tableau. - unsigned out_stabs = 0; - while (out_stabs < tab.get_n_rows()) { - ChoiMixTableau::row_tensor_t rten = - tab.get_row(tab.get_n_rows() - 1 - out_stabs); - if (rten.first.size() != 0) { - // Reached the rows with non-empty input segment + solved_ins.insert({in_diag_circ.second}); + solved_outs.insert({out_diag_circ_dag.second}); break; } - ++out_stabs; - } - MatrixXb out_rows = MatrixXb::Zero(out_stabs, 2 * output_qubits.size()); - out_rows(Eigen::all, Eigen::seq(0, Eigen::last, 2)) = tab.tab_.xmat_.block( - tab.get_n_rows() - out_stabs, input_qubits.size(), out_stabs, - output_qubits.size()); - out_rows(Eigen::all, Eigen::seq(1, Eigen::last, 2)) = tab.tab_.zmat_.block( - tab.get_n_rows() - out_stabs, input_qubits.size(), out_stabs, - output_qubits.size()); - // Identify other qubits to apply gates to for removing the extra matched - // output terms - MatrixXb unmatched_outs = MatrixXb::Zero( - out_stabs, 2 * (output_qubits.size() - matched_qubits.size())); - std::vector> col_lookup; - for (unsigned out_col = 0; out_col < output_qubits.size(); ++out_col) { - unsigned tab_col = input_qubits.size() + out_col; - Qubit out_qb = tab.col_index_.right.at(tab_col).first; - if (matched_qubits.right.find(out_qb) != matched_qubits.right.end()) - continue; - unmatched_outs.col(col_lookup.size()) = out_rows.col(2 * out_col); - col_lookup.push_back({out_qb, Pauli::X}); - unmatched_outs.col(col_lookup.size()) = out_rows.col(2 * out_col + 1); - col_lookup.push_back({out_qb, Pauli::Z}); - } - row_ops = gaussian_elimination_row_ops(unmatched_outs); - for (const std::pair& op : row_ops) { - for (unsigned c = 0; c < unmatched_outs.cols(); ++c) { - unmatched_outs(op.second, c) = - unmatched_outs(op.second, c) ^ unmatched_outs(op.first, c); - } - tab.tab_.row_mult( - tab.get_n_rows() - out_stabs + op.first, - tab.get_n_rows() - out_stabs + op.second); - } - // Go through the output-only rows and remove terms from matched qubits - for (unsigned r = 0; r < out_stabs; ++r) { - unsigned leading_col = 0; - for (unsigned c = 0; c < unmatched_outs.cols(); ++c) { - if (unmatched_outs(r, c)) { - leading_col = c; - break; - } - } - std::pair alternate_qb = col_lookup.at(leading_col); - - if (alternate_qb.second != Pauli::X) { - // Make the alternate point of contact X so we only need one set of rule - // for eliminating Paulis - tab.apply_gate( - OpType::H, {alternate_qb.first}, - ChoiMixTableau::TableauSegment::Output); - out_circ_tp.add_op(OpType::H, {alternate_qb.first}); - } - - ChoiMixTableau::row_tensor_t row_paulis = - tab.get_row(tab.get_n_rows() - out_stabs + r); - - for (const std::pair& qbp : row_paulis.second.string) { - if (matched_qubits.right.find(qbp.first) == matched_qubits.right.end()) - continue; - // Alternate point is guaranteed to be unmatched, so always needs an - // entangling gate - switch (qbp.second) { - case Pauli::X: { - out_circ_tp.add_op( - OpType::CX, {alternate_qb.first, qbp.first}); - tab.apply_CX( - alternate_qb.first, qbp.first, - ChoiMixTableau::TableauSegment::Output); - break; - } - case Pauli::Z: { - out_circ_tp.add_op( - OpType::CZ, {alternate_qb.first, qbp.first}); - tab.apply_gate( - OpType::CZ, {alternate_qb.first, qbp.first}, - ChoiMixTableau::TableauSegment::Output); - break; - } - default: { - // Don't have to care about Y since any matched qubit has a row that - // is reduced to either X or Z and all other rows must commute with - // that - break; - } - } - } } - // Now that X_in_qb X_out_qb (or Zs) is the unique row for each of X_in_qb and - // X_out_qb, we can actually link up the qubit wires and remove the rows - for (const Qubit& in_qb : input_qubits) { - if (post_selected.find(in_qb) != post_selected.end()) continue; - - std::optional x_row = in_x_row.at(in_qb); - std::optional z_row = in_z_row.at(in_qb); - auto found = matched_qubits.left.find(in_qb); - std::optional out_qb = (found == matched_qubits.left.end()) - ? std::nullopt - : std::optional{found->second}; - // Handle phases and resolve qubit connections - if (x_row) { - if (z_row) { - // Hook up with an identity wire - if (tab.tab_.phase_(*z_row)) in_circ.add_op(OpType::X, {in_qb}); - if (tab.tab_.phase_(*x_row)) in_circ.add_op(OpType::Z, {in_qb}); - join_permutation.insert({*out_qb, in_qb}); - } else { - // Just an X row, so must be connected to out_qb via a decoherence - if (tab.tab_.phase_(*x_row)) in_circ.add_op(OpType::Z, {in_qb}); - in_circ.add_op(OpType::H, {in_qb}); - in_circ.add_op(OpType::Collapse, {in_qb}); - in_circ.add_op(OpType::H, {in_qb}); - join_permutation.insert({*out_qb, in_qb}); - } - } else { - if (z_row) { - // Just a Z row, so must be connected to out_qb via a decoherence - if (tab.tab_.phase_(*z_row)) in_circ.add_op(OpType::X, {in_qb}); - in_circ.add_op(OpType::Collapse, {in_qb}); - join_permutation.insert({*out_qb, in_qb}); - } else { - // No rows involving this input, so it is discarded - in_circ.qubit_discard(in_qb); + // Remove solved rows and qubits from tableau; since removing rows/columns + // replaces them with the row/column from the end, remove in reverse order + for (auto it = solved_rows.rbegin(); it != solved_rows.rend(); ++it) + tab.remove_row(*it); + for (auto it = solved_ins.rbegin(); it != solved_ins.rend(); ++it) + tab.discard_qubit(*it, ChoiMixTableau::TableauSegment::Input); + for (auto it = solved_outs.rbegin(); it != solved_outs.rend(); ++it) + tab.discard_qubit(*it, ChoiMixTableau::TableauSegment::Output); +} + +// Given a matrix that is already in upper echelon form, use the fact that the +// leading columns are already unique to give column operations that reduce it +// down to identity over the leading columns, eliminating extra swap gates to +// move to the first spaces +static std::vector> +leading_column_gaussian_col_ops(const MatrixXb& source) { + std::vector col_list; + std::set non_leads; + for (unsigned r = 0; r < source.rows(); ++r) { + bool leading_found = false; + for (unsigned c = 0; c < source.cols(); ++c) { + if (source(r, c)) { + if (leading_found) + non_leads.insert(c); + else { + leading_found = true; + col_list.push_back(c); + } } } } + for (const unsigned& c : non_leads) col_list.push_back(c); + MatrixXb reordered = MatrixXb::Zero(source.rows(), col_list.size()); + for (unsigned c = 0; c < col_list.size(); ++c) + reordered.col(c) = source.col(col_list.at(c)); + std::vector> reordered_ops = + gaussian_elimination_col_ops(reordered); + std::vector> res; + for (const std::pair& op : reordered_ops) + res.push_back({col_list.at(op.first), col_list.at(op.second)}); + return res; +} - // Remove rows with inputs from the tableau - tab.tab_ = SymplecticTableau( - tab.tab_.xmat_.bottomRows(out_stabs), - tab.tab_.zmat_.bottomRows(out_stabs), tab.tab_.phase_.tail(out_stabs)); - - // Can't use a template with multiple parameters within a macro since the - // comma will register as an argument delimiter for the macro - using match_entry = boost::bimap::left_const_reference; - BOOST_FOREACH (match_entry entry, matched_qubits.left) { - tab.discard_qubit(entry.first, ChoiMixTableau::TableauSegment::Input); - tab.discard_qubit(entry.second, ChoiMixTableau::TableauSegment::Output); - } +void ChoiMixBuilder::diagonalise_segments() { + // Canonicalise tableau tab.canonical_column_order(ChoiMixTableau::TableauSegment::Output); + tab.gaussian_form(); - // Only remaining rows must be completely over the outputs. Call - // diagonalisation methods to diagonalise coherent subspace - to_diag.clear(); + // Set up diagonalisation tasks + std::list to_diag_ins, to_diag_outs; for (unsigned r = 0; r < tab.get_n_rows(); ++r) { ChoiMixTableau::row_tensor_t rten = tab.get_row(r); - to_diag.push_back(rten.second); + if (!rten.first.string.empty()) to_diag_ins.push_back(rten.first); + if (!rten.second.string.empty()) to_diag_outs.push_back(rten.second); } - std::set diag_outs; - for (const Qubit& out : output_qubits) { - if (matched_qubits.right.find(out) == matched_qubits.right.end()) - diag_outs.insert(out); + qubit_vector_t input_qubits = tab.input_qubits(); + std::set diag_ins{input_qubits.begin(), input_qubits.end()}; + Circuit in_diag_circ = mutual_diagonalise(to_diag_ins, diag_ins, cx_config); + for (const Command& com : in_diag_circ) { + auto args = com.get_args(); + in_circ.add_op(com.get_op_ptr(), args); + qubit_vector_t qbs = {args.begin(), args.end()}; + tab.apply_gate( + com.get_op_ptr()->dagger()->get_type(), qbs, + ChoiMixTableau::TableauSegment::Input); } + qubit_vector_t output_qubits = tab.output_qubits(); + std::set diag_outs{output_qubits.begin(), output_qubits.end()}; Circuit out_diag_circ = - mutual_diagonalise(to_diag, diag_outs, CXConfigType::Tree); - // Extract the dagger of each gate in order from tab + mutual_diagonalise(to_diag_outs, diag_outs, cx_config); for (const Command& com : out_diag_circ) { auto args = com.get_args(); + out_circ_tp.add_op(com.get_op_ptr()->dagger()->transpose(), args); qubit_vector_t qbs = {args.begin(), args.end()}; - tab.apply_gate(com.get_op_ptr()->get_type(), qbs); - out_circ_tp.add_op(com.get_op_ptr()->transpose()->dagger(), qbs); + tab.apply_gate( + com.get_op_ptr()->get_type(), qbs, + ChoiMixTableau::TableauSegment::Output); } - // All rows are diagonalised so we can just focus on the Z matrix. Reduce them - // to a minimal set of qubits for initialisation by first reducing to upper - // echelon form - row_ops = gaussian_elimination_row_ops(tab.tab_.zmat_); - for (const std::pair& op : row_ops) { - tab.tab_.row_mult(op.first, op.second); + // All rows are diagonalised, so we can just focus on the Z matrix + if (tab.tab_.xmat != MatrixXb::Zero(tab.get_n_rows(), tab.get_n_boundaries())) + throw std::logic_error( + "Diagonalisation in ChoiMixTableau synthesis failed"); +} + +void ChoiMixBuilder::solve_postselected_subspace() { + // As column order is currently output first, gaussian form will reveal the + // post-selected space at the bottom of the tableau and the submatrix of those + // rows will already be in upper echelon form + tab.gaussian_form(); + // Reduce them to a minimal set of qubits using CX gates + unsigned n_postselected = 0; + for (; n_postselected < tab.get_n_rows(); ++n_postselected) { + if (!tab.get_row(tab.get_n_rows() - 1 - n_postselected) + .second.string.empty()) + break; } - // Obtain CX instructions as column operations - col_ops = gaussian_elimination_col_ops(tab.tab_.zmat_); + unsigned n_ins = tab.get_n_inputs(); + unsigned n_outs = tab.get_n_outputs(); + MatrixXb subtableau = tab.tab_.zmat.bottomRightCorner(n_postselected, n_ins); + std::vector> col_ops = + leading_column_gaussian_col_ops(subtableau); for (const std::pair& op : col_ops) { - tab.tab_.apply_CX(op.second, op.first); - ChoiMixTableau::col_key_t ctrl = tab.col_index_.right.at(op.second); - ChoiMixTableau::col_key_t trgt = tab.col_index_.right.at(op.first); - out_circ_tp.add_op(OpType::CX, {ctrl.first, trgt.first}); + unsigned tab_ctrl_col = n_outs + op.second; + unsigned tab_trgt_col = n_outs + op.first; + tab.tab_.apply_CX(tab_ctrl_col, tab_trgt_col); + ChoiMixTableau::col_key_t ctrl = tab.col_index_.right.at(tab_ctrl_col); + ChoiMixTableau::col_key_t trgt = tab.col_index_.right.at(tab_trgt_col); + in_circ.add_op(OpType::CX, {ctrl.first, trgt.first}); } + // Postselect rows + for (unsigned r = 0; r < n_postselected; ++r) { + unsigned final_row = tab.get_n_rows() - 1; + ChoiMixTableau::row_tensor_t row = tab.get_row(final_row); + if (row.second.size() != 0 || row.first.size() != 1 || + row.first.string.begin()->second != Pauli::Z) + throw std::logic_error( + "Unexpected error during post-selection identification in " + "ChoiMixTableau synthesis"); + Qubit post_selected_qb = row.first.string.begin()->first; + // Multiply other rows to remove Z_qb components + unsigned qb_col = tab.col_index_.left.at(ChoiMixTableau::col_key_t{ + post_selected_qb, ChoiMixTableau::TableauSegment::Input}); + for (unsigned s = 0; s < final_row; ++s) + if (tab.tab_.zmat(s, qb_col)) tab.tab_.row_mult(final_row, s); + // Post-select on correct phase + if (row.second.is_real_negative()) + in_circ.add_op(OpType::X, {post_selected_qb}); + tab.remove_row(final_row); + post_selected.insert(post_selected_qb); + tab.discard_qubit(post_selected_qb, ChoiMixTableau::TableauSegment::Input); + } +} - // Fix phases of zero_initialised qubits - std::set zero_initialised; - Circuit out_circ(output_qubits, {}); - for (unsigned r = 0; r < tab.get_n_rows(); ++r) { +void ChoiMixBuilder::solve_initialised_subspace() { + // Input-first gaussian elimination now sorts the remaining rows into the + // collapsed subspace followed by the zero-initialised subspace and the + // collapsed subspace rows are in upper echelon form over the inputs, giving + // unique leading columns and allowing us to solve them with CXs by + // column-wise gaussian elimination; same for zero-initialised rows over the + // outputs + tab.canonical_column_order(ChoiMixTableau::TableauSegment::Input); + tab.gaussian_form(); + + // Reduce the zero-initialised space to a minimal set of qubits using CX gates + unsigned n_collapsed = 0; + for (; n_collapsed < tab.get_n_rows(); ++n_collapsed) { + if (tab.get_row(n_collapsed).first.string.empty()) break; + } + unsigned n_ins = tab.get_n_inputs(); + unsigned n_outs = tab.get_n_outputs(); + MatrixXb subtableau = + tab.tab_.zmat.bottomRightCorner(tab.get_n_rows() - n_collapsed, n_outs); + std::vector> col_ops = + leading_column_gaussian_col_ops(subtableau); + for (const std::pair& op : col_ops) { + unsigned tab_ctrl_col = n_ins + op.second; + unsigned tab_trgt_col = n_ins + op.first; + tab.tab_.apply_CX(tab_ctrl_col, tab_trgt_col); + ChoiMixTableau::col_key_t ctrl = tab.col_index_.right.at(tab_ctrl_col); + ChoiMixTableau::col_key_t trgt = tab.col_index_.right.at(tab_trgt_col); + out_circ_tp.add_op(OpType::CX, {ctrl.first, trgt.first}); + } + // Initialise rows + for (unsigned r = tab.get_n_rows(); r-- > n_collapsed;) { + // r always refers to the final row in the tableau ChoiMixTableau::row_tensor_t row = tab.get_row(r); if (row.first.size() != 0 || row.second.size() != 1 || row.second.string.begin()->second != Pauli::Z) throw std::logic_error( - "Unexpected error during zero initialisation in ChoiMixTableau " - "synthesis"); + "Unexpected error during initialisation identification in " + "ChoiMixTableau synthesis"); Qubit initialised_qb = row.second.string.begin()->first; - out_circ.qubit_create(initialised_qb); - if (row.second.is_real_negative()) { - out_circ.add_op(OpType::X, {initialised_qb}); - } + // Multiply other rows to remove Z_qb components + unsigned qb_col = tab.col_index_.left.at(ChoiMixTableau::col_key_t{ + initialised_qb, ChoiMixTableau::TableauSegment::Output}); + for (unsigned s = 0; s < r; ++s) + if (tab.tab_.zmat(s, qb_col)) tab.tab_.row_mult(r, s); + // Initialise with correct phase + if (row.second.is_real_negative()) + out_circ_tp.add_op(OpType::X, {initialised_qb}); + tab.remove_row(r); zero_initialised.insert(initialised_qb); + tab.discard_qubit(initialised_qb, ChoiMixTableau::TableauSegment::Output); } +} - // Remaining outputs that aren't zero initialised or matched need to be - // initialised in the maximally-mixed state. - // Also match up unmatched outputs to either unmatched inputs or reusable - // output names (ones that are already matched up to other input names), - // preferring the qubit of the same name - std::list reusable_names; - for (const Qubit& out_qb : output_qubits) { - if (matched_qubits.right.find(out_qb) != matched_qubits.right.end() && - matched_qubits.left.find(out_qb) == matched_qubits.left.end()) - reusable_names.push_back(out_qb); - } - for (const Qubit& out_qb : output_qubits) { - if (matched_qubits.right.find(out_qb) == matched_qubits.right.end()) { - if (zero_initialised.find(out_qb) == zero_initialised.end()) { - out_circ.qubit_create(out_qb); - out_circ.add_op(OpType::H, {out_qb}); - out_circ.add_op(OpType::Collapse, {out_qb}); +void ChoiMixBuilder::solve_collapsed_subspace() { + // Solving the initialised subspace will have preserved the upper echelon form + // of the collapsed subspace; reduce the inputs of the collapsed space to a + // minimal set of qubits using CX gates + unsigned n_ins = tab.get_n_inputs(); + unsigned n_outs = tab.get_n_outputs(); + MatrixXb subtableau = tab.tab_.zmat.topLeftCorner(tab.get_n_rows(), n_ins); + std::vector> col_ops = + leading_column_gaussian_col_ops(subtableau); + for (const std::pair& op : col_ops) { + tab.tab_.apply_CX(op.second, op.first); + ChoiMixTableau::col_key_t ctrl = tab.col_index_.right.at(op.second); + ChoiMixTableau::col_key_t trgt = tab.col_index_.right.at(op.first); + in_circ.add_op(OpType::CX, {ctrl.first, trgt.first}); + } + // Since row multiplications will unsolve the inputs, we cannot get the output + // segment into upper echelon form for the same CX-saving trick; instead we + // accept just removing any qubits that are now unused after solving the + // initialised subspace + remove_unused_qubits(); + tab.canonical_column_order(ChoiMixTableau::TableauSegment::Input); + // Solve the output segment using CX gates + n_ins = tab.get_n_inputs(); + n_outs = tab.get_n_outputs(); + col_ops = gaussian_elimination_col_ops( + tab.tab_.zmat.topRightCorner(tab.get_n_rows(), n_outs)); + for (const std::pair& op : col_ops) { + tab.tab_.apply_CX(n_ins + op.second, n_ins + op.first); + ChoiMixTableau::col_key_t ctrl = tab.col_index_.right.at(n_ins + op.second); + ChoiMixTableau::col_key_t trgt = tab.col_index_.right.at(n_ins + op.first); + out_circ_tp.add_op(OpType::CX, {ctrl.first, trgt.first}); + } + // Connect up and remove rows and columns + for (unsigned r = tab.get_n_rows(); r-- > 0;) { + // r refers to the final row + // Check that row r has been successfully reduced + ChoiMixTableau::row_tensor_t row_r = tab.get_row(r); + if (row_r.first.size() != 1 || + row_r.first.string.begin()->second != Pauli::Z || + row_r.second.size() != 1 || + row_r.second.string.begin()->second != Pauli::Z) + throw std::logic_error( + "Unexpected error during collapsed subspace reduction in " + "ChoiMixTableau synthesis"); + Qubit in_q = row_r.first.string.begin()->first; + Qubit out_q = row_r.second.string.begin()->first; + // Solve phase + if (row_r.second.is_real_negative()) { + in_circ.add_op(OpType::X, {in_q}); + tab.apply_gate(OpType::X, {in_q}, ChoiMixTableau::TableauSegment::Input); + } + // Connect in permutation + in_out_permutation.insert({in_q, out_q}); + collapsed.insert(in_q); + tab.remove_row(r); + tab.discard_qubit(in_q, ChoiMixTableau::TableauSegment::Input); + tab.discard_qubit(out_q, ChoiMixTableau::TableauSegment::Output); + } +} + +void ChoiMixBuilder::remove_unused_qubits() { + // Since removing a column replaces it with the last column, remove in reverse + // order to examine each column exactly once + for (unsigned c = tab.get_n_boundaries(); c-- > 0;) { + bool used = false; + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + if (tab.tab_.zmat(r, c) || tab.tab_.xmat(r, c)) { + used = true; + break; } - if (matched_qubits.left.find(out_qb) == matched_qubits.left.end()) { - matched_qubits.insert({out_qb, out_qb}); - join_permutation.insert({out_qb, out_qb}); - } else { - // Since the matching is a bijection, matched_qubits.left - - // matched_qubits.right (set difference) is the same size as - // matched_qubits.right - matched_qubits.left, so there will be exactly - // the right number of reusable names to pull from here - Qubit name = reusable_names.front(); - reusable_names.pop_front(); - matched_qubits.insert({name, out_qb}); - join_permutation.insert({out_qb, name}); + } + if (used) continue; + ChoiMixTableau::col_key_t col = tab.col_index_.right.at(c); + if (col.second == ChoiMixTableau::TableauSegment::Input) + discarded.insert(col.first); + else + mix_initialised.insert(col.first); + tab.discard_qubit(col.first, col.second); + } +} + +void ChoiMixBuilder::assign_init_post_names() { + auto it = unitary_post_names.begin(); + for (const Qubit& ps : post_selected) { + if (it == unitary_post_names.end()) + throw std::logic_error( + "Not enough additional qubit names for unitary extension of " + "ChoiMixTableau to safely handle post-selected subspace"); + in_out_permutation.insert({ps, *it}); + ++it; + } + unitary_post_names = {it, unitary_post_names.end()}; + + it = unitary_init_names.begin(); + for (const Qubit& zi : zero_initialised) { + if (it == unitary_init_names.end()) + throw std::logic_error( + "Not enough additional qubit names for unitary extension of " + "ChoiMixTableau to safely handle initialised subspace"); + in_out_permutation.insert({*it, zi}); + ++it; + } + unitary_init_names = {it, unitary_init_names.end()}; +} + +void ChoiMixBuilder::assign_remaining_names() { + // Some post-selected or initialised qubits might have already been matched up + // for unitary synthesis, so we only need to match up the remainder + std::set unsolved_ins = discarded; + for (const Qubit& q : post_selected) { + if (in_out_permutation.left.find(q) == in_out_permutation.left.end()) + unsolved_ins.insert(q); + } + std::set unsolved_outs = mix_initialised; + for (const Qubit& q : zero_initialised) { + if (in_out_permutation.right.find(q) == in_out_permutation.right.end()) + unsolved_outs.insert(q); + } + // If there are more unsolved_ins than unsolved_outs, we want to pad out + // unsolved_outs with extra names that don't appear as output names of the + // original tableau; between unsolved_ins and the inputs already in + // in_out_permutation, there will be at least enough of these + if (unsolved_ins.size() > unsolved_outs.size()) { + for (const Qubit& q : unsolved_ins) { + if (in_out_permutation.right.find(q) == in_out_permutation.right.end()) { + unsolved_outs.insert(q); + if (unsolved_ins.size() == unsolved_outs.size()) break; + } + } + if (unsolved_ins.size() > unsolved_outs.size()) { + using perm_entry = boost::bimap::left_const_reference; + BOOST_FOREACH (perm_entry entry, in_out_permutation.left) { + if (in_out_permutation.right.find(entry.first) == + in_out_permutation.right.end()) { + unsolved_outs.insert(entry.first); + if (unsolved_ins.size() == unsolved_outs.size()) break; + } + } + } + } else if (unsolved_ins.size() < unsolved_outs.size()) { + for (const Qubit& q : unsolved_outs) { + if (in_out_permutation.left.find(q) == in_out_permutation.left.end()) { + unsolved_ins.insert(q); + if (unsolved_ins.size() == unsolved_outs.size()) break; + } + } + if (unsolved_ins.size() < unsolved_outs.size()) { + using perm_entry = boost::bimap::left_const_reference; + BOOST_FOREACH (perm_entry entry, in_out_permutation.left) { + if (in_out_permutation.left.find(entry.second) == + in_out_permutation.left.end()) { + unsolved_ins.insert(entry.second); + if (unsolved_ins.size() == unsolved_outs.size()) break; + } } } } + // Prefer to connect qubits with the same names + for (auto in_it = unsolved_ins.begin(); in_it != unsolved_ins.end();) { + auto temp_it = in_it++; + auto out_it = unsolved_outs.find(*temp_it); + if (out_it != unsolved_outs.end()) { + in_out_permutation.insert({*temp_it, *temp_it}); + unsolved_ins.erase(temp_it); + unsolved_outs.erase(out_it); + } + } + // Pair up remainders; by our earlier padding, they should have the exact same + // number of elements, so pair them up exactly + for (const Qubit& in : unsolved_ins) { + auto it = unsolved_outs.begin(); + in_out_permutation.insert({in, *it}); + unsolved_outs.erase(it); + } +} - // Initialise qubits with stabilizer rows and stitch subcircuits together +std::pair ChoiMixBuilder::output_circuit() { + if (tab.get_n_rows() != 0 || tab.get_n_boundaries() != 0) + throw std::logic_error( + "Unexpected error during ChoiMixTableau synthesis, reached the end " + "with a non-empty tableau remaining"); + if (!post_selected.empty()) { + throw std::logic_error( + "Not yet implemented: post-selection required during ChoiMixTableau " + "synthesis"); + } + for (const Qubit& q : discarded) in_circ.qubit_discard(q); + for (const Qubit& q : collapsed) in_circ.add_op(OpType::Collapse, {q}); + Circuit out_circ(out_circ_tp.all_qubits(), {}); + for (const Qubit& q : zero_initialised) out_circ.qubit_create(q); + for (const Qubit& q : mix_initialised) { + out_circ.qubit_create(q); + out_circ.add_op(OpType::H, {q}); + out_circ.add_op(OpType::Collapse, {q}); + } out_circ.append(out_circ_tp.transpose()); - in_circ.append_with_map(out_circ, join_permutation); - return {in_circ, join_permutation}; + qubit_map_t return_perm; + unit_map_t append_perm; + using perm_entry = boost::bimap::left_const_reference; + BOOST_FOREACH (perm_entry entry, in_out_permutation.left) { + return_perm.insert({entry.second, entry.first}); + append_perm.insert({entry.second, entry.first}); + } + in_circ.append_with_map(out_circ, append_perm); + return {in_circ, return_perm}; +} + +std::pair ChoiMixBuilder::unitary_output_circuit() { + if (tab.get_n_rows() != 0 || tab.get_n_boundaries() != 0) + throw std::logic_error( + "Unexpected error during ChoiMixTableau synthesis, reached the end " + "with a non-empty tableau remaining"); + qubit_map_t return_perm; + unit_map_t append_perm; + using perm_entry = boost::bimap::left_const_reference; + BOOST_FOREACH (perm_entry entry, in_out_permutation.left) { + return_perm.insert({entry.second, entry.first}); + append_perm.insert({entry.second, entry.first}); + } + in_circ.append_with_map(out_circ_tp.transpose(), append_perm); + return {in_circ, return_perm}; } } // namespace tket diff --git a/tket/src/Converters/PauliGadget.cpp b/tket/src/Converters/PauliGadget.cpp deleted file mode 100644 index 451003776c..0000000000 --- a/tket/src/Converters/PauliGadget.cpp +++ /dev/null @@ -1,381 +0,0 @@ -// Copyright 2019-2023 Cambridge Quantum Computing -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#include "tket/Converters/PauliGadget.hpp" - -#include "tket/Circuit/CircUtils.hpp" -#include "tket/Circuit/ConjugationBox.hpp" -#include "tket/Circuit/PauliExpBoxes.hpp" - -namespace tket { - -void append_single_pauli_gadget( - Circuit &circ, const SpSymPauliTensor &pauli, CXConfigType cx_config) { - std::vector string; - unit_map_t mapping; - unsigned i = 0; - for (const std::pair &term : pauli.string) { - string.push_back(term.second); - mapping.insert({Qubit(q_default_reg(), i), term.first}); - i++; - } - Circuit gadget = pauli_gadget(string, pauli.coeff, cx_config); - circ.append_with_map(gadget, mapping); -} - -void append_single_pauli_gadget_as_pauli_exp_box( - Circuit &circ, const SpSymPauliTensor &pauli, CXConfigType cx_config) { - std::vector string; - std::vector mapping; - for (const std::pair &term : pauli.string) { - string.push_back(term.second); - mapping.push_back(term.first); - } - PauliExpBox box(SymPauliTensor(string, pauli.coeff), cx_config); - circ.add_box(box, mapping); -} - -void append_pauli_gadget_pair_as_box( - Circuit &circ, const SpSymPauliTensor &pauli0, - const SpSymPauliTensor &pauli1, CXConfigType cx_config) { - std::vector mapping; - std::vector paulis0; - std::vector paulis1; - QubitPauliMap p1map = pauli1.string; - // add paulis for qubits in pauli0_string - for (const std::pair &term : pauli0.string) { - mapping.push_back(term.first); - paulis0.push_back(term.second); - auto found = p1map.find(term.first); - if (found == p1map.end()) { - paulis1.push_back(Pauli::I); - } else { - paulis1.push_back(found->second); - p1map.erase(found); - } - } - // add paulis for qubits in pauli1_string that weren't in pauli0_string - for (const std::pair &term : p1map) { - mapping.push_back(term.first); - paulis1.push_back(term.second); - paulis0.push_back(Pauli::I); // If pauli0_string contained qubit, would - // have been handled above - } - PauliExpPairBox box( - SymPauliTensor(paulis0, pauli0.coeff), - SymPauliTensor(paulis1, pauli1.coeff), cx_config); - circ.add_box(box, mapping); -} - -void append_commuting_pauli_gadget_set_as_box( - Circuit &circ, const std::list &gadgets, - CXConfigType cx_config) { - // Translate SpSymPauliTensors to vectors of Paulis of same length - // Preserves ordering of qubits - - std::set all_qubits; - for (const SpSymPauliTensor &gadget : gadgets) { - for (const std::pair &qubit_pauli : gadget.string) { - all_qubits.insert(qubit_pauli.first); - } - } - - std::vector mapping; - for (const Qubit &qubit : all_qubits) { - mapping.push_back(qubit); - } - - std::vector pauli_gadgets; - for (const SpSymPauliTensor &gadget : gadgets) { - SymPauliTensor &new_gadget = - pauli_gadgets.emplace_back(DensePauliMap{}, gadget.coeff); - for (const Qubit &qubit : mapping) { - new_gadget.string.push_back(gadget.get(qubit)); - } - } - - PauliExpCommutingSetBox box(pauli_gadgets, cx_config); - circ.add_box(box, mapping); -} - -static void reduce_shared_qs_by_CX_snake( - Circuit &circ, std::set &match, SpSymPauliTensor &pauli0, - SpSymPauliTensor &pauli1) { - unsigned match_size = match.size(); - while (match_size > 1) { // We allow one match left over - auto it = --match.end(); - Qubit to_eliminate = *it; - match.erase(it); - Qubit helper = *match.rbegin(); - // extend CX snake - circ.add_op(OpType::CX, {to_eliminate, helper}); - pauli0.string.erase(to_eliminate); - pauli1.string.erase(to_eliminate); - match_size--; - } -} - -static void reduce_shared_qs_by_CX_star( - Circuit &circ, std::set &match, SpSymPauliTensor &pauli0, - SpSymPauliTensor &pauli1) { - std::set::iterator iter = match.begin(); - for (std::set::iterator next = match.begin(); match.size() > 1; - iter = next) { - ++next; - Qubit to_eliminate = *iter; - circ.add_op(OpType::CX, {to_eliminate, *match.rbegin()}); - pauli0.string.erase(to_eliminate); - pauli1.string.erase(to_eliminate); - match.erase(iter); - } -} - -static void reduce_shared_qs_by_CX_tree( - Circuit &circ, std::set &match, SpSymPauliTensor &pauli0, - SpSymPauliTensor &pauli1) { - while (match.size() > 1) { - std::set remaining; - std::set::iterator it = match.begin(); - while (it != match.end()) { - Qubit maintained = *it; - it++; - remaining.insert(maintained); - if (it != match.end()) { - Qubit to_eliminate = *it; - it++; - circ.add_op(OpType::CX, {to_eliminate, maintained}); - pauli0.string.erase(to_eliminate); - pauli1.string.erase(to_eliminate); - } - } - match = remaining; - } -} - -static void reduce_shared_qs_by_CX_multiqgate( - Circuit &circ, std::set &match, SpSymPauliTensor &pauli0, - SpSymPauliTensor &pauli1) { - if (match.size() <= 1) { - return; - } - // last qubit is target - Qubit target = *match.rbegin(); - while (match.size() > 1) { - std::set::iterator iter = match.begin(); - if (match.size() == 2) { - // use CX - Qubit to_eliminate = *iter; - match.erase(iter); - pauli0.string.erase(to_eliminate); - pauli1.string.erase(to_eliminate); - - circ.add_op(OpType::CX, {to_eliminate, target}); - } else { - // use XXPhase3 - Qubit to_eliminate1 = *iter; - match.erase(iter++); - pauli0.string.erase(to_eliminate1); - pauli1.string.erase(to_eliminate1); - - Qubit to_eliminate2 = *iter; - match.erase(iter); - pauli0.string.erase(to_eliminate2); - pauli1.string.erase(to_eliminate2); - - circ.add_op(OpType::H, {to_eliminate1}); - circ.add_op(OpType::H, {to_eliminate2}); - circ.add_op( - OpType::XXPhase3, 0.5, {to_eliminate1, to_eliminate2, target}); - circ.add_op(OpType::X, {target}); - } - } -} - -void append_pauli_gadget_pair( - Circuit &circ, SpSymPauliTensor pauli0, SpSymPauliTensor pauli1, - CXConfigType cx_config) { - /* - * Cowtan, Dilkes, Duncan, Simmons, Sivarajah: Phase Gadget Synthesis for - * Shallow Circuits, Lemma 4.9 - * Let s and t be Pauli strings; then there exists a Clifford unitary U such - * that - * P(a, s) . P(b, t) = U . P(a, s') . P(b, t') . U^\dagger - * where s' and t' are Pauli strings with intersection at most 1. - * - * Follows the procedure to reduce the intersection of the gadgets and then - * synthesises the remainder individually. - */ - pauli0.compress(); - pauli1.compress(); - - /* - * Step 1: Partition qubits into those just affected by pauli0 (just0) and - * pauli1 (just1), and those in both which either match or don't - */ - std::set just0 = pauli0.own_qubits(pauli1); - std::set just1 = pauli1.own_qubits(pauli0); - std::set match = pauli0.common_qubits(pauli1); - std::set mismatch = pauli0.conflicting_qubits(pauli1); - - /* - * Step 2: Build the unitary U that minimises the intersection of the gadgets. - */ - Circuit u; - for (const Qubit &qb : just0) u.add_qubit(qb); - for (const Qubit &qb : just1) u.add_qubit(qb); - for (const Qubit &qb : match) u.add_qubit(qb); - for (const Qubit &qb : mismatch) u.add_qubit(qb); - Circuit v(u); - - /* - * Step 2.i: Remove (almost) all matches by converting to Z basis and applying - * CXs - */ - for (const Qubit &qb : match) { - switch (pauli0.get(qb)) { - case Pauli::X: - u.add_op(OpType::H, {qb}); - pauli0.set(qb, Pauli::Z); - pauli1.set(qb, Pauli::Z); - break; - case Pauli::Y: - u.add_op(OpType::V, {qb}); - pauli0.set(qb, Pauli::Z); - pauli1.set(qb, Pauli::Z); - break; - default: - break; - } - } - switch (cx_config) { - case CXConfigType::Snake: { - reduce_shared_qs_by_CX_snake(u, match, pauli0, pauli1); - break; - } - case CXConfigType::Star: { - reduce_shared_qs_by_CX_star(u, match, pauli0, pauli1); - break; - } - case CXConfigType::Tree: { - reduce_shared_qs_by_CX_tree(u, match, pauli0, pauli1); - break; - } - case CXConfigType::MultiQGate: { - reduce_shared_qs_by_CX_multiqgate(u, match, pauli0, pauli1); - break; - } - default: - throw std::logic_error( - "Unknown CXConfigType received when decomposing gadget."); - } - /* - * Step 2.ii: Convert mismatches to Z in pauli0 and X in pauli1 - */ - for (const Qubit &qb : mismatch) { - switch (pauli0.get(qb)) { - case Pauli::X: { - switch (pauli1.get(qb)) { - case Pauli::Y: - u.add_op(OpType::Sdg, {qb}); - u.add_op(OpType::Vdg, {qb}); - break; - case Pauli::Z: - u.add_op(OpType::H, {qb}); - break; - default: - break; // Cannot hit this case - } - break; - } - case Pauli::Y: { - switch (pauli1.get(qb)) { - case Pauli::X: - u.add_op(OpType::V, {qb}); - break; - case Pauli::Z: - u.add_op(OpType::V, {qb}); - u.add_op(OpType::S, {qb}); - break; - default: - break; // Cannot hit this case - } - break; - } - default: { // Necessarily Z - if (pauli1.get(qb) == Pauli::Y) u.add_op(OpType::Sdg, {qb}); - // No need to act if already X - } - } - pauli0.set(qb, Pauli::Z); - pauli1.set(qb, Pauli::X); - } - - /* - * Step 2.iii: Remove the final matching qubit against a mismatch if one - * exists, otherwise allow both gadgets to build it - */ - if (!match.empty()) { - Qubit last_match = *match.begin(); - match.erase(last_match); - if (!mismatch.empty()) { - Qubit mismatch_used = - *mismatch.rbegin(); // Prefer to use the one that may be left over - // after reducing pairs - u.add_op(OpType::S, {mismatch_used}); - u.add_op(OpType::CX, {last_match, mismatch_used}); - u.add_op(OpType::Sdg, {mismatch_used}); - pauli0.string.erase(last_match); - pauli1.string.erase(last_match); - } else { - just0.insert(last_match); - just1.insert(last_match); - } - } - - /* - * Step 2.iv: Reduce pairs of mismatches to different qubits. - * Allow both gadgets to build a remaining qubit if it exists. - */ - std::set::iterator mis_it = mismatch.begin(); - while (mis_it != mismatch.end()) { - Qubit z_in_0 = *mis_it; - just0.insert(z_in_0); - mis_it++; - if (mis_it == mismatch.end()) { - just1.insert(z_in_0); - } else { - Qubit x_in_1 = *mis_it; - u.add_op(OpType::CX, {x_in_1, z_in_0}); - pauli0.string.erase(x_in_1); - pauli1.string.erase(z_in_0); - just1.insert(x_in_1); - mis_it++; - } - } - - /* - * Step 3: Combine circuits to give final result - */ - append_single_pauli_gadget(v, pauli0); - append_single_pauli_gadget(v, pauli1); - // ConjugationBox components must be in the default register - qubit_vector_t all_qubits = u.all_qubits(); - u.flatten_registers(); - v.flatten_registers(); - ConjugationBox cjbox( - std::make_shared(u), std::make_shared(v)); - circ.add_box(cjbox, all_qubits); -} - -} // namespace tket diff --git a/tket/src/Converters/PauliGraphConverters.cpp b/tket/src/Converters/PauliGraphConverters.cpp index 8f345432eb..4408c0b7e7 100644 --- a/tket/src/Converters/PauliGraphConverters.cpp +++ b/tket/src/Converters/PauliGraphConverters.cpp @@ -15,7 +15,6 @@ #include "tket/Circuit/Boxes.hpp" #include "tket/Circuit/PauliExpBoxes.hpp" #include "tket/Converters/Converters.hpp" -#include "tket/Converters/PauliGadget.hpp" #include "tket/Converters/PhasePoly.hpp" #include "tket/Diagonalisation/Diagonalisation.hpp" #include "tket/Gate/Gate.hpp" diff --git a/tket/src/Converters/UnitaryTableauConverters.cpp b/tket/src/Converters/UnitaryTableauConverters.cpp index 32d45ea4b6..ba9d4fc936 100644 --- a/tket/src/Converters/UnitaryTableauConverters.cpp +++ b/tket/src/Converters/UnitaryTableauConverters.cpp @@ -44,7 +44,7 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { * Step 1: Use Hadamards (in our case, Vs) to make C (z rows of xmat_) have * full rank */ - MatrixXb echelon = tabl.xmat_.block(size, 0, size, size); + MatrixXb echelon = tabl.xmat.block(size, 0, size, size); std::map leading_val_to_col; for (unsigned i = 0; i < size; i++) { for (unsigned j = 0; j < size; j++) { @@ -64,9 +64,8 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { continue; // Independent of previous cols c.add_op(OpType::V, {i}); tabl.apply_V(i); - tabl.apply_V(i); - tabl.apply_V(i); - echelon.col(i) = tabl.zmat_.block(size, i, size, 1); + tabl.apply_X(i); + echelon.col(i) = tabl.zmat.block(size, i, size, 1); for (unsigned j = 0; j < size; j++) { if (echelon(j, i)) { if (leading_val_to_col.find(j) == leading_val_to_col.end()) { @@ -89,7 +88,7 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { * / A B \ * \ I D / */ - MatrixXb to_reduce = tabl.xmat_.block(size, 0, size, size); + MatrixXb to_reduce = tabl.xmat.block(size, 0, size, size); for (const std::pair& qbs : gaussian_elimination_col_ops(to_reduce)) { c.add_op(OpType::CX, {qbs.first, qbs.second}); @@ -103,13 +102,12 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { * for some invertible M. */ std::pair zp_z_llt = - binary_LLT_decomposition(tabl.zmat_.block(size, 0, size, size)); + binary_LLT_decomposition(tabl.zmat.block(size, 0, size, size)); for (unsigned i = 0; i < size; i++) { if (zp_z_llt.second(i, i)) { c.add_op(OpType::S, {i}); tabl.apply_S(i); - tabl.apply_S(i); - tabl.apply_S(i); + tabl.apply_Z(i); } } @@ -140,8 +138,7 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { for (unsigned i = 0; i < size; i++) { c.add_op(OpType::S, {i}); tabl.apply_S(i); - tabl.apply_S(i); - tabl.apply_S(i); + tabl.apply_Z(i); } /* @@ -150,7 +147,7 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { * \ I 0 / * By commutativity relations, IB^T = A0^T + I, therefore B = I. */ - to_reduce = tabl.xmat_.block(size, 0, size, size); + to_reduce = tabl.xmat.block(size, 0, size, size); for (const std::pair& qbs : gaussian_elimination_col_ops(to_reduce)) { c.add_op(OpType::CX, {qbs.first, qbs.second}); @@ -164,9 +161,7 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { */ for (unsigned i = 0; i < size; i++) { c.add_op(OpType::H, {i}); - tabl.apply_S(i); - tabl.apply_V(i); - tabl.apply_S(i); + tabl.apply_H(i); } /* @@ -175,13 +170,12 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { * some invertible N. */ std::pair xp_z_llt = - binary_LLT_decomposition(tabl.zmat_.block(0, 0, size, size)); + binary_LLT_decomposition(tabl.zmat.block(0, 0, size, size)); for (unsigned i = 0; i < size; i++) { if (xp_z_llt.second(i, i)) { c.add_op(OpType::S, {i}); tabl.apply_S(i); - tabl.apply_S(i); - tabl.apply_S(i); + tabl.apply_Z(i); } } @@ -210,8 +204,7 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { for (unsigned i = 0; i < size; i++) { c.add_op(OpType::S, {i}); tabl.apply_S(i); - tabl.apply_S(i); - tabl.apply_S(i); + tabl.apply_Z(i); } /* @@ -220,7 +213,7 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { * \ 0 I / */ for (const std::pair& qbs : - gaussian_elimination_col_ops(tabl.xmat_.block(0, 0, size, size))) { + gaussian_elimination_col_ops(tabl.xmat.block(0, 0, size, size))) { c.add_op(OpType::CX, {qbs.first, qbs.second}); tabl.apply_CX(qbs.first, qbs.second); } @@ -229,15 +222,14 @@ Circuit unitary_tableau_to_circuit(const UnitaryTableau& tab) { * DELAYED STEPS: Set all phases to 0 by applying Z or X gates */ for (unsigned i = 0; i < size; i++) { - if (tabl.phase_(i)) { + if (tabl.phase(i)) { c.add_op(OpType::Z, {i}); - tabl.apply_S(i); - tabl.apply_S(i); + tabl.apply_Z(i); } - if (tabl.phase_(i + size)) { + if (tabl.phase(i + size)) { c.add_op(OpType::X, {i}); - tabl.apply_V(i); - tabl.apply_V(i); + tabl.apply_X(i); + ; } } diff --git a/tket/src/Diagonalisation/Diagonalisation.cpp b/tket/src/Diagonalisation/Diagonalisation.cpp index 354f522d3d..b712e4c2b3 100644 --- a/tket/src/Diagonalisation/Diagonalisation.cpp +++ b/tket/src/Diagonalisation/Diagonalisation.cpp @@ -342,4 +342,410 @@ void apply_conjugations( qps.coeff *= cast_coeff(stab.coeff); } +std::pair reduce_pauli_to_z( + const SpPauliStabiliser &pauli, CXConfigType cx_config) { + Circuit circ; + qubit_vector_t qubits; + for (const std::pair &qp : pauli.string) { + circ.add_qubit(qp.first); + if (qp.second != Pauli::I) qubits.push_back(qp.first); + switch (qp.second) { + case Pauli::X: { + circ.add_op(OpType::H, {qp.first}); + break; + } + case Pauli::Y: { + circ.add_op(OpType::V, {qp.first}); + break; + } + default: { + break; + } + } + } + unsigned n_qubits = qubits.size(); + if (n_qubits == 0) throw std::logic_error("Cannot reduce identity to Z"); + switch (cx_config) { + case CXConfigType::Snake: { + for (unsigned i = n_qubits - 1; i != 0; --i) { + circ.add_op(OpType::CX, {qubits.at(i), qubits.at(i - 1)}); + } + break; + } + case CXConfigType::Star: { + for (unsigned i = n_qubits - 1; i != 0; --i) { + circ.add_op(OpType::CX, {qubits.at(i), qubits.front()}); + } + break; + } + case CXConfigType::Tree: { + for (unsigned step_size = 1; step_size < n_qubits; step_size *= 2) { + for (unsigned i = 0; step_size + i < n_qubits; i += 2 * step_size) { + circ.add_op( + OpType::CX, {qubits.at(step_size + i), qubits.at(i)}); + } + } + break; + } + case CXConfigType::MultiQGate: { + bool flip_phase = false; + for (unsigned i = n_qubits - 1; i != 0; --i) { + if (i == 1) { + circ.add_op(OpType::CX, {qubits.at(i), qubits.front()}); + } else { + /** + * This is only equal to the CX decompositions above up to phase, + * but phase differences are cancelled out by its dagger + */ + circ.add_op(OpType::H, {qubits.at(i)}); + circ.add_op(OpType::H, {qubits.at(i - 1)}); + circ.add_op( + OpType::XXPhase3, 0.5, + {qubits.at(i), qubits.at(i - 1), qubits.front()}); + --i; + flip_phase = !flip_phase; + } + } + if (flip_phase) circ.add_op(OpType::X, {qubits.front()}); + break; + } + } + return {circ, qubits.front()}; +} + +static void reduce_shared_qs_by_CX_snake( + Circuit &circ, std::set &match, SpPauliStabiliser &pauli0, + SpPauliStabiliser &pauli1) { + unsigned match_size = match.size(); + while (match_size > 1) { // We allow one match left over + auto it = --match.end(); + Qubit to_eliminate = *it; + match.erase(it); + Qubit helper = *match.rbegin(); + // extend CX snake + circ.add_op(OpType::CX, {to_eliminate, helper}); + pauli0.string.erase(to_eliminate); + pauli1.string.erase(to_eliminate); + match_size--; + } +} + +static void reduce_shared_qs_by_CX_star( + Circuit &circ, std::set &match, SpPauliStabiliser &pauli0, + SpPauliStabiliser &pauli1) { + std::set::iterator iter = match.begin(); + for (std::set::iterator next = match.begin(); match.size() > 1; + iter = next) { + ++next; + Qubit to_eliminate = *iter; + circ.add_op(OpType::CX, {to_eliminate, *match.rbegin()}); + pauli0.string.erase(to_eliminate); + pauli1.string.erase(to_eliminate); + match.erase(iter); + } +} + +static void reduce_shared_qs_by_CX_tree( + Circuit &circ, std::set &match, SpPauliStabiliser &pauli0, + SpPauliStabiliser &pauli1) { + while (match.size() > 1) { + std::set remaining; + std::set::iterator it = match.begin(); + while (it != match.end()) { + Qubit maintained = *it; + it++; + remaining.insert(maintained); + if (it != match.end()) { + Qubit to_eliminate = *it; + it++; + circ.add_op(OpType::CX, {to_eliminate, maintained}); + pauli0.string.erase(to_eliminate); + pauli1.string.erase(to_eliminate); + } + } + match = remaining; + } +} + +static void reduce_shared_qs_by_CX_multiqgate( + Circuit &circ, std::set &match, SpPauliStabiliser &pauli0, + SpPauliStabiliser &pauli1) { + if (match.size() <= 1) { + return; + } + // last qubit is target + Qubit target = *match.rbegin(); + while (match.size() > 1) { + std::set::iterator iter = match.begin(); + if (match.size() == 2) { + // use CX + Qubit to_eliminate = *iter; + match.erase(iter); + pauli0.string.erase(to_eliminate); + pauli1.string.erase(to_eliminate); + + circ.add_op(OpType::CX, {to_eliminate, target}); + } else { + // use XXPhase3 + Qubit to_eliminate1 = *iter; + match.erase(iter++); + pauli0.string.erase(to_eliminate1); + pauli1.string.erase(to_eliminate1); + + Qubit to_eliminate2 = *iter; + match.erase(iter); + pauli0.string.erase(to_eliminate2); + pauli1.string.erase(to_eliminate2); + + circ.add_op(OpType::H, {to_eliminate1}); + circ.add_op(OpType::H, {to_eliminate2}); + circ.add_op( + OpType::XXPhase3, 0.5, {to_eliminate1, to_eliminate2, target}); + circ.add_op(OpType::X, {target}); + } + } +} + +std::pair> reduce_overlap_of_paulis( + SpPauliStabiliser &pauli0, SpPauliStabiliser &pauli1, + CXConfigType cx_config) { + /* + * Cowtan, Dilkes, Duncan, Simmons, Sivarajah: Phase Gadget Synthesis for + * Shallow Circuits, Lemma 4.9 + * Let s and t be Pauli strings; then there exists a Clifford unitary U such + * that + * P(a, s) . P(b, t) = U . P(a, s') . P(b, t') . U^\dagger + * where s' and t' are Pauli strings with intersection at most 1. + * + * Follows the procedure to reduce the intersection of the gadgets and then + * synthesises the remainder individually. + */ + + /* + * Step 1: Identify qubits in both pauli0 and pauli1 which either match or + * don't + */ + std::set match = pauli0.common_qubits(pauli1); + std::set mismatch = pauli0.conflicting_qubits(pauli1); + + /* + * Step 2: Build the unitary U that minimises the intersection of the gadgets. + */ + Circuit u; + for (const std::pair &qp : pauli0.string) + u.add_qubit(qp.first); + for (const std::pair &qp : pauli1.string) { + if (!u.contains_unit(qp.first)) u.add_qubit(qp.first); + } + + /* + * Step 2.i: Remove (almost) all matches by converting to Z basis and applying + * CXs + */ + for (const Qubit &qb : match) { + switch (pauli0.get(qb)) { + case Pauli::X: + u.add_op(OpType::H, {qb}); + pauli0.set(qb, Pauli::Z); + pauli1.set(qb, Pauli::Z); + break; + case Pauli::Y: + u.add_op(OpType::V, {qb}); + pauli0.set(qb, Pauli::Z); + pauli1.set(qb, Pauli::Z); + break; + default: + break; + } + } + switch (cx_config) { + case CXConfigType::Snake: { + reduce_shared_qs_by_CX_snake(u, match, pauli0, pauli1); + break; + } + case CXConfigType::Star: { + reduce_shared_qs_by_CX_star(u, match, pauli0, pauli1); + break; + } + case CXConfigType::Tree: { + reduce_shared_qs_by_CX_tree(u, match, pauli0, pauli1); + break; + } + case CXConfigType::MultiQGate: { + reduce_shared_qs_by_CX_multiqgate(u, match, pauli0, pauli1); + break; + } + default: + throw std::logic_error( + "Unknown CXConfigType received when decomposing gadget."); + } + /* + * Step 2.ii: Convert mismatches to Z in pauli0 and X in pauli1 + */ + for (const Qubit &qb : mismatch) { + switch (pauli0.get(qb)) { + case Pauli::X: { + switch (pauli1.get(qb)) { + case Pauli::Y: + u.add_op(OpType::Sdg, {qb}); + u.add_op(OpType::Vdg, {qb}); + break; + case Pauli::Z: + u.add_op(OpType::H, {qb}); + break; + default: + TKET_ASSERT(false); + break; // Cannot hit this case + } + break; + } + case Pauli::Y: { + switch (pauli1.get(qb)) { + case Pauli::X: + u.add_op(OpType::V, {qb}); + break; + case Pauli::Z: + u.add_op(OpType::V, {qb}); + u.add_op(OpType::S, {qb}); + break; + default: + TKET_ASSERT(false); + break; // Cannot hit this case + } + break; + } + default: { // Necessarily Z + if (pauli1.get(qb) == Pauli::Y) u.add_op(OpType::Sdg, {qb}); + // No need to act if already X + } + } + pauli0.set(qb, Pauli::Z); + pauli1.set(qb, Pauli::X); + } + + /* + * Step 2.iii: Remove the final matching qubit against a mismatch if one + * exists, otherwise remove into another qubit + */ + if (!match.empty()) { + Qubit last_match = *match.begin(); + if (!mismatch.empty()) { + Qubit mismatch_used = + *mismatch.rbegin(); // Prefer to use the one that may be left over + // after reducing pairs + u.add_op(OpType::S, {mismatch_used}); + u.add_op(OpType::CX, {last_match, mismatch_used}); + u.add_op(OpType::Sdg, {mismatch_used}); + pauli0.string.erase(last_match); + pauli1.string.erase(last_match); + } else { + std::optional> other; + for (const std::pair &qp : pauli0.string) { + if (qp.first != last_match && qp.second != Pauli::I) { + other = qp; + pauli0.string.erase(last_match); + break; + } + } + if (!other) { + for (const std::pair &qp : pauli1.string) { + if (qp.first != last_match && qp.second != Pauli::I) { + other = qp; + pauli1.string.erase(last_match); + break; + } + } + if (!other) + throw std::logic_error( + "Cannot reduce identical Paulis to different qubits"); + } + if (other->second == Pauli::X) { + u.add_op(OpType::H, {other->first}); + u.add_op(OpType::CX, {last_match, other->first}); + u.add_op(OpType::H, {other->first}); + } else { + u.add_op(OpType::CX, {last_match, other->first}); + } + } + } + + /* + * Step 2.iv: Reduce pairs of mismatches to different qubits. + * Allow both gadgets to build a remaining qubit if it exists. + */ + std::optional last_mismatch = std::nullopt; + std::set::iterator mis_it = mismatch.begin(); + while (mis_it != mismatch.end()) { + Qubit z_in_0 = *mis_it; + mis_it++; + if (mis_it != mismatch.end()) { + Qubit x_in_1 = *mis_it; + u.add_op(OpType::CX, {x_in_1, z_in_0}); + pauli0.string.erase(x_in_1); + pauli1.string.erase(z_in_0); + mis_it++; + } else { + last_mismatch = z_in_0; + } + } + + return {u, last_mismatch}; +} + +std::pair reduce_anticommuting_paulis_to_z_x( + SpPauliStabiliser pauli0, SpPauliStabiliser pauli1, + CXConfigType cx_config) { + std::pair> reduced_overlap = + reduce_overlap_of_paulis(pauli0, pauli1, cx_config); + Circuit &u = reduced_overlap.first; + if (!reduced_overlap.second) + throw std::logic_error("No overlap for anti-commuting paulis"); + Qubit &last_mismatch = *reduced_overlap.second; + + /** + * Reduce each remaining Pauli to the shared mismatching qubit. + * Since reduce_pauli_to_Z does not allow us to pick the final qubit, we + * reserve the mismatching qubit, call reduce_pauli_to_Z on the rest, and add + * a CX. + */ + pauli0.string.erase(last_mismatch); + pauli0.compress(); + if (!pauli0.string.empty()) { + std::pair diag0 = reduce_pauli_to_z(pauli0, cx_config); + u.append(diag0.first); + u.add_op(OpType::CX, {diag0.second, last_mismatch}); + } + pauli1.compress(); + pauli1.string.erase(last_mismatch); + if (!pauli1.string.empty()) { + std::pair diag1 = reduce_pauli_to_z(pauli1, cx_config); + u.append(diag1.first); + u.add_op(OpType::H, {last_mismatch}); + u.add_op(OpType::CX, {diag1.second, last_mismatch}); + u.add_op(OpType::H, {last_mismatch}); + } + + return {u, last_mismatch}; +} + +std::tuple reduce_commuting_paulis_to_zi_iz( + SpPauliStabiliser pauli0, SpPauliStabiliser pauli1, + CXConfigType cx_config) { + std::pair> reduced_overlap = + reduce_overlap_of_paulis(pauli0, pauli1, cx_config); + Circuit &u = reduced_overlap.first; + if (reduced_overlap.second) + throw std::logic_error("Overlap remaining for commuting paulis"); + + /** + * Reduce each remaining Pauli to a single qubit. + */ + std::pair diag0 = reduce_pauli_to_z(pauli0, cx_config); + u.append(diag0.first); + std::pair diag1 = reduce_pauli_to_z(pauli1, cx_config); + u.append(diag1.first); + + return {u, diag0.second, diag1.second}; +} + } // namespace tket diff --git a/tket/src/Transformations/PauliOptimisation.cpp b/tket/src/Transformations/PauliOptimisation.cpp index 003c5e228c..e393c18731 100644 --- a/tket/src/Transformations/PauliOptimisation.cpp +++ b/tket/src/Transformations/PauliOptimisation.cpp @@ -14,8 +14,8 @@ #include "tket/Transformations/PauliOptimisation.hpp" +#include "tket/Circuit/CircUtils.hpp" #include "tket/Converters/Converters.hpp" -#include "tket/Converters/PauliGadget.hpp" #include "tket/OpType/OpType.hpp" #include "tket/OpType/OpTypeInfo.hpp" #include "tket/Ops/Op.hpp" @@ -168,14 +168,14 @@ Transform pairwise_pauli_gadgets(CXConfigType cx_config) { // Synthesise pairs of Pauli Gadgets unsigned g = 0; while (g + 1 < pauli_gadgets.size()) { - append_pauli_gadget_pair( - gadget_circ, pauli_gadgets[g], pauli_gadgets[g + 1], cx_config); + gadget_circ.append( + pauli_gadget_pair(pauli_gadgets[g], pauli_gadgets[g + 1], cx_config)); g += 2; } // As we synthesised Pauli gadgets 2 at a time, if there were an odd // number, we will have one left over, so add that one on its own if (g < pauli_gadgets.size()) { - append_single_pauli_gadget(gadget_circ, pauli_gadgets[g], cx_config); + gadget_circ.append(pauli_gadget(pauli_gadgets[g], cx_config)); } // Stitch gadget circuit and Clifford circuit together circ = gadget_circ >> clifford_circ; diff --git a/tket/test/CMakeLists.txt b/tket/test/CMakeLists.txt index 37b4eed2be..1074497da3 100644 --- a/tket/test/CMakeLists.txt +++ b/tket/test/CMakeLists.txt @@ -121,6 +121,7 @@ add_executable(test-tket src/Circuit/test_ConjugationBox.cpp src/test_UnitaryTableau.cpp src/test_ChoiMixTableau.cpp + src/test_Diagonalisation.cpp src/test_PhasePolynomials.cpp src/test_PauliGraph.cpp src/test_Architectures.cpp diff --git a/tket/test/src/test_ChoiMixTableau.cpp b/tket/test/src/test_ChoiMixTableau.cpp index c6b87d72ef..d8ea2f3247 100644 --- a/tket/test/src/test_ChoiMixTableau.cpp +++ b/tket/test/src/test_ChoiMixTableau.cpp @@ -15,6 +15,7 @@ #include #include "testutil.hpp" +#include "tket/Circuit/Simulation/CircuitSimulator.hpp" #include "tket/Converters/Converters.hpp" namespace tket { @@ -60,6 +61,12 @@ static ChoiMixTableau get_tableau_with_gates_applied_at_front() { OpType::CX, {Qubit(0), Qubit(1)}, ChoiMixTableau::TableauSegment::Input); return tab; } +static qubit_map_t inv_perm(const qubit_map_t& perm) { + qubit_map_t inv; + for (const std::pair& qp : perm) + inv.insert({qp.second, qp.first}); + return inv; +} SCENARIO("Correct creation of ChoiMixTableau") { GIVEN( @@ -89,7 +96,7 @@ SCENARIO("Correct creation of ChoiMixTableau") { tab.get_row_product({0, 1}) == ChoiMixTableau::row_tensor_t{ SpPauliStabiliser(Qubit(0), Pauli::Y), - SpPauliStabiliser(Qubit(0), Pauli::Y, 2)}); + SpPauliStabiliser(Qubit(0), Pauli::Y)}); THEN("Serialize and deserialize") { nlohmann::json j_tab = tab; ChoiMixTableau tab2{{}}; @@ -174,12 +181,10 @@ SCENARIO("Correct creation of ChoiMixTableau") { SpPauliStabiliser(Qubit(0), Pauli::Z), SpPauliStabiliser(Qubit(0), Pauli::Z)}); // Affecting the input segment should give the same effect as for - // UnitaryRevTableau (since lhs is transposed, +Y is flipped to -Y, and - // phase is returned on rhs) + // UnitaryRevTableau REQUIRE( - tab.get_row(2) == - ChoiMixTableau::row_tensor_t{ - SpPauliStabiliser(Qubit(1), Pauli::Y), SpPauliStabiliser({}, 2)}); + tab.get_row(2) == ChoiMixTableau::row_tensor_t{ + SpPauliStabiliser(Qubit(1), Pauli::Y), {}}); // Affecting the output segment should give the same effect as for // UnitaryTableau REQUIRE( @@ -197,9 +202,8 @@ SCENARIO("Correct creation of ChoiMixTableau") { SpPauliStabiliser(Qubit(0), Pauli::Z), SpPauliStabiliser(Qubit(0), Pauli::Y, 2)}); REQUIRE( - tab.get_row(2) == - ChoiMixTableau::row_tensor_t{ - SpPauliStabiliser(Qubit(1), Pauli::Y), SpPauliStabiliser({}, 2)}); + tab.get_row(2) == ChoiMixTableau::row_tensor_t{ + SpPauliStabiliser(Qubit(1), Pauli::Y), {}}); REQUIRE( tab.get_row(3) == ChoiMixTableau::row_tensor_t{ {}, SpPauliStabiliser(Qubit(2), Pauli::Y, 2)}); @@ -215,9 +219,8 @@ SCENARIO("Correct creation of ChoiMixTableau") { SpPauliStabiliser(Qubit(0), Pauli::Z), SpPauliStabiliser(Qubit(0), Pauli::Z, 2)}); REQUIRE( - tab.get_row(2) == - ChoiMixTableau::row_tensor_t{ - SpPauliStabiliser(Qubit(1), Pauli::Y), SpPauliStabiliser({}, 2)}); + tab.get_row(2) == ChoiMixTableau::row_tensor_t{ + SpPauliStabiliser(Qubit(1), Pauli::Y), {}}); REQUIRE( tab.get_row(3) == ChoiMixTableau::row_tensor_t{ {}, SpPauliStabiliser(Qubit(2), Pauli::Y, 2)}); @@ -449,17 +452,21 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { GIVEN("An identity circuit") { Circuit circ(3); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - Circuit res = cm_tableau_to_circuit(tab).first; + Circuit res = cm_tableau_to_exact_circuit(tab).first; + REQUIRE(res == circ); + res = cm_tableau_to_unitary_extension_circuit(tab).first; REQUIRE(res == circ); } GIVEN("Just some Pauli gates for phase tests") { Circuit circ(4); circ.add_op(OpType::X, {1}); - circ.add_op(OpType::X, {2}); circ.add_op(OpType::Z, {2}); + circ.add_op(OpType::X, {2}); circ.add_op(OpType::Z, {3}); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - Circuit res = cm_tableau_to_circuit(tab).first; + Circuit res = cm_tableau_to_exact_circuit(tab).first; + REQUIRE(res == circ); + res = cm_tableau_to_unitary_extension_circuit(tab).first; REQUIRE(res == circ); } GIVEN("Iterate through single-qubit Cliffords with all entanglements") { @@ -480,7 +487,9 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { if ((i / 9) % 3 == 1) circ.add_op(OpType::S, {0}); if ((i / 9) % 3 == 2) circ.add_op(OpType::Sdg, {0}); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - Circuit res = cm_tableau_to_circuit(tab).first; + Circuit res = cm_tableau_to_exact_circuit(tab).first; + Circuit res_uni = cm_tableau_to_unitary_extension_circuit(tab).first; + REQUIRE(res == res_uni); ChoiMixTableau res_tab = circuit_to_cm_tableau(res); REQUIRE(res_tab == tab); REQUIRE(test_unitary_comparison(circ, res, true)); @@ -489,10 +498,15 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { GIVEN("A unitary circuit") { Circuit circ = get_test_circ(); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - Circuit res = cm_tableau_to_circuit(tab).first; - ChoiMixTableau res_tab = circuit_to_cm_tableau(res); + std::pair res = cm_tableau_to_exact_circuit(tab); + res.first.permute_boundary_output(inv_perm(res.second)); + std::pair res_uni = + cm_tableau_to_unitary_extension_circuit(tab); + res_uni.first.permute_boundary_output(inv_perm(res_uni.second)); + REQUIRE(res.first == res_uni.first); + ChoiMixTableau res_tab = circuit_to_cm_tableau(res.first); REQUIRE(res_tab == tab); - REQUIRE(test_unitary_comparison(circ, res, true)); + REQUIRE(test_unitary_comparison(circ, res.first, true)); } GIVEN("Check unitary equivalence by calculating matrix") { Circuit circ(4); @@ -501,21 +515,69 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { circ.add_op(OpType::ISWAPMax, {0, 3}); circ.add_op(OpType::SX, {1}); circ.add_op(OpType::SXdg, {2}); + circ.add_op(OpType::CY, {1, 3}); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - Circuit res = cm_tableau_to_circuit(tab).first; - REQUIRE(test_unitary_comparison(circ, res, true)); + std::pair res = cm_tableau_to_exact_circuit(tab); + res.first.permute_boundary_output(inv_perm(res.second)); + std::pair res_uni = + cm_tableau_to_unitary_extension_circuit(tab); + res_uni.first.permute_boundary_output(inv_perm(res_uni.second)); + REQUIRE(res.first == res_uni.first); + REQUIRE(test_unitary_comparison(circ, res.first, true)); + THEN("Build the tableau manually for apply_gate coverage on inputs") { + ChoiMixTableau rev_tab(4); + rev_tab.apply_gate( + OpType::CY, {Qubit(1), Qubit(3)}, + ChoiMixTableau::TableauSegment::Input); + rev_tab.apply_gate( + OpType::SXdg, {Qubit(2)}, ChoiMixTableau::TableauSegment::Input); + rev_tab.apply_gate( + OpType::SX, {Qubit(1)}, ChoiMixTableau::TableauSegment::Input); + rev_tab.apply_gate( + OpType::ISWAPMax, {Qubit(0), Qubit(3)}, + ChoiMixTableau::TableauSegment::Input); + rev_tab.apply_gate( + OpType::ECR, {Qubit(2), Qubit(3)}, + ChoiMixTableau::TableauSegment::Input); + rev_tab.apply_gate( + OpType::ZZMax, {Qubit(0), Qubit(1)}, + ChoiMixTableau::TableauSegment::Input); + rev_tab.canonical_column_order(); + rev_tab.gaussian_form(); + REQUIRE(tab == rev_tab); + } } GIVEN("A Clifford state") { Circuit circ = get_test_circ(); circ.qubit_create_all(); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - Circuit res = cm_tableau_to_circuit(tab).first; + Circuit res = cm_tableau_to_exact_circuit(tab).first; + ChoiMixTableau res_tab = circuit_to_cm_tableau(res); + REQUIRE(res_tab == tab); + Circuit res_uni = + cm_tableau_to_unitary_extension_circuit(tab, circ.all_qubits()).first; + REQUIRE(test_statevector_comparison(res, res_uni, true)); + } + GIVEN("A partial Clifford state (tests mixed initialisations)") { + Circuit circ(3); + add_ops_list_one_to_circuit(circ); + circ.add_op(OpType::Collapse, {1}); + circ.qubit_create_all(); + ChoiMixTableau tab = circuit_to_cm_tableau(circ); + Circuit res = cm_tableau_to_exact_circuit(tab).first; + CHECK(res.created_qubits().size() == 3); + CHECK(res.discarded_qubits().size() == 0); + CHECK(res.count_gates(OpType::Collapse) == 1); ChoiMixTableau res_tab = circuit_to_cm_tableau(res); - tab.canonical_column_order(); - tab.gaussian_form(); - res_tab.canonical_column_order(); - res_tab.gaussian_form(); REQUIRE(res_tab == tab); + Circuit res_uni = + cm_tableau_to_unitary_extension_circuit(tab, circ.all_qubits()).first; + Eigen::VectorXcd res_sv = tket_sim::get_statevector(res_uni); + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + Eigen::MatrixXcd outmat = rrow.second.to_sparse_matrix(3); + CHECK((outmat * res_sv).isApprox(res_sv)); + } } GIVEN("A total diagonalisation circuit") { Circuit circ = get_test_circ(); @@ -523,9 +585,14 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { circ.add_op(OpType::Collapse, {i}); } ChoiMixTableau tab = circuit_to_cm_tableau(circ); - Circuit res = cm_tableau_to_circuit(tab).first; + Circuit res = cm_tableau_to_exact_circuit(tab).first; ChoiMixTableau res_tab = circuit_to_cm_tableau(res); REQUIRE(res_tab == tab); + // Test unitary synthesis by statevector of dagger + Circuit as_state = get_test_circ().dagger(); + Circuit res_uni_dag = + cm_tableau_to_unitary_extension_circuit(tab).first.dagger(); + REQUIRE(test_statevector_comparison(as_state, res_uni_dag, true)); } GIVEN("A partial diagonalisation circuit") { Circuit circ = get_test_circ(); @@ -534,18 +601,26 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { } circ.qubit_discard(Qubit(0)); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - std::pair res = cm_tableau_to_circuit(tab); + std::pair res = cm_tableau_to_exact_circuit(tab); ChoiMixTableau res_tab = circuit_to_cm_tableau(res.first); qubit_map_t perm; - for (const std::pair& p : res.second) { - perm.insert({Qubit(p.second), Qubit(p.first)}); + for (const std::pair& p : res.second) { + perm.insert({p.second, p.first}); } res_tab.rename_qubits(perm, ChoiMixTableau::TableauSegment::Output); - tab.canonical_column_order(); - tab.gaussian_form(); res_tab.canonical_column_order(); res_tab.gaussian_form(); REQUIRE(res_tab == tab); + Circuit res_uni_dag = + cm_tableau_to_unitary_extension_circuit(tab).first.dagger(); + Eigen::VectorXcd as_state = tket_sim::get_statevector(res_uni_dag); + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + CmplxSpMat rmat = rrow.first.to_sparse_matrix(3); + if (rrow.second.is_real_negative()) rmat *= -1.; + Eigen::MatrixXcd rmatd = rmat; + CHECK((rmat * as_state).isApprox(as_state)); + } } GIVEN("Another circuit for extra test coverage in row reductions") { Circuit circ(5); @@ -564,13 +639,24 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { circ.add_op(OpType::Collapse, {4}); circ.add_op(OpType::H, {4}); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - Circuit res = cm_tableau_to_circuit(tab).first; - ChoiMixTableau res_tab = circuit_to_cm_tableau(res); - tab.canonical_column_order(); - tab.gaussian_form(); - res_tab.canonical_column_order(); - res_tab.gaussian_form(); + std::pair res = cm_tableau_to_exact_circuit(tab); + res.first.permute_boundary_output(inv_perm(res.second)); + ChoiMixTableau res_tab = circuit_to_cm_tableau(res.first); REQUIRE(res_tab == tab); + std::pair res_uni = + cm_tableau_to_unitary_extension_circuit(tab); + res_uni.first.permute_boundary_output(inv_perm(res_uni.second)); + res_tab = circuit_to_cm_tableau(res_uni.first); + res_tab.tab_.row_mult(0, 1); + Eigen::MatrixXcd res_u = tket_sim::get_unitary(res_uni.first); + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + CmplxSpMat inmat = rrow.first.to_sparse_matrix(5); + Eigen::MatrixXcd inmatd = inmat; + CmplxSpMat outmat = rrow.second.to_sparse_matrix(5); + Eigen::MatrixXcd outmatd = outmat; + CHECK((outmatd * res_u * inmatd).isApprox(res_u)); + } } GIVEN("An isometry") { Circuit circ(5); @@ -586,18 +672,36 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { circ.add_op(OpType::CX, {1, 2}); circ.add_op(OpType::CX, {1, 0}); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - std::pair res = cm_tableau_to_circuit(tab); + std::pair res = cm_tableau_to_exact_circuit(tab); ChoiMixTableau res_tab = circuit_to_cm_tableau(res.first); qubit_map_t perm; - for (const std::pair& p : res.second) { - perm.insert({Qubit(p.second), Qubit(p.first)}); + for (const std::pair& p : res.second) { + perm.insert({p.second, p.first}); } res_tab.rename_qubits(perm, ChoiMixTableau::TableauSegment::Output); - tab.canonical_column_order(); - tab.gaussian_form(); res_tab.canonical_column_order(); res_tab.gaussian_form(); REQUIRE(res_tab == tab); + std::pair res_uni = + cm_tableau_to_unitary_extension_circuit( + tab, {Qubit(1), Qubit(2), Qubit(3)}); + Eigen::MatrixXcd res_u = tket_sim::get_unitary(res_uni.first); + Eigen::MatrixXcd init_proj = Eigen::MatrixXcd::Zero(32, 32); + init_proj.block(0, 0, 2, 2) = Eigen::MatrixXcd::Identity(2, 2); + init_proj.block(16, 16, 2, 2) = Eigen::MatrixXcd::Identity(2, 2); + Eigen::MatrixXcd res_iso = res_u * init_proj; + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + CmplxSpMat inmat = rrow.first.to_sparse_matrix(5); + Eigen::MatrixXcd inmatd = inmat; + QubitPauliMap outstr; + for (const std::pair& qp : rrow.second.string) + outstr.insert({res_uni.second.at(qp.first), qp.second}); + CmplxSpMat outmat = SpPauliString(outstr).to_sparse_matrix(5); + Eigen::MatrixXcd outmatd = outmat; + if (rrow.second.is_real_negative()) outmatd *= -1.; + CHECK((outmatd * res_iso * inmatd).isApprox(res_iso)); + } } GIVEN("Extra coverage for isometries") { Circuit circ(5); @@ -615,18 +719,211 @@ SCENARIO("Synthesis of circuits from ChoiMixTableaus") { circ.add_op(OpType::CX, {1, 2}); circ.add_op(OpType::CX, {1, 0}); ChoiMixTableau tab = circuit_to_cm_tableau(circ); - std::pair res = cm_tableau_to_circuit(tab); + std::pair res = cm_tableau_to_exact_circuit(tab); ChoiMixTableau res_tab = circuit_to_cm_tableau(res.first); qubit_map_t perm; - for (const std::pair& p : res.second) { - perm.insert({Qubit(p.second), Qubit(p.first)}); + for (const std::pair& p : res.second) { + perm.insert({p.second, p.first}); } res_tab.rename_qubits(perm, ChoiMixTableau::TableauSegment::Output); + res_tab.canonical_column_order(); + res_tab.gaussian_form(); + REQUIRE(res_tab == tab); + std::pair res_uni = + cm_tableau_to_unitary_extension_circuit( + tab, {Qubit(1), Qubit(2), Qubit(3)}); + Eigen::MatrixXcd res_u = tket_sim::get_unitary(res_uni.first); + Eigen::MatrixXcd init_proj = Eigen::MatrixXcd::Zero(32, 32); + init_proj.block(0, 0, 2, 2) = Eigen::MatrixXcd::Identity(2, 2); + init_proj.block(16, 16, 2, 2) = Eigen::MatrixXcd::Identity(2, 2); + Eigen::MatrixXcd res_iso = res_u * init_proj; + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + CmplxSpMat inmat = rrow.first.to_sparse_matrix(5); + Eigen::MatrixXcd inmatd = inmat; + QubitPauliMap outstr; + for (const std::pair& qp : rrow.second.string) + outstr.insert({res_uni.second.at(qp.first), qp.second}); + CmplxSpMat outmat = SpPauliString(outstr).to_sparse_matrix(5); + Eigen::MatrixXcd outmatd = outmat; + if (rrow.second.is_real_negative()) outmatd *= -1.; + CHECK((outmatd * res_iso * inmatd).isApprox(res_iso)); + } + } + GIVEN("Synthesising a tableau requiring post-selection") { + Circuit circ = get_test_circ(); + ChoiMixTableau tab = circuit_to_cm_tableau(circ); + tab.post_select(Qubit(0), ChoiMixTableau::TableauSegment::Output); + std::pair res_uni = + cm_tableau_to_unitary_extension_circuit(tab, {}, {Qubit(0)}); + Eigen::MatrixXcd res_u = tket_sim::get_unitary(res_uni.first); + // q[0] was removed from the tableau by postselection so need to infer + // position in res_uni.second from the other qubits + SpPauliString zzz({Pauli::Z, Pauli::Z, Pauli::Z}); + zzz.set(res_uni.second.at(Qubit(1)), Pauli::I); + zzz.set(res_uni.second.at(Qubit(2)), Pauli::I); + Eigen::MatrixXcd z0 = zzz.to_sparse_matrix(3); + Eigen::MatrixXcd res_proj = 0.5 * (res_u + (z0 * res_u)); + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + CmplxSpMat inmat = rrow.first.to_sparse_matrix(3); + Eigen::MatrixXcd inmatd = inmat; + QubitPauliMap outstr; + for (const std::pair& qp : rrow.second.string) + outstr.insert({res_uni.second.at(qp.first), qp.second}); + CmplxSpMat outmat = SpPauliString(outstr).to_sparse_matrix(3); + Eigen::MatrixXcd outmatd = outmat; + if (rrow.second.is_real_negative()) outmatd *= -1.; + CHECK((outmatd * res_proj * inmatd).isApprox(res_proj)); + } + } + GIVEN("Synthesising a tableau with all post-selections") { + Circuit circ = get_test_circ(); + ChoiMixTableau tab = circuit_to_cm_tableau(circ); + tab.post_select(Qubit(0), ChoiMixTableau::TableauSegment::Output); + tab.post_select(Qubit(1), ChoiMixTableau::TableauSegment::Output); + tab.post_select(Qubit(2), ChoiMixTableau::TableauSegment::Output); + Circuit res = cm_tableau_to_unitary_extension_circuit( + tab, {}, {Qubit(0), Qubit(1), Qubit(2)}) + .first.dagger(); + Eigen::VectorXcd res_sv = tket_sim::get_statevector(res); + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + Eigen::MatrixXcd inmat = rrow.first.to_sparse_matrix(3); + if (rrow.second.is_real_negative()) inmat *= -1.; + CHECK((inmat * res_sv).isApprox(res_sv)); + } + } + GIVEN("Initialisations, collapses, discards and post-selections") { + Circuit circ(5); + circ.qubit_create(Qubit(1)); + circ.qubit_create(Qubit(2)); + circ.add_op(OpType::H, {4}); + circ.add_op(OpType::Collapse, {4}); + circ.add_op(OpType::CX, {4, 1}); + circ.add_op(OpType::CX, {4, 2}); + circ.add_op(OpType::CX, {4, 3}); + circ.add_op(OpType::H, {4}); + circ.add_op(OpType::H, {1}); + circ.add_op(OpType::V, {2}); + circ.add_op(OpType::CX, {1, 2}); + circ.add_op(OpType::CX, {1, 0}); + circ.qubit_discard(Qubit(0)); + ChoiMixTableau tab = circuit_to_cm_tableau(circ); + tab.post_select(Qubit(3), ChoiMixTableau::TableauSegment::Output); tab.canonical_column_order(); tab.gaussian_form(); + std::pair res_uni = + cm_tableau_to_unitary_extension_circuit(tab, {Qubit(1)}, {Qubit(0)}); + // First rebuild tableau by initialising, post-selecting, etc. + ChoiMixTableau res_tab = circuit_to_cm_tableau(res_uni.first); + qubit_map_t perm; + for (const std::pair& p : res_uni.second) + perm.insert({p.second, p.first}); + res_tab.rename_qubits(perm, ChoiMixTableau::TableauSegment::Output); + // Post-select/initialise + res_tab.post_select(Qubit(1), ChoiMixTableau::TableauSegment::Input); + res_tab.post_select(Qubit(0), ChoiMixTableau::TableauSegment::Output); + // Collapsing q[4] in X basis as per circ + res_tab.apply_gate( + OpType::H, {Qubit(4)}, ChoiMixTableau::TableauSegment::Output); + res_tab.collapse_qubit(Qubit(4), ChoiMixTableau::TableauSegment::Output); + res_tab.apply_gate( + OpType::H, {Qubit(4)}, ChoiMixTableau::TableauSegment::Output); + // Discarding q[0] also removes Z row for q[0], so recreate this by + // XCollapse at input + res_tab.apply_gate( + OpType::H, {Qubit(0)}, ChoiMixTableau::TableauSegment::Input); + res_tab.collapse_qubit(Qubit(0), ChoiMixTableau::TableauSegment::Input); + res_tab.apply_gate( + OpType::H, {Qubit(0)}, ChoiMixTableau::TableauSegment::Input); res_tab.canonical_column_order(); res_tab.gaussian_form(); REQUIRE(res_tab == tab); + + Eigen::MatrixXcd res_u = tket_sim::get_unitary(res_uni.first); + qubit_vector_t res_qbs = res_uni.first.all_qubits(); + // q[1] has no input terms, so initialise it + SpPauliString z1({Qubit(1), Pauli::Z}); + Eigen::MatrixXcd z1u = z1.to_sparse_matrix(res_qbs); + res_u = 0.5 * (res_u + (res_u * z1u)); + // q[0] has no output terms, so postselect it + SpPauliString z0({res_uni.second.at(Qubit(0)), Pauli::Z}); + Eigen::MatrixXcd z0u = z0.to_sparse_matrix(res_qbs); + res_u = 0.5 * (res_u + (z0u * res_u)); + + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + Eigen::MatrixXcd inmat = rrow.first.to_sparse_matrix(res_qbs); + QubitPauliMap outstr; + for (const std::pair& qp : rrow.second.string) + outstr.insert({res_uni.second.at(qp.first), qp.second}); + Eigen::MatrixXcd outmat = SpPauliString(outstr).to_sparse_matrix(res_qbs); + if (rrow.second.is_real_negative()) outmat *= -1.; + CHECK((outmat * res_u * inmat).isApprox(res_u)); + } + } + GIVEN( + "A custom tableau with overlapping initialised and post-selected " + "qubits") { + std::list rows{ + {SpPauliStabiliser({Pauli::Z, Pauli::X, Pauli::I}), {}}, + {SpPauliStabiliser({Pauli::X, Pauli::Y, Pauli::Z}), {}}, + {{}, SpPauliStabiliser({Pauli::X, Pauli::X, Pauli::I})}, + {{}, SpPauliStabiliser({Pauli::I, Pauli::X, Pauli::X})}, + {SpPauliStabiliser({Pauli::I, Pauli::I, Pauli::Z}), + SpPauliStabiliser({Pauli::Z, Pauli::Z, Pauli::Z})}, + {SpPauliStabiliser({Pauli::Z, Pauli::I, Pauli::X}), + SpPauliStabiliser({Pauli::I, Pauli::I, Pauli::X})}, + }; + ChoiMixTableau tab(rows); + REQUIRE_THROWS(cm_tableau_to_unitary_extension_circuit(tab)); + std::pair res_uni = + cm_tableau_to_unitary_extension_circuit( + tab, {Qubit(3), Qubit(4)}, {Qubit(3), Qubit(4)}); + + ChoiMixTableau res_tab = circuit_to_cm_tableau(res_uni.first); + qubit_map_t perm; + for (const std::pair& p : res_uni.second) + perm.insert({p.second, p.first}); + res_tab.rename_qubits(perm, ChoiMixTableau::TableauSegment::Output); + res_tab.post_select(Qubit(3), ChoiMixTableau::TableauSegment::Input); + res_tab.post_select(Qubit(4), ChoiMixTableau::TableauSegment::Input); + res_tab.post_select(Qubit(3), ChoiMixTableau::TableauSegment::Output); + res_tab.post_select(Qubit(4), ChoiMixTableau::TableauSegment::Output); + res_tab.canonical_column_order(); + res_tab.gaussian_form(); + tab.canonical_column_order(); + tab.gaussian_form(); + REQUIRE(res_tab == tab); + + Eigen::MatrixXcd res_u = tket_sim::get_unitary(res_uni.first); + qubit_vector_t res_qbs = res_uni.first.all_qubits(); + // initialise q[3] and q[4] + SpPauliString z3i{Qubit(3), Pauli::Z}; + Eigen::MatrixXcd z3iu = z3i.to_sparse_matrix(res_qbs); + res_u = 0.5 * (res_u + (res_u * z3iu)); + SpPauliString z4i{Qubit(4), Pauli::Z}; + Eigen::MatrixXcd z4iu = z4i.to_sparse_matrix(res_qbs); + res_u = 0.5 * (res_u + (res_u * z4iu)); + // post-select q[3] and q[4] + SpPauliString z3o{res_uni.second.at(Qubit(3)), Pauli::Z}; + Eigen::MatrixXcd z3ou = z3o.to_sparse_matrix(res_qbs); + res_u = 0.5 * (res_u + (z3ou * res_u)); + SpPauliString z4o{res_uni.second.at(Qubit(4)), Pauli::Z}; + Eigen::MatrixXcd z4ou = z4o.to_sparse_matrix(res_qbs); + res_u = 0.5 * (res_u + (z4ou * res_u)); + + for (unsigned r = 0; r < tab.get_n_rows(); ++r) { + ChoiMixTableau::row_tensor_t rrow = tab.get_row(r); + Eigen::MatrixXcd inmat = rrow.first.to_sparse_matrix(res_qbs); + QubitPauliMap outstr; + for (const std::pair& qp : rrow.second.string) + outstr.insert({res_uni.second.at(qp.first), qp.second}); + Eigen::MatrixXcd outmat = SpPauliString(outstr).to_sparse_matrix(res_qbs); + if (rrow.second.is_real_negative()) outmat *= -1.; + CHECK((outmat * res_u * inmat).isApprox(res_u)); + } } } diff --git a/tket/test/src/test_Diagonalisation.cpp b/tket/test/src/test_Diagonalisation.cpp new file mode 100644 index 0000000000..990d9695ca --- /dev/null +++ b/tket/test/src/test_Diagonalisation.cpp @@ -0,0 +1,124 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include + +#include "tket/Circuit/Simulation/CircuitSimulator.hpp" +#include "tket/Diagonalisation/Diagonalisation.hpp" + +namespace tket { + +namespace test_Diagonalisation { + +SCENARIO("Matrix tests for reducing a Pauli to Z") { + std::list test_paulis{Pauli::I, Pauli::X, Pauli::Y, Pauli::Z}; + std::list test_configs = { + CXConfigType::Snake, CXConfigType::Tree, CXConfigType::Star, + CXConfigType::MultiQGate}; + for (const Pauli& p : test_paulis) { + // If p is Pauli::I, it is dropped from the sparse representation in the + // constructor, so need to add Qubit(3) to the circuit and sparse matrix + // explicitly + SpPauliStabiliser pt({Pauli::X, Pauli::Y, Pauli::Z, p}); + CmplxSpMat pt_u = pt.to_sparse_matrix(4); + Eigen::MatrixXcd pt_ud = pt_u; + for (const CXConfigType& config : test_configs) { + std::pair diag = reduce_pauli_to_z(pt, config); + if (p == Pauli::I) diag.first.add_qubit(Qubit(3)); + Eigen::MatrixXcd diag_u = tket_sim::get_unitary(diag.first); + CmplxSpMat z_u = SpPauliString(diag.second, Pauli::Z).to_sparse_matrix(4); + Eigen::MatrixXcd z_ud = z_u; + CHECK((z_ud * diag_u * pt_ud).isApprox(diag_u)); + } + } +} + +SCENARIO("Matrix tests for reducing two anticommuting Paulis to Z X") { + std::list non_trivials{Pauli::X, Pauli::Y, Pauli::Z}; + std::list test_configs = { + CXConfigType::Snake, CXConfigType::Tree, CXConfigType::Star, + CXConfigType::MultiQGate}; + // Loop through all commuting options for two qubits + for (const Pauli& p0 : non_trivials) { + for (const Pauli& p1 : non_trivials) { + SpPauliStabiliser p({Pauli::Z, p0, p1, Pauli::Z}); + CmplxSpMat p_u = p.to_sparse_matrix(); + Eigen::MatrixXcd p_ud = p_u; + for (const Pauli& q0 : non_trivials) { + for (const Pauli& q1 : non_trivials) { + SpPauliStabiliser q({Pauli::X, q0, q1, Pauli::Z}); + if (p.commutes_with(q)) continue; + CmplxSpMat q_u = q.to_sparse_matrix(); + Eigen::MatrixXcd q_ud = q_u; + for (const CXConfigType& config : test_configs) { + std::pair diag = + reduce_anticommuting_paulis_to_z_x(p, q, config); + Eigen::MatrixXcd diag_u = tket_sim::get_unitary(diag.first); + CmplxSpMat z_u = + SpPauliString(diag.second, Pauli::Z).to_sparse_matrix(4); + Eigen::MatrixXcd z_ud = z_u; + CmplxSpMat x_u = + SpPauliString(diag.second, Pauli::X).to_sparse_matrix(4); + Eigen::MatrixXcd x_ud = x_u; + CHECK((z_ud * diag_u * p_ud).isApprox(diag_u)); + CHECK((x_ud * diag_u * q_ud).isApprox(diag_u)); + } + } + } + } + } +} + +SCENARIO("Matrix tests for reducing two commuting Paulis to Z X") { + std::list paulis{Pauli::I, Pauli::X, Pauli::Y, Pauli::Z}; + std::list test_configs = { + CXConfigType::Snake, CXConfigType::Tree, CXConfigType::Star, + CXConfigType::MultiQGate}; + // Loop through all commuting options for two qubits + for (const Pauli& p0 : paulis) { + for (const Pauli& p1 : paulis) { + SpPauliStabiliser p({Pauli::Z, p0, p1, Pauli::Z}); + CmplxSpMat p_u = p.to_sparse_matrix(4); + Eigen::MatrixXcd p_ud = p_u; + for (const Pauli& q0 : paulis) { + for (const Pauli& q1 : paulis) { + SpPauliStabiliser q({Pauli::Z, q0, q1, Pauli::I}); + if (!p.commutes_with(q)) continue; + CmplxSpMat q_u = q.to_sparse_matrix(4); + Eigen::MatrixXcd q_ud = q_u; + for (const CXConfigType& config : test_configs) { + std::tuple diag = + reduce_commuting_paulis_to_zi_iz(p, q, config); + Circuit& circ = std::get<0>(diag); + // In cases with matching Pauli::Is, the circuit produced may not + // include all qubits + for (unsigned i = 0; i < 4; ++i) circ.add_qubit(Qubit(i), false); + Eigen::MatrixXcd diag_u = tket_sim::get_unitary(circ); + CmplxSpMat zi_u = + SpPauliString(std::get<1>(diag), Pauli::Z).to_sparse_matrix(4); + Eigen::MatrixXcd zi_ud = zi_u; + CmplxSpMat iz_u = + SpPauliString(std::get<2>(diag), Pauli::Z).to_sparse_matrix(4); + Eigen::MatrixXcd iz_ud = iz_u; + CHECK((zi_ud * diag_u * p_ud).isApprox(diag_u)); + CHECK((iz_ud * diag_u * q_ud).isApprox(diag_u)); + } + } + } + } + } +} + +} // namespace test_Diagonalisation +} // namespace tket diff --git a/tket/test/src/test_PauliGraph.cpp b/tket/test/src/test_PauliGraph.cpp index c8d4758dc4..6e85b53252 100644 --- a/tket/test/src/test_PauliGraph.cpp +++ b/tket/test/src/test_PauliGraph.cpp @@ -18,10 +18,10 @@ #include "CircuitsForTesting.hpp" #include "testutil.hpp" #include "tket/Circuit/Boxes.hpp" +#include "tket/Circuit/CircUtils.hpp" #include "tket/Circuit/PauliExpBoxes.hpp" #include "tket/Circuit/Simulation/CircuitSimulator.hpp" #include "tket/Converters/Converters.hpp" -#include "tket/Converters/PauliGadget.hpp" #include "tket/Diagonalisation/Diagonalisation.hpp" #include "tket/Gate/SymTable.hpp" #include "tket/PauliGraph/ConjugatePauliFunctions.hpp" @@ -920,13 +920,14 @@ SCENARIO("Diagonalise a pair of gadgets") { Circuit correct; for (unsigned i = 0; i < 2; ++i) { - append_single_pauli_gadget(correct, gadgets.at(i)); + correct.append(pauli_gadget(gadgets.at(i))); } auto u_correct = tket_sim::get_unitary(correct); GIVEN("Snake configuration") { CXConfigType config = CXConfigType::Snake; - append_pauli_gadget_pair(circ, gadgets.at(0), gadgets.at(1), config); + + circ.append(pauli_gadget_pair(gadgets.at(0), gadgets.at(1), config)); THEN("Unitary is correct") { auto u_res = tket_sim::get_unitary(circ); REQUIRE((u_correct - u_res).cwiseAbs().sum() < ERR_EPS); @@ -934,7 +935,7 @@ SCENARIO("Diagonalise a pair of gadgets") { } GIVEN("Star configuration") { CXConfigType config = CXConfigType::Star; - append_pauli_gadget_pair(circ, gadgets.at(0), gadgets.at(1), config); + circ.append(pauli_gadget_pair(gadgets.at(0), gadgets.at(1), config)); THEN("Unitary is correct") { auto u_res = tket_sim::get_unitary(circ); REQUIRE((u_correct - u_res).cwiseAbs().sum() < ERR_EPS); @@ -942,7 +943,7 @@ SCENARIO("Diagonalise a pair of gadgets") { } GIVEN("Tree configuration") { CXConfigType config = CXConfigType::Tree; - append_pauli_gadget_pair(circ, gadgets.at(0), gadgets.at(1), config); + circ.append(pauli_gadget_pair(gadgets.at(0), gadgets.at(1), config)); THEN("Unitary is correct") { auto u_res = tket_sim::get_unitary(circ); REQUIRE((u_correct - u_res).cwiseAbs().sum() < ERR_EPS); @@ -950,10 +951,11 @@ SCENARIO("Diagonalise a pair of gadgets") { } GIVEN("MultiQGate configuration") { CXConfigType config = CXConfigType::MultiQGate; - append_pauli_gadget_pair(circ, gadgets.at(0), gadgets.at(1), config); - circ.decompose_boxes_recursively(); - THEN("XXPhase3 were used") { - REQUIRE(circ.count_gates(OpType::XXPhase3) == 2); + circ.append(pauli_gadget_pair(gadgets.at(0), gadgets.at(1), config)); + THEN( + "XXPhase3 were used for both mutual reduction and individual gadgets") { + Transforms::decomp_boxes().apply(circ); + REQUIRE(circ.count_gates(OpType::XXPhase3) == 4); } THEN("Unitary is correct") { auto u_res = tket_sim::get_unitary(circ); diff --git a/tket/test/src/test_PhaseGadget.cpp b/tket/test/src/test_PhaseGadget.cpp index cf02d862d9..302ff95155 100644 --- a/tket/test/src/test_PhaseGadget.cpp +++ b/tket/test/src/test_PhaseGadget.cpp @@ -149,7 +149,8 @@ SCENARIO("Constructing Pauli gadgets") { 1.*i_, 0., 0., 0.; // clang-format on Eigen::Matrix4cd m = (+0.5 * PI * i_ * t * a).exp(); - Circuit circ = pauli_gadget({Pauli::X, Pauli::Y}, t); + Circuit circ = + pauli_gadget(SpSymPauliTensor(DensePauliMap{Pauli::X, Pauli::Y}, t)); const Eigen::Matrix4cd u = tket_sim::get_unitary(circ); Eigen::Matrix4cd v = m * u; REQUIRE((v - Eigen::Matrix4cd::Identity()).cwiseAbs().sum() < ERR_EPS); @@ -286,7 +287,7 @@ SCENARIO("Decompose phase gadgets") { for (unsigned i = 0; i < n_qubits; ++i) { nZ.push_back(Pauli::Z); } - Circuit pauli_gadget_circ = pauli_gadget(nZ, 0.2); + Circuit pauli_gadget_circ = pauli_gadget(SpSymPauliTensor(nZ, 0.2)); pauli_gadget_circ.decompose_boxes_recursively(); Circuit phase_gadget_circ = phase_gadget(n_qubits, 0.2, config); phase_gadget_circ.decompose_boxes_recursively(); diff --git a/tket/test/src/test_UnitaryTableau.cpp b/tket/test/src/test_UnitaryTableau.cpp index 68cd333c23..b9a0a9d20d 100644 --- a/tket/test/src/test_UnitaryTableau.cpp +++ b/tket/test/src/test_UnitaryTableau.cpp @@ -16,6 +16,7 @@ #include #include "testutil.hpp" +#include "tket/Circuit/Simulation/CircuitSimulator.hpp" #include "tket/Clifford/UnitaryTableau.hpp" #include "tket/Converters/Converters.hpp" #include "tket/Converters/UnitaryTableauBox.hpp" @@ -246,11 +247,59 @@ SCENARIO("Correct creation of UnitaryTableau") { CHECK(tab0 == tab4); CHECK(tab0 == tab5); } + GIVEN("A single Z gate") { + UnitaryTableau tab0(3); + UnitaryTableau tab1(3); + UnitaryTableau tab2(3); + UnitaryTableau tab3(3); + UnitaryTableau tab4(3); + UnitaryTableau tab5(3); + tab0.apply_gate_at_front(OpType::Z, {Qubit(0)}); + tab1.apply_gate_at_end(OpType::Z, {Qubit(0)}); + tab2.apply_gate_at_front(OpType::S, {Qubit(0)}); + tab2.apply_gate_at_front(OpType::S, {Qubit(0)}); + tab3.apply_gate_at_end(OpType::Sdg, {Qubit(0)}); + tab3.apply_gate_at_end(OpType::Sdg, {Qubit(0)}); + tab4.apply_Z_at_front(Qubit(0)); + tab5.apply_Z_at_end(Qubit(0)); + CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); + CHECK(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X, 2)); + CHECK(tab0 == tab1); + CHECK(tab0 == tab2); + CHECK(tab0 == tab3); + CHECK(tab0 == tab4); + CHECK(tab0 == tab5); + } + GIVEN("A single X gate") { + UnitaryTableau tab0(3); + UnitaryTableau tab1(3); + UnitaryTableau tab2(3); + UnitaryTableau tab3(3); + UnitaryTableau tab4(3); + UnitaryTableau tab5(3); + tab0.apply_gate_at_front(OpType::X, {Qubit(0)}); + tab1.apply_gate_at_end(OpType::X, {Qubit(0)}); + tab2.apply_gate_at_front(OpType::V, {Qubit(0)}); + tab2.apply_gate_at_front(OpType::V, {Qubit(0)}); + tab3.apply_gate_at_end(OpType::Vdg, {Qubit(0)}); + tab3.apply_gate_at_end(OpType::Vdg, {Qubit(0)}); + tab4.apply_X_at_front(Qubit(0)); + tab5.apply_X_at_end(Qubit(0)); + CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z, 2)); + CHECK(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); + CHECK(tab0 == tab1); + CHECK(tab0 == tab2); + CHECK(tab0 == tab3); + CHECK(tab0 == tab4); + CHECK(tab0 == tab5); + } GIVEN("A single H gate") { UnitaryTableau tab0(3); UnitaryTableau tab1(3); UnitaryTableau tab2(3); UnitaryTableau tab3(3); + UnitaryTableau tab4(3); + UnitaryTableau tab5(3); tab0.apply_gate_at_front(OpType::H, {Qubit(0)}); tab1.apply_gate_at_end(OpType::H, {Qubit(0)}); tab2.apply_gate_at_front(OpType::S, {Qubit(0)}); @@ -259,11 +308,15 @@ SCENARIO("Correct creation of UnitaryTableau") { tab3.apply_gate_at_end(OpType::Vdg, {Qubit(0)}); tab3.apply_gate_at_end(OpType::Sdg, {Qubit(0)}); tab3.apply_gate_at_end(OpType::Vdg, {Qubit(0)}); + tab4.apply_H_at_front(Qubit(0)); + tab5.apply_H_at_end(Qubit(0)); CHECK(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); CHECK(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); CHECK(tab0 == tab1); CHECK(tab0 == tab2); CHECK(tab0 == tab3); + CHECK(tab0 == tab4); + CHECK(tab0 == tab5); } GIVEN("A single CX gate") { UnitaryTableau tab0(3); @@ -297,6 +350,21 @@ SCENARIO("Correct creation of UnitaryTableau") { UnitaryTableau tab = circuit_to_unitary_tableau(circ); UnitaryTableau rev_tab = get_tableau_with_gates_applied_at_front(); REQUIRE(tab == rev_tab); + Eigen::MatrixXcd circ_u = tket_sim::get_unitary(circ); + for (unsigned q = 0; q < 3; ++q) { + CmplxSpMat xq = SpPauliString(Qubit(q), Pauli::X).to_sparse_matrix(3); + Eigen::MatrixXcd xqd = xq; + PauliStabiliser xrow = tab.get_xrow(Qubit(q)); + CmplxSpMat xrowmat = xrow.to_sparse_matrix(3); + Eigen::MatrixXcd xrowmatd = xrowmat; + CHECK((xrowmatd * circ_u * xqd).isApprox(circ_u)); + CmplxSpMat zq = SpPauliString(Qubit(q), Pauli::Z).to_sparse_matrix(3); + Eigen::MatrixXcd zqd = zq; + PauliStabiliser zrow = tab.get_zrow(Qubit(q)); + CmplxSpMat zrowmat = zrow.to_sparse_matrix(3); + Eigen::MatrixXcd zrowmatd = zrowmat; + CHECK((zrowmatd * circ_u * zqd).isApprox(circ_u)); + } } GIVEN("A PI/2 rotation") { Circuit circ = get_test_circ(); @@ -359,6 +427,22 @@ SCENARIO("Synthesis of circuits from UnitaryTableau") { UnitaryTableau res_tab = circuit_to_unitary_tableau(res); REQUIRE(res_tab == tab); } + GIVEN("Additional gate coverage, check unitary") { + Circuit circ(4); + circ.add_op(OpType::ZZMax, {0, 1}); + circ.add_op(OpType::ECR, {2, 3}); + circ.add_op(OpType::ISWAPMax, {1, 2}); + circ.add_op(OpType::noop, {0}); + UnitaryTableau tab = circuit_to_unitary_tableau(circ); + UnitaryTableau rev_tab(4); + rev_tab.apply_gate_at_front(OpType::noop, {Qubit(0)}); + rev_tab.apply_gate_at_front(OpType::ISWAPMax, {Qubit(1), Qubit(2)}); + rev_tab.apply_gate_at_front(OpType::ECR, {Qubit(2), Qubit(3)}); + rev_tab.apply_gate_at_front(OpType::ZZMax, {Qubit(0), Qubit(1)}); + REQUIRE(tab == rev_tab); + Circuit res = unitary_tableau_to_circuit(tab); + REQUIRE(test_unitary_comparison(circ, res, true)); + } } SCENARIO("Correct creation of UnitaryRevTableau") { @@ -418,14 +502,52 @@ SCENARIO("Correct creation of UnitaryRevTableau") { CHECK(tab0 == tab4); CHECK(tab0 == tab5); } + GIVEN("A single Z gate") { + UnitaryRevTableau tab0(3); + UnitaryRevTableau tab1(3); + UnitaryRevTableau tab2(3); + UnitaryRevTableau tab3(3); + tab0.apply_gate_at_end(OpType::Z, {Qubit(0)}); + tab1.apply_gate_at_front(OpType::Z, {Qubit(0)}); + tab2.apply_Z_at_end(Qubit(0)); + tab3.apply_Z_at_front(Qubit(0)); + REQUIRE(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); + REQUIRE( + tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X, 2)); + REQUIRE(tab0 == tab1); + REQUIRE(tab0 == tab2); + REQUIRE(tab0 == tab3); + } + GIVEN("A single X gate") { + UnitaryRevTableau tab0(3); + UnitaryRevTableau tab1(3); + UnitaryRevTableau tab2(3); + UnitaryRevTableau tab3(3); + tab0.apply_gate_at_end(OpType::X, {Qubit(0)}); + tab1.apply_gate_at_front(OpType::X, {Qubit(0)}); + tab2.apply_X_at_end(Qubit(0)); + tab3.apply_X_at_front(Qubit(0)); + REQUIRE( + tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z, 2)); + REQUIRE(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); + REQUIRE(tab0 == tab1); + REQUIRE(tab0 == tab2); + REQUIRE(tab0 == tab3); + } GIVEN("A single H gate") { UnitaryRevTableau tab0(3); UnitaryRevTableau tab1(3); + UnitaryRevTableau tab2(3); + UnitaryRevTableau tab3(3); tab0.apply_gate_at_end(OpType::H, {Qubit(0)}); tab1.apply_gate_at_front(OpType::H, {Qubit(0)}); + tab2.apply_H_at_end(Qubit(0)); + tab3.apply_H_at_front(Qubit(0)); REQUIRE(tab0.get_zrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::X)); REQUIRE(tab0.get_xrow(Qubit(0)) == SpPauliStabiliser(Qubit(0), Pauli::Z)); REQUIRE(tab0 == tab1); + REQUIRE(tab0 == tab2); + REQUIRE(tab0 == tab3); } GIVEN("A single CX gate") { UnitaryRevTableau tab0(3); @@ -521,6 +643,18 @@ SCENARIO("Synthesis of circuits from UnitaryRevTableau") { UnitaryRevTableau res_tab = circuit_to_unitary_rev_tableau(res); REQUIRE(res_tab == tab); } + GIVEN("Gate coverage for OpTypes without daggers") { + UnitaryRevTableau tab(3); + tab.apply_gate_at_end(OpType::ZZMax, {Qubit(0), Qubit(1)}); + tab.apply_gate_at_end(OpType::ISWAPMax, {Qubit(1), Qubit(2)}); + UnitaryRevTableau rev_tab(3); + rev_tab.apply_gate_at_front(OpType::ISWAPMax, {Qubit(1), Qubit(2)}); + rev_tab.apply_gate_at_front(OpType::ZZMax, {Qubit(0), Qubit(1)}); + REQUIRE(tab == rev_tab); + Circuit res = unitary_rev_tableau_to_circuit(tab); + UnitaryRevTableau res_tab = circuit_to_unitary_rev_tableau(res); + REQUIRE(tab == res_tab); + } } SCENARIO("UnitaryTableauBoxes in Circuits") { From 05b4eb07cb64d3260d819b5a768caf0f2935d554 Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Wed, 8 Nov 2023 09:39:11 +0000 Subject: [PATCH 19/36] [infra] [tkassert] Link tklog as public (#1111) --- libs/tkassert/CMakeLists.txt | 2 +- libs/tkassert/conanfile.py | 2 +- libs/tkassert/test/conanfile.py | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/tkassert/CMakeLists.txt b/libs/tkassert/CMakeLists.txt index b65ef57dd5..1103474935 100644 --- a/libs/tkassert/CMakeLists.txt +++ b/libs/tkassert/CMakeLists.txt @@ -65,7 +65,7 @@ ENDIF() target_include_directories(tkassert PUBLIC $ $) -target_link_libraries(tkassert PRIVATE tklog::tklog) +target_link_libraries(tkassert PUBLIC tklog::tklog) IF(APPLE) target_link_libraries(tkassert PRIVATE "-flat_namespace") ENDIF() diff --git a/libs/tkassert/conanfile.py b/libs/tkassert/conanfile.py index c9a5431b8e..81c7e8b13b 100644 --- a/libs/tkassert/conanfile.py +++ b/libs/tkassert/conanfile.py @@ -19,7 +19,7 @@ class TkassertConan(ConanFile): name = "tkassert" - version = "0.3.3" + version = "0.3.4" package_type = "library" license = "Apache 2" url = "https://github.com/CQCL/tket" diff --git a/libs/tkassert/test/conanfile.py b/libs/tkassert/test/conanfile.py index 4ec080606d..395d89f11c 100644 --- a/libs/tkassert/test/conanfile.py +++ b/libs/tkassert/test/conanfile.py @@ -19,7 +19,7 @@ class test_tkassertRecipe(ConanFile): name = "test-tkassert" - version = "0.3.3" + version = "0.3.4" package_type = "application" license = "Apache 2" url = "https://github.com/CQCL/tket" @@ -59,5 +59,5 @@ def package(self): cmake.install() def requirements(self): - self.requires("tkassert/0.3.3") + self.requires("tkassert/0.3.4") self.requires("catch2/3.3.2") From b7ce5074588d140ec9bf968c88ea093cd249d64e Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Wed, 8 Nov 2023 13:35:13 +0000 Subject: [PATCH 20/36] [infra] [tktokenswap, tkwsm] Update dependencies and add missing include (#1112) --- libs/tktokenswap/CMakeLists.txt | 2 +- libs/tktokenswap/conanfile.py | 4 ++-- libs/tktokenswap/test/conanfile.py | 2 +- .../tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp | 1 + libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp | 1 + libs/tkwsm/conanfile.py | 4 ++-- libs/tkwsm/test/conanfile.py | 4 ++-- 7 files changed, 10 insertions(+), 8 deletions(-) diff --git a/libs/tktokenswap/CMakeLists.txt b/libs/tktokenswap/CMakeLists.txt index e9e50624ed..898def9aae 100644 --- a/libs/tktokenswap/CMakeLists.txt +++ b/libs/tktokenswap/CMakeLists.txt @@ -69,7 +69,7 @@ target_include_directories(tktokenswap PUBLIC $ $) target_link_libraries(tktokenswap PRIVATE tklog::tklog) -target_link_libraries(tktokenswap PRIVATE tkassert::tkassert) +target_link_libraries(tktokenswap PUBLIC tkassert::tkassert) target_link_libraries(tktokenswap PRIVATE tkrng::tkrng) target_link_libraries(tktokenswap PRIVATE Boost::headers) diff --git a/libs/tktokenswap/conanfile.py b/libs/tktokenswap/conanfile.py index c55678a9d1..dfbf0ca64e 100644 --- a/libs/tktokenswap/conanfile.py +++ b/libs/tktokenswap/conanfile.py @@ -19,7 +19,7 @@ class TktokenswapConan(ConanFile): name = "tktokenswap" - version = "0.3.5" + version = "0.3.6" package_type = "library" license = "Apache 2" url = "https://github.com/CQCL/tket" @@ -71,6 +71,6 @@ def package_info(self): def requirements(self): self.requires("tklog/0.3.3@tket/stable") - self.requires("tkassert/0.3.3@tket/stable", transitive_headers=True) + self.requires("tkassert/0.3.4@tket/stable", transitive_headers=True) self.requires("tkrng/0.3.3@tket/stable") self.requires("boost/1.83.0", transitive_libs=False) diff --git a/libs/tktokenswap/test/conanfile.py b/libs/tktokenswap/test/conanfile.py index 361a5eb1e6..18c548eb1c 100644 --- a/libs/tktokenswap/test/conanfile.py +++ b/libs/tktokenswap/test/conanfile.py @@ -59,6 +59,6 @@ def package(self): cmake.install() def requirements(self): - self.requires("tktokenswap/0.3.5") + self.requires("tktokenswap/0.3.6") self.requires("tkrng/0.3.3@tket/stable") self.requires("catch2/3.3.2") diff --git a/libs/tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp b/libs/tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp index b848025f41..c9049afefb 100644 --- a/libs/tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp +++ b/libs/tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp @@ -15,6 +15,7 @@ #include "PermutationTestUtils.hpp" #include +#include #include namespace tket { diff --git a/libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp b/libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp index cb34e951fd..b73e06ab9c 100644 --- a/libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp +++ b/libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp @@ -17,6 +17,7 @@ #include #include #include +#include using std::vector; diff --git a/libs/tkwsm/conanfile.py b/libs/tkwsm/conanfile.py index 8889e09864..f976d75aea 100644 --- a/libs/tkwsm/conanfile.py +++ b/libs/tkwsm/conanfile.py @@ -19,7 +19,7 @@ class TkwsmConan(ConanFile): name = "tkwsm" - version = "0.3.5" + version = "0.3.6" package_type = "library" license = "Apache 2" url = "https://github.com/CQCL/tket" @@ -70,6 +70,6 @@ def package_info(self): self.cpp_info.libs = ["tkwsm"] def requirements(self): - self.requires("tkassert/0.3.3@tket/stable") + self.requires("tkassert/0.3.4@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("boost/1.83.0", transitive_headers=True, transitive_libs=False) diff --git a/libs/tkwsm/test/conanfile.py b/libs/tkwsm/test/conanfile.py index 9001b2276d..5802b184bc 100644 --- a/libs/tkwsm/test/conanfile.py +++ b/libs/tkwsm/test/conanfile.py @@ -59,7 +59,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tkwsm/0.3.5") - self.requires("tkassert/0.3.3@tket/stable") + self.requires("tkwsm/0.3.6") + self.requires("tkassert/0.3.4@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("catch2/3.3.2") From fa08dcefb77d17abc289ef7923d1000f710ef94c Mon Sep 17 00:00:00 2001 From: Silas Dilkes <36165522+sjdilkes@users.noreply.github.com> Date: Thu, 9 Nov 2023 11:47:58 +0000 Subject: [PATCH 21/36] Remove underscored library functions from bindings and `pytket` (#1117) * Remove library._ methods from binders * Update `pytket` use of underscored library functions * Regen stubs --- pytket/binders/circuit_library.cpp | 272 ----------------- pytket/pytket/_tket/circuit_library.pyi | 354 ---------------------- pytket/pytket/circuit_library/__init__.py | 85 ------ pytket/pytket/passes/auto_rebase.py | 36 +-- pytket/tests/passes_serialisation_test.py | 2 +- pytket/tests/transform_test.py | 32 +- 6 files changed, 35 insertions(+), 746 deletions(-) diff --git a/pytket/binders/circuit_library.cpp b/pytket/binders/circuit_library.cpp index 8914230a96..2b85619e48 100644 --- a/pytket/binders/circuit_library.cpp +++ b/pytket/binders/circuit_library.cpp @@ -297,277 +297,5 @@ PYBIND11_MODULE(circuit_library, library_m) { library_m.def( "TK1_to_TK1", &CircPool::tk1_to_tk1, "A circuit of a single tk1 gate with given parameters"); - library_m.def( - "_BRIDGE_using_CX_1", &CircPool::BRIDGE_using_CX_1, - "Equivalent to BRIDGE, using four CX, first CX has control on qubit 1"); - library_m.def( - "_CX_using_TK2", &CircPool::CX_using_TK2, - "Equivalent to CX, using a TK2 and single-qubit gates"); - library_m.def( - "_TK2_using_CX", &CircPool::TK2_using_CX, - "Given expressions α, β and γ, return circuit equivalent to " - "TK2(α, β, γ) using up to 3 CX and single-qubit gates.\n\n" - "The decomposition minimizes the number of CX gates."); - library_m.def( - "_TK2_using_CX_and_swap", &CircPool::TK2_using_CX_and_swap, - "Given expressions α, β and γ, return circuit equivalent to " - "TK2(α, β, γ), up to a wire swap that is encoded in the implicit " - "qubit permutation of the Circuit, using up to 3 CX and single-qubit " - "gates.\n\n" - "The decomposition minimizes the number of CX gates."); - library_m.def( - "_approx_TK2_using_1xCX", &CircPool::approx_TK2_using_1xCX, - "Best approximation of TK2 using 1 CX gate and single-qubit gates, using " - "squared trace fidelity metric. " - "No parameter is required for this approximation. The returned circuit " - "will be equivalent to TK2(0.5, 0, 0)."); - library_m.def( - "_approx_TK2_using_2xCX", &CircPool::approx_TK2_using_2xCX, - "Best approximation of TK2 using 2 CX gates and single-qubit gates, " - "using squared trace fidelity metric. " - "Given expressions α and β, with 0.5 ≥ α ≥ β ≥ 0, return a circuit " - "equivalent to TK2(α, β, 0)."); - library_m.def( - "_TK2_using_3xCX", &CircPool::TK2_using_3xCX, - "Given expressions α, β and γ, return circuit equivalent to " - "TK2(α, β, γ) using 3 CX and single-qubit gates.\n\n" - "Prefer using `_TK2_using_CX` unless you wish to explicitly use 3 CX or " - "if α, β and γ are not normalised to the Weyl chamber."); - library_m.def( - "_CX_using_flipped_CX", &CircPool::CX_using_flipped_CX, - "Equivalent to CX[0,1], using a CX[1,0] and four H gates"); - library_m.def( - "_CX_using_ECR", &CircPool::CX_using_ECR, - "Equivalent to CX, using only ECR, Rx and U3 gates"); - library_m.def( - "_CX_using_ZZMax", &CircPool::CX_using_ZZMax, - "Equivalent to CX, using only ZZMax, Rx and Rz gates"); - library_m.def( - "_CX_using_ZZPhase", &CircPool::CX_using_ZZPhase, - "Equivalent to CX, using only ZZPhase, Rx and Rz gates"); - library_m.def( - "_CX_using_XXPhase_0", &CircPool::CX_using_XXPhase_0, - "Equivalent to CX, using only XXPhase, Rx, Ry and Rz gates"); - - library_m.def( - "_CX_using_XXPhase_1", &CircPool::CX_using_XXPhase_1, - "Equivalent to CX, using only XXPhase, Rx, Ry and Rz gates"); - library_m.def( - "_CX_VS_CX_reduced", &CircPool::CX_VS_CX_reduced, - "CX-reduced form of CX/V,S/CX"); - library_m.def( - "_CX_V_CX_reduced", &CircPool::CX_V_CX_reduced, - "CX-reduced form of CX/V,-/CX"); - library_m.def( - "_CX_S_CX_reduced", &CircPool::CX_S_CX_reduced, - "CX-reduced form of CX/-,S/CX (= ZZMax)"); - library_m.def( - "_CX_V_S_XC_reduced", &CircPool::CX_V_S_XC_reduced, - "CX-reduced form of CX/V,-/S,-/XC"); - library_m.def( - "_CX_S_V_XC_reduced", &CircPool::CX_S_V_XC_reduced, - "CX-reduced form of CX/-,S/-,V/XC"); - library_m.def( - "_CX_XC_reduced", &CircPool::CX_XC_reduced, "CX-reduced form of CX/XC"); - library_m.def( - "_SWAP_using_CX_0", &CircPool::SWAP_using_CX_0, - "Equivalent to SWAP, using three CX, outer CX have control on qubit 0"); - library_m.def( - "_SWAP_using_CX_1", &CircPool::SWAP_using_CX_1, - "Equivalent to SWAP, using three CX, outer CX have control on qubit 1"); - library_m.def( - "_two_Rz1", &CircPool::two_Rz1, - "A two-qubit circuit with an Rz(1) on each qubit"); - library_m.def("_X1_CX", &CircPool::X1_CX, "X[1]; CX[0,1]"); - library_m.def("_Z0_CX", &CircPool::Z0_CX, "Z[0]; CX[0,1] "); - - library_m.def( - "_CCX_modulo_phase_shift", &CircPool::CCX_modulo_phase_shift, - "Equivalent to CCX up to phase shift, using three CX. Warning: this is " - "not equivalent to CCX up to global phase so cannot be used as a direct " - "substitution except when the phase reversal can be cancelled. Its " - "unitary representation is like CCX but with a -1 at the (5,5) " - "position."); - library_m.def( - "_CCX_normal_decomp", &CircPool::CCX_normal_decomp, - "Equivalent to CCX, using 6 CX"); - library_m.def( - "_C3X_normal_decomp", &CircPool::C3X_normal_decomp, - "Equivalent to CCCX, using 14 CX"); - library_m.def( - "_C4X_normal_decomp", &CircPool::C4X_normal_decomp, - "Equivalent to CCCCX, using 36 CX "); - library_m.def( - "_ladder_down", &CircPool::ladder_down, "CX[0,1]; CX[2,0]; CCX[0,1,2]"); - library_m.def( - "_ladder_down_2", &CircPool::ladder_down_2, - "CX[0,1]; X[0]; X[2]; CCX[0,1,2]"); - library_m.def( - "_ladder_up", &CircPool::ladder_up, "CCX[0,1,2]; CX[2,0]; CX[2,1]"); - library_m.def("_X", &CircPool::X, "Just an X gate"); - library_m.def("_CX", &CircPool::CX, "Just a CX[0,1] gate"); - library_m.def("_CCX", &CircPool::CCX, "Just a CCX[0,1,2] gate"); - library_m.def("_BRIDGE", &CircPool::BRIDGE, "Just a BRIDGE[0,1,2] gate"); - library_m.def("_H_CZ_H", &CircPool::H_CZ_H, "H[1]; CZ[0,1]; H[1] "); - library_m.def( - "_CZ_using_CX", &CircPool::CZ_using_CX, - "Equivalent to CZ, using CX and single-qubit gates"); - library_m.def( - "_CY_using_CX", &CircPool::CY_using_CX, - "Equivalent to CY, using CX and single-qubit gates"); - library_m.def( - "_CH_using_CX", &CircPool::CH_using_CX, - "Equivalent to CH, using CX and single-qubit gates"); - library_m.def( - "_CV_using_CX", &CircPool::CV_using_CX, - "Equivalent to CV, using CX and single-qubit gates "); - library_m.def( - "_CVdg_using_CX", &CircPool::CVdg_using_CX, - "Equivalent to CVdg, using CX and single-qubit gates"); - library_m.def( - "_CSX_using_CX", &CircPool::CSX_using_CX, - "Equivalent to CSX, using CX and single-qubit gates"); - library_m.def( - "_CSXdg_using_CX", &CircPool::CSXdg_using_CX, - "Equivalent to CSXdg, using CX and single-qubit gates"); - library_m.def( - "_CS_using_CX", &CircPool::CS_using_CX, - "Equivalent to CS, using CX and single-qubit gates"); - library_m.def( - "_CSdg_using_CX", &CircPool::CSdg_using_CX, - "Equivalent to CSdg, using CX and single-qubit gates"); - library_m.def( - "_CSWAP_using_CX", &CircPool::CSWAP_using_CX, - "Equivalent to CSWAP, using CX and single-qubit gates "); - library_m.def( - "_ECR_using_CX", &CircPool::ECR_using_CX, - "Equivalent to ECR, using CX, Rx and U3 gates "); - library_m.def( - "_ZZMax_using_CX", &CircPool::ZZMax_using_CX, - "Equivalent to ZZMax, using CX, Rz and U3 gates "); - library_m.def( - "_CRz_using_TK2", &CircPool::CRz_using_TK2, - "Equivalent to CRz, using a TK2 and TK1 gates"); - library_m.def( - "_CRz_using_CX", &CircPool::CRz_using_CX, - "Equivalent to CRz, using CX and Rz gates"); - library_m.def( - "_CRx_using_TK2", &CircPool::CRx_using_TK2, - "Equivalent to CRx, using a TK2 and TK1 gates"); - library_m.def( - "_CRx_using_CX", &CircPool::CRx_using_CX, - "Equivalent to CRx, using CX, H and Rx gates"); - library_m.def( - "_CRy_using_TK2", &CircPool::CRy_using_TK2, - "Equivalent to CRy, using a TK2 and TK1 gates"); - library_m.def( - "_CRy_using_CX", &CircPool::CRy_using_CX, - "Equivalent to CRy, using CX and Ry gates"); - library_m.def( - "_CU1_using_TK2", &CircPool::CU1_using_TK2, - "Equivalent to CU1, using a TK2 and TK1 gates"); - library_m.def( - "_CU1_using_CX", &CircPool::CU1_using_CX, - "Equivalent to CU1, using CX and U1 gates"); - library_m.def( - "_CU3_using_CX", &CircPool::CU3_using_CX, - "Equivalent to CU1, using CX, U1 and U3 gates"); - library_m.def( - "_ISWAP_using_TK2", &CircPool::ISWAP_using_TK2, - "Equivalent to ISWAP, using a TK2 gate"); - library_m.def( - "_ISWAP_using_CX", &CircPool::ISWAP_using_CX, - "Equivalent to ISWAP, using CX, U3 and Rz gates"); - library_m.def( - "_XXPhase_using_TK2", &CircPool::XXPhase_using_TK2, - "Equivalent to XXPhase, using a TK2 gate"); - library_m.def( - "_XXPhase_using_CX", &CircPool::XXPhase_using_CX, - "Equivalent to XXPhase, using CX and U3 gates "); - library_m.def( - "_YYPhase_using_TK2", &CircPool::YYPhase_using_TK2, - "Equivalent to YYPhase, using a TK2 gate"); - library_m.def( - "_YYPhase_using_CX", &CircPool::YYPhase_using_CX, - "Equivalent to YYPhase, using two CX gates and one Ry, one Sdg and one S " - "gate."); - library_m.def( - "_ZZPhase_using_TK2", &CircPool::ZZPhase_using_TK2, - "Equivalent to ZZPhase, using a TK2 gate"); - library_m.def( - "_ZZPhase_using_CX", &CircPool::ZZPhase_using_CX, - "Equivalent to ZZPhase, using CX and Rz gates"); - library_m.def( - "_TK2_using_ZZPhase", &CircPool::TK2_using_ZZPhase, - "Equivalent to TK2, using 3 ZZPhase gates"); - library_m.def( - "_TK2_using_ZZPhase_and_swap", &CircPool::TK2_using_ZZPhase_and_swap, - "Equivalent to TK2, up to a wire swap that is encoded in the implicit " - "qubit permutation of the Circuit, using up to 3 ZZPhase gates."); - library_m.def( - "_TK2_using_TK2_or_swap", &CircPool::TK2_using_TK2_or_swap, - "Either the exact TK2, or a wire swap encoded in the implicit qubit " - "permutation of the Circuit and single qubit gates."); - library_m.def( - "_approx_TK2_using_1xZZPhase", &CircPool::approx_TK2_using_1xZZPhase, - "Approximate equivalent to TK2, using 1 ZZPhase gate and single-qubit " - "gates. Only requires the first angle of the TK2 gate."); - library_m.def( - "_approx_TK2_using_2xZZPhase", &CircPool::approx_TK2_using_2xZZPhase, - "Approximate equivalent to TK2, using 2 ZZPhase gates and single-qubit " - "gates. Only requires the first two angles of the TK2 gate."); - library_m.def( - "_TK2_using_ZZMax", &CircPool::TK2_using_ZZMax, - "Equivalent to TK2, using up to 3 ZZMax gates."); - library_m.def( - "_TK2_using_ZZMax_and_swap", &CircPool::TK2_using_ZZMax_and_swap, - "Equivalent to TK2, up to a wire swap that is encoded in the implicit " - "qubit permutation of the Circuit, using up to 3 ZZMax gates."); - library_m.def( - "_XXPhase3_using_TK2", &CircPool::XXPhase3_using_TK2, - "Equivalent to XXPhase3, using three TK2 gates"); - library_m.def( - "_XXPhase3_using_CX", &CircPool::XXPhase3_using_CX, - "Equivalent to 3-qubit MS interaction, using CX and U3 gates"); - library_m.def( - "_ESWAP_using_TK2", &CircPool::ESWAP_using_TK2, - "Equivalent to ESWAP, using a TK2 and (Clifford) TK1 gates"); - library_m.def( - "_ESWAP_using_CX", &CircPool::XXPhase3_using_CX, - "Equivalent to ESWAP, using CX, X, S, Ry and U1 gates"); - library_m.def( - "_FSim_using_TK2", &CircPool::FSim_using_TK2, - "Equivalent to FSim, using a TK2 and TK1 gates"); - library_m.def( - "_FSim_using_CX", &CircPool::FSim_using_CX, - "Equivalent to Fsim, using CX, X, S, U1 and U3 gates "); - library_m.def( - "_PhasedISWAP_using_TK2", &CircPool::PhasedISWAP_using_TK2, - "Equivalent to PhasedISWAP, using a TK2 and Rz gates"); - library_m.def( - "_PhasedISWAP_using_CX", &CircPool::PhasedISWAP_using_CX, - "Equivalent to PhasedISWAP, using CX, U3 and Rz gates"); - library_m.def( - "_NPhasedX_using_PhasedX", &CircPool::NPhasedX_using_PhasedX, - "Unwrap NPhasedX, into number_of_qubits PhasedX gates"); - library_m.def( - "_TK2_using_normalised_TK2", &CircPool::TK2_using_normalised_TK2, - "TK2(a, b, c)-equivalent circuit, using a single normalised TK2 " - "and single-qb gates"); - library_m.def( - "_TK1_to_PhasedXRz", &CircPool::tk1_to_PhasedXRz, - "A tk1 equivalent circuit given tk1 parameters in terms of PhasedX, Rz"); - library_m.def( - "_TK1_to_RzRx", &CircPool::tk1_to_rzrx, - "A tk1 equivalent circuit given tk1 parameters in terms of Rz, Rx"); - library_m.def( - "_TK1_to_RzH", &CircPool::tk1_to_rzh, - "A tk1 equivalent circuit given tk1 parameters in terms of Rz, H"); - library_m.def( - "_TK1_to_RzSX", &CircPool::tk1_to_rzsx, - "A tk1 equivalent circuit given tk1 parameters in terms of Rz, Sx"); - library_m.def( - "_TK1_to_TK1", &CircPool::tk1_to_tk1, - "A circuit of a single tk1 gate with given parameters"); } } // namespace tket diff --git a/pytket/pytket/_tket/circuit_library.pyi b/pytket/pytket/_tket/circuit_library.pyi index 4224fa6173..46fc68d76b 100644 --- a/pytket/pytket/_tket/circuit_library.pyi +++ b/pytket/pytket/_tket/circuit_library.pyi @@ -329,360 +329,6 @@ def ZZPhase_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: """ Equivalent to ZZPhase, using a TK2 gate """ -def _BRIDGE() -> pytket._tket.circuit.Circuit: - """ - Just a BRIDGE[0,1,2] gate - """ -def _BRIDGE_using_CX_1() -> pytket._tket.circuit.Circuit: - """ - Equivalent to BRIDGE, using four CX, first CX has control on qubit 1 - """ -def _C3X_normal_decomp() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CCCX, using 14 CX - """ -def _C4X_normal_decomp() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CCCCX, using 36 CX - """ -def _CCX() -> pytket._tket.circuit.Circuit: - """ - Just a CCX[0,1,2] gate - """ -def _CCX_modulo_phase_shift() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CCX up to phase shift, using three CX. Warning: this is not equivalent to CCX up to global phase so cannot be used as a direct substitution except when the phase reversal can be cancelled. Its unitary representation is like CCX but with a -1 at the (5,5) position. - """ -def _CCX_normal_decomp() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CCX, using 6 CX - """ -def _CH_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CH, using CX and single-qubit gates - """ -def _CRx_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CRx, using CX, H and Rx gates - """ -def _CRx_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CRx, using a TK2 and TK1 gates - """ -def _CRy_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CRy, using CX and Ry gates - """ -def _CRy_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CRy, using a TK2 and TK1 gates - """ -def _CRz_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CRz, using CX and Rz gates - """ -def _CRz_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CRz, using a TK2 and TK1 gates - """ -def _CSWAP_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CSWAP, using CX and single-qubit gates - """ -def _CSX_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CSX, using CX and single-qubit gates - """ -def _CSXdg_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CSXdg, using CX and single-qubit gates - """ -def _CS_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CS, using CX and single-qubit gates - """ -def _CSdg_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CSdg, using CX and single-qubit gates - """ -def _CU1_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CU1, using CX and U1 gates - """ -def _CU1_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CU1, using a TK2 and TK1 gates - """ -def _CU3_using_CX(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to CU1, using CX, U1 and U3 gates - """ -def _CV_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CV, using CX and single-qubit gates - """ -def _CVdg_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CVdg, using CX and single-qubit gates - """ -def _CX() -> pytket._tket.circuit.Circuit: - """ - Just a CX[0,1] gate - """ -def _CX_S_CX_reduced() -> pytket._tket.circuit.Circuit: - """ - CX-reduced form of CX/-,S/CX (= ZZMax) - """ -def _CX_S_V_XC_reduced() -> pytket._tket.circuit.Circuit: - """ - CX-reduced form of CX/-,S/-,V/XC - """ -def _CX_VS_CX_reduced() -> pytket._tket.circuit.Circuit: - """ - CX-reduced form of CX/V,S/CX - """ -def _CX_V_CX_reduced() -> pytket._tket.circuit.Circuit: - """ - CX-reduced form of CX/V,-/CX - """ -def _CX_V_S_XC_reduced() -> pytket._tket.circuit.Circuit: - """ - CX-reduced form of CX/V,-/S,-/XC - """ -def _CX_XC_reduced() -> pytket._tket.circuit.Circuit: - """ - CX-reduced form of CX/XC - """ -def _CX_using_ECR() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CX, using only ECR, Rx and U3 gates - """ -def _CX_using_TK2() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CX, using a TK2 and single-qubit gates - """ -def _CX_using_XXPhase_0() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CX, using only XXPhase, Rx, Ry and Rz gates - """ -def _CX_using_XXPhase_1() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CX, using only XXPhase, Rx, Ry and Rz gates - """ -def _CX_using_ZZMax() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CX, using only ZZMax, Rx and Rz gates - """ -def _CX_using_ZZPhase() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CX, using only ZZPhase, Rx and Rz gates - """ -def _CX_using_flipped_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CX[0,1], using a CX[1,0] and four H gates - """ -def _CY_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CY, using CX and single-qubit gates - """ -def _CZ_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to CZ, using CX and single-qubit gates - """ -def _ECR_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to ECR, using CX, Rx and U3 gates - """ -def _ESWAP_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to ESWAP, using CX, X, S, Ry and U1 gates - """ -def _ESWAP_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to ESWAP, using a TK2 and (Clifford) TK1 gates - """ -def _FSim_using_CX(arg0: sympy.Expr | float, arg1: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to Fsim, using CX, X, S, U1 and U3 gates - """ -def _FSim_using_TK2(arg0: sympy.Expr | float, arg1: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to FSim, using a TK2 and TK1 gates - """ -def _H_CZ_H() -> pytket._tket.circuit.Circuit: - """ - H[1]; CZ[0,1]; H[1] - """ -def _ISWAP_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to ISWAP, using CX, U3 and Rz gates - """ -def _ISWAP_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to ISWAP, using a TK2 gate - """ -def _NPhasedX_using_PhasedX(arg0: int, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Unwrap NPhasedX, into number_of_qubits PhasedX gates - """ -def _PhasedISWAP_using_CX(arg0: sympy.Expr | float, arg1: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to PhasedISWAP, using CX, U3 and Rz gates - """ -def _PhasedISWAP_using_TK2(arg0: sympy.Expr | float, arg1: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to PhasedISWAP, using a TK2 and Rz gates - """ -def _SWAP_using_CX_0() -> pytket._tket.circuit.Circuit: - """ - Equivalent to SWAP, using three CX, outer CX have control on qubit 0 - """ -def _SWAP_using_CX_1() -> pytket._tket.circuit.Circuit: - """ - Equivalent to SWAP, using three CX, outer CX have control on qubit 1 - """ -def _TK1_to_PhasedXRz(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - A tk1 equivalent circuit given tk1 parameters in terms of PhasedX, Rz - """ -def _TK1_to_RzH(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - A tk1 equivalent circuit given tk1 parameters in terms of Rz, H - """ -def _TK1_to_RzRx(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - A tk1 equivalent circuit given tk1 parameters in terms of Rz, Rx - """ -def _TK1_to_RzSX(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - A tk1 equivalent circuit given tk1 parameters in terms of Rz, Sx - """ -def _TK1_to_TK1(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - A circuit of a single tk1 gate with given parameters - """ -def _TK2_using_3xCX(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Given expressions α, β and γ, return circuit equivalent to TK2(α, β, γ) using 3 CX and single-qubit gates. - - Prefer using `_TK2_using_CX` unless you wish to explicitly use 3 CX or if α, β and γ are not normalised to the Weyl chamber. - """ -def _TK2_using_CX(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Given expressions α, β and γ, return circuit equivalent to TK2(α, β, γ) using up to 3 CX and single-qubit gates. - - The decomposition minimizes the number of CX gates. - """ -def _TK2_using_CX_and_swap(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Given expressions α, β and γ, return circuit equivalent to TK2(α, β, γ), up to a wire swap that is encoded in the implicit qubit permutation of the Circuit, using up to 3 CX and single-qubit gates. - - The decomposition minimizes the number of CX gates. - """ -def _TK2_using_TK2_or_swap(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Either the exact TK2, or a wire swap encoded in the implicit qubit permutation of the Circuit and single qubit gates. - """ -def _TK2_using_ZZMax(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to TK2, using up to 3 ZZMax gates. - """ -def _TK2_using_ZZMax_and_swap(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to TK2, up to a wire swap that is encoded in the implicit qubit permutation of the Circuit, using up to 3 ZZMax gates. - """ -def _TK2_using_ZZPhase(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to TK2, using 3 ZZPhase gates - """ -def _TK2_using_ZZPhase_and_swap(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to TK2, up to a wire swap that is encoded in the implicit qubit permutation of the Circuit, using up to 3 ZZPhase gates. - """ -def _TK2_using_normalised_TK2(arg0: sympy.Expr | float, arg1: sympy.Expr | float, arg2: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - TK2(a, b, c)-equivalent circuit, using a single normalised TK2 and single-qb gates - """ -def _X() -> pytket._tket.circuit.Circuit: - """ - Just an X gate - """ -def _X1_CX() -> pytket._tket.circuit.Circuit: - """ - X[1]; CX[0,1] - """ -def _XXPhase3_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to 3-qubit MS interaction, using CX and U3 gates - """ -def _XXPhase3_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to XXPhase3, using three TK2 gates - """ -def _XXPhase_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to XXPhase, using CX and U3 gates - """ -def _XXPhase_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to XXPhase, using a TK2 gate - """ -def _YYPhase_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to YYPhase, using two CX gates and one Ry, one Sdg and one S gate. - """ -def _YYPhase_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to YYPhase, using a TK2 gate - """ -def _Z0_CX() -> pytket._tket.circuit.Circuit: - """ - Z[0]; CX[0,1] - """ -def _ZZMax_using_CX() -> pytket._tket.circuit.Circuit: - """ - Equivalent to ZZMax, using CX, Rz and U3 gates - """ -def _ZZPhase_using_CX(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to ZZPhase, using CX and Rz gates - """ -def _ZZPhase_using_TK2(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Equivalent to ZZPhase, using a TK2 gate - """ -def _approx_TK2_using_1xCX() -> pytket._tket.circuit.Circuit: - """ - Best approximation of TK2 using 1 CX gate and single-qubit gates, using squared trace fidelity metric. No parameter is required for this approximation. The returned circuit will be equivalent to TK2(0.5, 0, 0). - """ -def _approx_TK2_using_1xZZPhase(arg0: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Approximate equivalent to TK2, using 1 ZZPhase gate and single-qubit gates. Only requires the first angle of the TK2 gate. - """ -def _approx_TK2_using_2xCX(arg0: sympy.Expr | float, arg1: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Best approximation of TK2 using 2 CX gates and single-qubit gates, using squared trace fidelity metric. Given expressions α and β, with 0.5 ≥ α ≥ β ≥ 0, return a circuit equivalent to TK2(α, β, 0). - """ -def _approx_TK2_using_2xZZPhase(arg0: sympy.Expr | float, arg1: sympy.Expr | float) -> pytket._tket.circuit.Circuit: - """ - Approximate equivalent to TK2, using 2 ZZPhase gates and single-qubit gates. Only requires the first two angles of the TK2 gate. - """ -def _ladder_down() -> pytket._tket.circuit.Circuit: - """ - CX[0,1]; CX[2,0]; CCX[0,1,2] - """ -def _ladder_down_2() -> pytket._tket.circuit.Circuit: - """ - CX[0,1]; X[0]; X[2]; CCX[0,1,2] - """ -def _ladder_up() -> pytket._tket.circuit.Circuit: - """ - CCX[0,1,2]; CX[2,0]; CX[2,1] - """ -def _two_Rz1() -> pytket._tket.circuit.Circuit: - """ - A two-qubit circuit with an Rz(1) on each qubit - """ def approx_TK2_using_1xCX() -> pytket._tket.circuit.Circuit: """ Best approximation of TK2 using 1 CX gate and single-qubit gates, using squared trace fidelity metric. No parameter is required for this approximation. The returned circuit will be equivalent to TK2(0.5, 0, 0). diff --git a/pytket/pytket/circuit_library/__init__.py b/pytket/pytket/circuit_library/__init__.py index 81868ba880..fc5871c58a 100644 --- a/pytket/pytket/circuit_library/__init__.py +++ b/pytket/pytket/circuit_library/__init__.py @@ -101,89 +101,4 @@ TK1_to_RzH, TK1_to_RzSX, TK1_to_TK1, - _BRIDGE_using_CX_1, - _CX_using_TK2, - _TK2_using_CX, - _TK2_using_CX_and_swap, - _approx_TK2_using_1xCX, - _approx_TK2_using_2xCX, - _TK2_using_3xCX, - _CX_using_flipped_CX, - _CX_using_ECR, - _CX_using_ZZMax, - _CX_using_ZZPhase, - _CX_using_XXPhase_0, - _CX_using_XXPhase_1, - _CX_VS_CX_reduced, - _CX_V_CX_reduced, - _CX_S_CX_reduced, - _CX_V_S_XC_reduced, - _CX_S_V_XC_reduced, - _CX_XC_reduced, - _SWAP_using_CX_0, - _SWAP_using_CX_1, - _two_Rz1, - _X1_CX, - _Z0_CX, - _CCX_modulo_phase_shift, - _CCX_normal_decomp, - _C3X_normal_decomp, - _C4X_normal_decomp, - _ladder_down, - _ladder_down_2, - _ladder_up, - _X, - _CX, - _CCX, - _BRIDGE, - _H_CZ_H, - _CZ_using_CX, - _CY_using_CX, - _CH_using_CX, - _CV_using_CX, - _CVdg_using_CX, - _CSX_using_CX, - _CSXdg_using_CX, - _CSWAP_using_CX, - _ECR_using_CX, - _ZZMax_using_CX, - _CRz_using_TK2, - _CRz_using_CX, - _CRx_using_TK2, - _CRx_using_CX, - _CRy_using_TK2, - _CRy_using_CX, - _CU1_using_TK2, - _CU1_using_CX, - _CU3_using_CX, - _ISWAP_using_TK2, - _ISWAP_using_CX, - _XXPhase_using_TK2, - _XXPhase_using_CX, - _YYPhase_using_TK2, - _YYPhase_using_CX, - _ZZPhase_using_TK2, - _ZZPhase_using_CX, - _TK2_using_ZZPhase, - _TK2_using_ZZPhase_and_swap, - _TK2_using_TK2_or_swap, - _approx_TK2_using_1xZZPhase, - _approx_TK2_using_2xZZPhase, - _TK2_using_ZZMax, - _TK2_using_ZZMax_and_swap, - _XXPhase3_using_TK2, - _XXPhase3_using_CX, - _ESWAP_using_TK2, - _ESWAP_using_CX, - _FSim_using_TK2, - _FSim_using_CX, - _PhasedISWAP_using_TK2, - _PhasedISWAP_using_CX, - _NPhasedX_using_PhasedX, - _TK2_using_normalised_TK2, - _TK1_to_PhasedXRz, - _TK1_to_RzRx, - _TK1_to_RzH, - _TK1_to_RzSX, - _TK1_to_TK1, ) diff --git a/pytket/pytket/passes/auto_rebase.py b/pytket/pytket/passes/auto_rebase.py index 95574f5ac3..6af5c690c6 100644 --- a/pytket/pytket/passes/auto_rebase.py +++ b/pytket/pytket/passes/auto_rebase.py @@ -26,11 +26,11 @@ class NoAutoRebase(Exception): _CX_CIRCS: Dict[OpType, Callable[[], "Circuit"]] = { - OpType.CX: _library._CX, - OpType.ZZMax: _library._CX_using_ZZMax, - OpType.XXPhase: _library._CX_using_XXPhase_0, - OpType.ECR: _library._CX_using_ECR, - OpType.CZ: _library._H_CZ_H, + OpType.CX: _library.CX, + OpType.ZZMax: _library.CX_using_ZZMax, + OpType.XXPhase: _library.CX_using_XXPhase_0, + OpType.ECR: _library.CX_using_ECR, + OpType.CZ: _library.H_CZ_H, } @@ -40,16 +40,16 @@ def _TK2_using_TK2(a: Param, b: Param, c: Param) -> Circuit: _TK2_CIRCS: Dict[OpType, Callable[[Param, Param, Param], "Circuit"]] = { OpType.TK2: _TK2_using_TK2, - OpType.ZZPhase: _library._TK2_using_ZZPhase, - OpType.CX: _library._TK2_using_CX, - OpType.ZZMax: _library._TK2_using_ZZMax, + OpType.ZZPhase: _library.TK2_using_ZZPhase, + OpType.CX: _library.TK2_using_CX, + OpType.ZZMax: _library.TK2_using_ZZMax, } _TK2_CIRCS_WIRE_SWAP: Dict[OpType, Callable[[Param, Param, Param], "Circuit"]] = { - OpType.TK2: _library._TK2_using_TK2_or_swap, - OpType.ZZPhase: _library._TK2_using_ZZPhase_and_swap, - OpType.CX: _library._TK2_using_CX_and_swap, - OpType.ZZMax: _library._TK2_using_ZZMax_and_swap, + OpType.TK2: _library.TK2_using_TK2_or_swap, + OpType.ZZPhase: _library.TK2_using_ZZPhase_and_swap, + OpType.CX: _library.TK2_using_CX_and_swap, + OpType.ZZMax: _library.TK2_using_ZZMax_and_swap, } @@ -92,14 +92,14 @@ def get_tk2_decomposition( _TK1_circs: Dict[FrozenSet[OpType], Callable[[Param, Param, Param], "Circuit"]] = { - frozenset({OpType.TK1}): _library._TK1_to_TK1, - frozenset({OpType.PhasedX, OpType.Rz}): _library._TK1_to_PhasedXRz, - frozenset({OpType.Rx, OpType.Rz}): _library._TK1_to_RzRx, + frozenset({OpType.TK1}): _library.TK1_to_TK1, + frozenset({OpType.PhasedX, OpType.Rz}): _library.TK1_to_PhasedXRz, + frozenset({OpType.Rx, OpType.Rz}): _library.TK1_to_RzRx, frozenset({OpType.Ry, OpType.Rx}): _TK1_to_RxRy, - frozenset({OpType.Rz, OpType.H}): _library._TK1_to_RzH, + frozenset({OpType.Rz, OpType.H}): _library.TK1_to_RzH, frozenset({OpType.Rz, OpType.SX, OpType.X}): _TK1_to_X_SX_Rz, frozenset({OpType.Rz, OpType.SX}): _TK1_to_X_SX_Rz, - frozenset({OpType.Rz, OpType.SX}): _library._TK1_to_RzSX, + frozenset({OpType.Rz, OpType.SX}): _library.TK1_to_RzSX, frozenset({OpType.U3}): _TK1_to_U, } @@ -144,7 +144,7 @@ def auto_rebase_pass(gateset: Set[OpType], allow_swaps: bool = False) -> BasePas # if the gateset has CX but not TK2, and implicit wire swaps not allowed: # rebase via CX if OpType.CX in gateset and OpType.TK2 not in gateset and not allow_swaps: - return RebaseCustom(gateset, _library._CX(), tk1) + return RebaseCustom(gateset, _library.CX(), tk1) # in other cases, try to rebase via TK2 first try: return RebaseCustom(gateset, get_tk2_decomposition(gateset, allow_swaps), tk1) diff --git a/pytket/tests/passes_serialisation_test.py b/pytket/tests/passes_serialisation_test.py index 9c29262d1c..45f54f5129 100644 --- a/pytket/tests/passes_serialisation_test.py +++ b/pytket/tests/passes_serialisation_test.py @@ -589,7 +589,7 @@ def sq(a: ParamType, b: ParamType, c: ParamType) -> Circuit: cx = Circuit(2) cx.CX(0, 1) pz_rebase = RebaseCustom( - {OpType.CX, OpType.PhasedX, OpType.Rz}, cx, _library._TK1_to_TK1 + {OpType.CX, OpType.PhasedX, OpType.Rz}, cx, _library.TK1_to_TK1 ) assert pz_rebase.to_dict()["StandardPass"]["name"] == "RebaseCustom" assert set(pz_rebase.to_dict()["StandardPass"]["basis_allowed"]) == { diff --git a/pytket/tests/transform_test.py b/pytket/tests/transform_test.py index 47fc70addf..d773c86a08 100644 --- a/pytket/tests/transform_test.py +++ b/pytket/tests/transform_test.py @@ -1048,31 +1048,31 @@ def test_CXMappingPass_terminates() -> None: def test_auto_rebase() -> None: pass_params = [ - ({OpType.CX, OpType.Rz, OpType.Rx}, _library._CX(), _library._TK1_to_RzRx), + ({OpType.CX, OpType.Rz, OpType.Rx}, _library.CX(), _library.TK1_to_RzRx), ( {OpType.CZ, OpType.Rz, OpType.SX, OpType.ZZPhase}, _CX_CIRCS[OpType.CZ](), - _library._TK1_to_RzSX, + _library.TK1_to_RzSX, ), ( {OpType.ZZMax, OpType.T, OpType.Rz, OpType.H}, - _library._CX_using_ZZMax(), - _library._TK1_to_RzH, + _library.CX_using_ZZMax(), + _library.TK1_to_RzH, ), ( {OpType.XXPhase, OpType.T, OpType.Rz, OpType.H}, - _library._CX_using_XXPhase_0(), - _library._TK1_to_RzH, + _library.CX_using_XXPhase_0(), + _library.TK1_to_RzH, ), ( {OpType.ECR, OpType.PhasedX, OpType.Rz, OpType.CnX}, - _library._CX_using_ECR(), - _library._TK1_to_PhasedXRz, + _library.CX_using_ECR(), + _library.TK1_to_PhasedXRz, ), ( {OpType.CX, OpType.TK1, OpType.U3, OpType.CnX}, - _library._CX(), - _library._TK1_to_TK1, + _library.CX(), + _library.TK1_to_TK1, ), ] @@ -1114,26 +1114,26 @@ def test_auto_rebase() -> None: def test_auto_squash() -> None: pass_params = [ - ({OpType.Rz, OpType.Rx}, _library._TK1_to_RzRx), + ({OpType.Rz, OpType.Rx}, _library.TK1_to_RzRx), ( {OpType.Rz, OpType.SX}, - _library._TK1_to_RzSX, + _library.TK1_to_RzSX, ), ( {OpType.T, OpType.Rz, OpType.H}, - _library._TK1_to_RzH, + _library.TK1_to_RzH, ), ( {OpType.T, OpType.Rz, OpType.H}, - _library._TK1_to_RzH, + _library.TK1_to_RzH, ), ( {OpType.PhasedX, OpType.Rz}, - _library._TK1_to_PhasedXRz, + _library.TK1_to_PhasedXRz, ), ( {OpType.TK1, OpType.U3}, - _library._TK1_to_TK1, + _library.TK1_to_TK1, ), ] From 57e64bd0d20c565a9209e3db3ab8f6ee16792a11 Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Thu, 9 Nov 2023 13:43:49 +0000 Subject: [PATCH 22/36] [infra] Update library versions (#1113) --- .github/workflows/build-external-packages | 6 +++--- .github/workflows/linuxbuildpackages | 6 +++--- .../test/src/TableLookup/PermutationTestUtils.cpp | 2 +- .../tktokenswap/test/src/TestUtils/DecodedProblemData.cpp | 2 +- pytket/conanfile.py | 8 ++++---- tket/conanfile.py | 8 ++++---- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build-external-packages b/.github/workflows/build-external-packages index aef99524bd..e62e62ce37 100755 --- a/.github/workflows/build-external-packages +++ b/.github/workflows/build-external-packages @@ -8,10 +8,10 @@ PACKAGES="\ gmp/6.2.1@ \ symengine/0.9.0@ \ tklog/0.3.3@tket/stable \ - tkassert/0.3.3@tket/stable \ + tkassert/0.3.4@tket/stable \ tkrng/0.3.3@tket/stable \ - tktokenswap/0.3.3@tket/stable \ - tkwsm/0.3.3@tket/stable \ + tktokenswap/0.3.6@tket/stable \ + tkwsm/0.3.6@tket/stable \ " for PACKAGE in ${PACKAGES} diff --git a/.github/workflows/linuxbuildpackages b/.github/workflows/linuxbuildpackages index 29993937e1..42332ef327 100755 --- a/.github/workflows/linuxbuildpackages +++ b/.github/workflows/linuxbuildpackages @@ -38,10 +38,10 @@ PACKAGES="boost/1.81.0@ \ gmp/6.2.1@ \ symengine/0.9.0@ \ tklog/0.3.3@tket/stable \ - tkassert/0.3.3@tket/stable \ + tkassert/0.3.4@tket/stable \ tkrng/0.3.3@tket/stable \ - tktokenswap/0.3.3@tket/stable \ - tkwsm/0.3.3@tket/stable" + tktokenswap/0.3.6@tket/stable \ + tkwsm/0.3.6@tket/stable" for PACKAGE in ${PACKAGES} do diff --git a/libs/tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp b/libs/tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp index c9049afefb..789c76b1b3 100644 --- a/libs/tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp +++ b/libs/tktokenswap/test/src/TableLookup/PermutationTestUtils.cpp @@ -14,8 +14,8 @@ #include "PermutationTestUtils.hpp" -#include #include +#include #include namespace tket { diff --git a/libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp b/libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp index b73e06ab9c..738be019b9 100644 --- a/libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp +++ b/libs/tktokenswap/test/src/TestUtils/DecodedProblemData.cpp @@ -14,10 +14,10 @@ #include "DecodedProblemData.hpp" +#include #include #include #include -#include using std::vector; diff --git a/pytket/conanfile.py b/pytket/conanfile.py index 9b3546cf1f..d070bc36fa 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,12 +32,12 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.65@tket/stable") + self.requires("tket/1.2.66@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") - self.requires("tkassert/0.3.3@tket/stable") - self.requires("tkwsm/0.3.5@tket/stable") - self.requires("tktokenswap/0.3.5@tket/stable") + self.requires("tkassert/0.3.4@tket/stable") + self.requires("tkwsm/0.3.6@tket/stable") + self.requires("tktokenswap/0.3.6@tket/stable") self.requires("symengine/0.11.1") self.requires("gmp/6.2.1") self.requires("pybind11/2.11.1") diff --git a/tket/conanfile.py b/tket/conanfile.py index 55ed429a6f..fd7918b995 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.65" + version = "1.2.66" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" @@ -116,10 +116,10 @@ def requirements(self): self.requires("eigen/3.4.0", transitive_headers=True) self.requires("nlohmann_json/3.11.2", transitive_headers=True) self.requires("tklog/0.3.3@tket/stable") - self.requires("tkassert/0.3.3@tket/stable", transitive_headers=True) + self.requires("tkassert/0.3.4@tket/stable", transitive_headers=True) self.requires("tkrng/0.3.3@tket/stable") - self.requires("tktokenswap/0.3.5@tket/stable") - self.requires("tkwsm/0.3.5@tket/stable") + self.requires("tktokenswap/0.3.6@tket/stable") + self.requires("tkwsm/0.3.6@tket/stable") if self.build_test(): self.test_requires("catch2/3.3.2") if self.build_proptest(): From e5e0c3b2da4e8813be9435efd761468562efa620 Mon Sep 17 00:00:00 2001 From: yao-cqc <75305462+yao-cqc@users.noreply.github.com> Date: Thu, 9 Nov 2023 15:05:03 +0000 Subject: [PATCH 23/36] Fix incorrect controlled `ConjugationBox` handling (#1118) * Fix incorrect controlled ConjugationBox handling * Add changelog entry * Bump tket version * run clang format * bump tket version --- pytket/conanfile.py | 2 +- pytket/docs/changelog.rst | 1 + tket/conanfile.py | 2 +- tket/src/Circuit/CircUtils.cpp | 8 +++++++- tket/test/src/Circuit/test_Boxes.cpp | 26 ++++++++++++++++++++++++++ 5 files changed, 36 insertions(+), 3 deletions(-) diff --git a/pytket/conanfile.py b/pytket/conanfile.py index d070bc36fa..e75f704d46 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,7 +32,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.66@tket/stable") + self.requires("tket/1.2.67@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("tkassert/0.3.4@tket/stable") diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index 97187302c3..71cba0ff00 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -16,6 +16,7 @@ Fixes: of the bits in the expression in the resulting ``cmd.args`` * Fix incorrect serialisation of ``PauliExpPairBox`` when the Pauli strings are of length 2. +* Fix incorrect controlled ``ConjugationBox`` handling. 1.21.0 (October 2023) --------------------- diff --git a/tket/conanfile.py b/tket/conanfile.py index fd7918b995..7cf1e667ab 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.66" + version = "1.2.67" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" diff --git a/tket/src/Circuit/CircUtils.cpp b/tket/src/Circuit/CircUtils.cpp index 17b0deb998..379882104b 100644 --- a/tket/src/Circuit/CircUtils.cpp +++ b/tket/src/Circuit/CircUtils.cpp @@ -596,7 +596,10 @@ static Circuit controlled_conjugation_box( all_args[n_controls + i] = Qubit(n_controls + args[i].index()[0]); target_args[i] = Qubit(n_controls + args[i].index()[0]); } - Circuit circ(n_controls + n_targets); + Circuit circ; + for (const Qubit &q : all_args) { + circ.add_qubit(q); + } circ.add_op(compute, target_args); QControlBox controlled_action(action, n_controls); circ.add_box(controlled_action, all_args); @@ -801,6 +804,9 @@ static Eigen::Matrix2cd get_target_op_matrix(const Op_ptr &op) { // A gate block containing Cn* gates that can be merged as a single CnU gate // a block can also contain a single Barrier, which will be left in place +// TODO: conjugation boxs are accepted as well; however they don't fit the +// semantics. control_qubits and target_qubit don't mean anything for a +// conjugation box. struct CnGateBlock { enum class MergeMode { append, prepend }; CnGateBlock(const Command &command) { diff --git a/tket/test/src/Circuit/test_Boxes.cpp b/tket/test/src/Circuit/test_Boxes.cpp index e2c8afd1ac..c6fee206d2 100644 --- a/tket/test/src/Circuit/test_Boxes.cpp +++ b/tket/test/src/Circuit/test_Boxes.cpp @@ -873,6 +873,18 @@ SCENARIO("QControlBox", "[boxes]") { d.add_op(OpType::CX, {2, 1}); REQUIRE(*c == d); } + WHEN("Wrapped in a CircBox") { + Circuit inner_circ(4); + inner_circ.add_op(cj_op, {1, 3}); + Op_ptr circbox_op = std::make_shared(inner_circ); + QControlBox qbox(circbox_op); + std::shared_ptr c = qbox.to_circuit(); + Circuit d(5); + d.add_op(OpType::CX, {4, 2}); + d.add_op(OpType::CZ, {0, 2}); + d.add_op(OpType::CX, {4, 2}); + REQUIRE(*c == d); + } WHEN("Nested") { Circuit compute_outer(3); compute_outer.add_op(OpType::CX, {2, 1}); @@ -929,6 +941,20 @@ SCENARIO("QControlBox", "[boxes]") { std::shared_ptr c = qbox.to_circuit(); REQUIRE(c->count_gates(OpType::CX) == 4); } + GIVEN("controlled PauliExpBox") { + // https://github.com/CQCL/tket/issues/1109 + PauliExpBox pbox( + SymPauliTensor({Pauli::I, Pauli::Z, Pauli::I, Pauli::I}, 0.7)); + Op_ptr op = std::make_shared(pbox); + QControlBox qbox(op); + std::shared_ptr c = qbox.to_circuit(); + // construct the expected circuit + Circuit correct_inner(4); + correct_inner.add_op(OpType::Rz, 0.7, {1}); + QControlBox correct_qbox(std::make_shared(correct_inner)); + std::shared_ptr d = correct_qbox.to_circuit(); + REQUIRE(*c == *d); + } } SCENARIO("Unitary3qBox", "[boxes]") { From 8eecdfaad2e7aa96435320ba76ac02dc18e139bb Mon Sep 17 00:00:00 2001 From: CalMacCQ <93673602+CalMacCQ@users.noreply.github.com> Date: Fri, 10 Nov 2023 16:15:58 +0000 Subject: [PATCH 24/36] update all links to the user manual (#1119) --- pytket/docs/backends.rst | 2 +- pytket/docs/circuit_class.rst | 2 +- pytket/docs/classical.rst | 2 +- pytket/docs/faqs.rst | 4 ++-- pytket/docs/getting_started.rst | 4 ++-- pytket/docs/index.rst | 4 ++-- pytket/docs/passes.rst | 2 +- pytket/docs/placement.rst | 2 +- pytket/docs/predicates.rst | 2 +- pytket/docs/qasm.rst | 2 +- pytket/package.md | 2 +- 11 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pytket/docs/backends.rst b/pytket/docs/backends.rst index ee0872b42d..758ac49a5b 100644 --- a/pytket/docs/backends.rst +++ b/pytket/docs/backends.rst @@ -7,7 +7,7 @@ There are several `example notebooks `_ on Notebook tutorials specific to the :py:class:`QuantinuumBackend` can be found `here `_. -See also the `Running on backends `_ section of the pytket user manual. +See also the `Running on backends `_ section of the pytket user manual. .. automodule:: pytket.backends :members: backend diff --git a/pytket/docs/circuit_class.rst b/pytket/docs/circuit_class.rst index 765dac404f..ea7da61904 100644 --- a/pytket/docs/circuit_class.rst +++ b/pytket/docs/circuit_class.rst @@ -2,7 +2,7 @@ pytket.circuit.Circuit ================================== :py:class:`Circuit` objects provide an abstraction of quantum circuits. They consist of a set of qubits/quantum wires and a collection of operations applied to them in a given order. These wires have open inputs and outputs, rather than assuming any fixed input state. -See the `Pytket User Manual `_ for a step-by-step tutorial on constructing circuits. +See the `pytket User Manual `_ for a step-by-step tutorial on constructing circuits. See also the notebook tutorials on `circuit generation `_ and `circuit analysis `_. diff --git a/pytket/docs/classical.rst b/pytket/docs/classical.rst index 92d9769201..9c67bf7c7b 100644 --- a/pytket/docs/classical.rst +++ b/pytket/docs/classical.rst @@ -1,7 +1,7 @@ pytket.circuit.logic_exp ======================== -For more discussion of classical logic in pytket see the `manual section `_. +For more discussion of classical logic in pytket see the `manual section `_. .. automodule:: pytket.circuit.logic_exp :members: \ No newline at end of file diff --git a/pytket/docs/faqs.rst b/pytket/docs/faqs.rst index fd485a7cb6..e8743a92ce 100644 --- a/pytket/docs/faqs.rst +++ b/pytket/docs/faqs.rst @@ -14,7 +14,7 @@ There are two types of rebase 2) :py:class:`RebaseCustom` - This can be used instead of `auto_rebase_pass` in cases where there is no hardcoded conversion available. In this case the user will have to specify how to implement TKET's {TK1, CX} or {TK1, TK2} operations in terms of the target :py:class:`OpType` s. -See the manual section on `rebases `_ for examples. +See the manual section on `rebases `_ for examples. Unitary Synthesis ----------------- @@ -22,7 +22,7 @@ Q: Can TKET generate a circuit to implement a unitary operator of my choice? A: Yes but only up to three qubits at present. This can be done with :py:class:`Unitary3qBox`. -See the manual section on `unitary synthesis `_ . +See the manual section on `unitary synthesis `_ . Qiskit to TKET Conversion diff --git a/pytket/docs/getting_started.rst b/pytket/docs/getting_started.rst index cdca6ef4b2..a6ea8e88b1 100644 --- a/pytket/docs/getting_started.rst +++ b/pytket/docs/getting_started.rst @@ -67,7 +67,7 @@ Or, if an extension module like ``pytket-qiskit`` is installed: c = qiskit_to_tk(qc) See the -`pytket user manual `_ +`pytket user manual `_ for an extensive tutorial on pytket, providing a gentle introduction to its features and how to run circuits on backend devices, with worked examples. @@ -109,4 +109,4 @@ The following code snippet will show how to compile a circuit to run on an IBM d Here the default compilation pass is applied by :py:meth:`IBMQBackend.get_compiled_circuit`. See `this page `_ for more details. As an alternative, We can experiment with constructing our own circuit compilation routines in pytket. Passes from the :py:mod:`pytket.passes` module can be applied individually or composed in sequence. -See the section of the user manual on `circuit compilation `_ and the corresponding `notebook example `_ for more. +See the section of the user manual on `circuit compilation `_ and the corresponding `notebook example `_ for more. diff --git a/pytket/docs/index.rst b/pytket/docs/index.rst index 57f3761305..9bbf64265f 100644 --- a/pytket/docs/index.rst +++ b/pytket/docs/index.rst @@ -19,7 +19,7 @@ If you have issues installing ``pytket`` please visit the `installation troubles To use ``pytket``, you can simply import the appropriate modules into your python code or in an interactive Python notebook. We can build circuits directly using the ``pytket`` interface by creating a blank circuit and adding gates in the order we want to apply them. See the `Getting Started`_ page for a basic tutorial on using -``pytket``. To get more in depth on features, see the `examples`_. See the `pytket user manual `_ for an extensive introduction to ``pytket`` functionality and how to use it. +``pytket``. To get more in depth on features, see the `examples`_. See the `pytket user manual `_ for an extensive introduction to ``pytket`` functionality and how to use it. Extensions ~~~~~~~~~~ @@ -86,7 +86,7 @@ Licensed under the `Apache 2 License + Manual extensions_index.rst Example notebooks diff --git a/pytket/docs/passes.rst b/pytket/docs/passes.rst index 8976af925e..5aee9536ef 100644 --- a/pytket/docs/passes.rst +++ b/pytket/docs/passes.rst @@ -9,7 +9,7 @@ Also there are special purpose passes such as `OptimisePhaseGadgets `_ and `auto_rebase_pass `_. -For more on pytket passes see the `compilation `_ section of the user manual or the `notebook tutorials `_ +For more on pytket passes see the `compilation `_ section of the user manual or the `notebook tutorials `_ .. automodule:: pytket._tket.passes diff --git a/pytket/docs/placement.rst b/pytket/docs/placement.rst index 61d0c4a6d9..d7b2184662 100644 --- a/pytket/docs/placement.rst +++ b/pytket/docs/placement.rst @@ -3,7 +3,7 @@ pytket.placement In order for the constraints of a :py:class:`Backend` to be solved we must first assign device qubits to device-independent (or program) qubits. This module contains three placement methods to perform such an assignment. -For more on qubit placement (and routing in general) see the `qubit mapping `_ tutorial and the corresponding entry in the `user manual `_. +For more on qubit placement (and routing in general) see the `qubit mapping `_ tutorial and the corresponding entry in the `user manual `_. .. automodule:: pytket._tket.placement :members: diff --git a/pytket/docs/predicates.rst b/pytket/docs/predicates.rst index e06702ad66..ee797a0aa7 100644 --- a/pytket/docs/predicates.rst +++ b/pytket/docs/predicates.rst @@ -3,7 +3,7 @@ pytket.predicates In pytket, predicates enforce properties of circuits. Each pytket :py:class:`Backend` has its own set of predicates which must be satisfied before a quantum circuit can be executed. There are predicates that enforce restrictions including gateset, number of qubits and classical control. -For more on predicates read the corresponding section of the `user manual `_. See also the `Compilation example `_ notebook. +For more on predicates read the corresponding section of the `user manual `_. See also the `Compilation example `_ notebook. .. automodule:: pytket._tket.predicates :members: diff --git a/pytket/docs/qasm.rst b/pytket/docs/qasm.rst index 16b42ab40a..bfd2123800 100644 --- a/pytket/docs/qasm.rst +++ b/pytket/docs/qasm.rst @@ -16,7 +16,7 @@ We can set the ``header`` argument in the qasm conversion functions as follows. qasm_str = circuit_to_qasm_str(circ, header="hqslib1") -.. note:: Unlike pytket backends, the qasm converters do not handle `implicit qubit permutations `_. In other words if a circuit containing an implicit qubit permutation is converted to a qasm file the implicit permutation will not be accounted for and the circuit will be missing this permutation when reimported. +.. note:: Unlike pytket backends, the qasm converters do not handle `implicit qubit permutations `_. In other words if a circuit containing an implicit qubit permutation is converted to a qasm file the implicit permutation will not be accounted for and the circuit will be missing this permutation when reimported. .. automodule:: pytket.qasm :members: circuit_from_qasm, circuit_from_qasm_wasm, circuit_to_qasm, circuit_from_qasm_str, circuit_to_qasm_str, circuit_from_qasm_io, circuit_to_qasm_io diff --git a/pytket/package.md b/pytket/package.md index 29b4a7f4d4..e3498fd6b5 100644 --- a/pytket/package.md +++ b/pytket/package.md @@ -27,7 +27,7 @@ official Python distribution instead. API reference: https://cqcl.github.io/tket/pytket/api/ -To get started using pytket see the [user manual](https://cqcl.github.io/pytket/manual/index.html). +To get started using pytket see the [user manual](https://tket.quantinuum.com/user-manual/). For worked examples using TKET see our [notebook examples](https://tket.quantinuum.com/examples). From 22157352d8fda4d20cd41a94415331e0627fb0b6 Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Mon, 13 Nov 2023 14:40:06 +0000 Subject: [PATCH 25/36] [infra] Skip non-module libraries when generating stubs. (#1121) --- pytket/stub_generation/regenerate_stubs | 72 +++++++++++++++++-------- 1 file changed, 49 insertions(+), 23 deletions(-) diff --git a/pytket/stub_generation/regenerate_stubs b/pytket/stub_generation/regenerate_stubs index a927b3912c..1cc4ff895e 100755 --- a/pytket/stub_generation/regenerate_stubs +++ b/pytket/stub_generation/regenerate_stubs @@ -8,13 +8,17 @@ import pytket import pkgutil -def replace_in_file_string(file_string: str, matcher: str, replacement: str) -> tuple[str, int]: +def replace_in_file_string( + file_string: str, matcher: str, replacement: str +) -> tuple[str, int]: split_text = re.split(matcher, file_string) modified_text = replacement.join(split_text) return modified_text, len(split_text) - 1 -def replace_in_file_string_multiline(file_string: str, matcher: str, replacement: str) -> tuple[str, int]: +def replace_in_file_string_multiline( + file_string: str, matcher: str, replacement: str +) -> tuple[str, int]: split_text = re.split(matcher, file_string, re.MULTILINE) modified_text = replacement.join(split_text) return modified_text, len(split_text) - 1 @@ -27,8 +31,12 @@ class StubFixer: handle_circuit_depth_needed: bool = False def handle_args_kwargs_types(self, file_string: str) -> str: - modified, n_args = replace_in_file_string(file_string, "\*args(?=[^:])", "*args: Any") - modified, n_kwargs = replace_in_file_string(modified, "\*\*kwargs(?=[^:])", "**kwargs: Any") + modified, n_args = replace_in_file_string( + file_string, "\*args(?=[^:])", "*args: Any" + ) + modified, n_kwargs = replace_in_file_string( + modified, "\*\*kwargs(?=[^:])", "**kwargs: Any" + ) n_total = n_args + n_kwargs if n_total > 0 and not re.search("from typing import .*Any", modified): self.handle_args_kwargs_needed = True @@ -40,50 +48,68 @@ class StubFixer: modified_text = "NDArray[".join(split_text) if len(split_text) > 1: modified_text, _ = replace_in_file_string(modified_text, "\[., .\]", "") - modified_text, _ = replace_in_file_string(modified_text, "NDArray\[bool\]", "NDArray[numpy.bool_]") - modified_text = "from numpy.typing import NDArray" + os.linesep + modified_text + modified_text, _ = replace_in_file_string( + modified_text, "NDArray\[bool\]", "NDArray[numpy.bool_]" + ) + modified_text = ( + "from numpy.typing import NDArray" + os.linesep + modified_text + ) self.handle_numpy_stuff_needed = True return modified_text return file_string def print_info(self): if not self.handle_args_kwargs_needed: - print(f"Info: No file required the transformation `{self.handle_args_kwargs_types.__name__}`. Is it still needed?") + print( + f"Info: No file required the transformation `{self.handle_args_kwargs_types.__name__}`. Is it still needed?" + ) if not self.handle_numpy_stuff_needed: - print(f"Info: No file required the transformation `{self.handle_numpy_stuff.__name__}`. Is it still needed?") + print( + f"Info: No file required the transformation `{self.handle_numpy_stuff.__name__}`. Is it still needed?" + ) if __name__ == "__main__": parser = argparse.ArgumentParser( - prog='StubGenerator', - description='generates type stubs for pybind11 modules', + prog="StubGenerator", + description="generates type stubs for pybind11 modules", ) pytket_dir = Path(__file__).parent.parent.resolve() gen_root_dir = pytket_dir for mod in pkgutil.iter_modules(pytket._tket.__path__): - print(f"Generate {mod.name}.pyi") - subprocess.run([ - "pybind11-stubgen", - f"pytket._tket.{mod.name}", - "--enum-class-locations", "CXConfigType|BasisOrder|OpType:pytket._tket.circuit", - "--enum-class-locations", "PauliSynthStrat:pytket._tket.transform", - "--enum-class-locations", "GraphColourMethod|PauliPartitionStrat:pytket._tket.partition", - "--enum-class-locations", "SafetyMode:pytket._tket.passes", - "--enum-class-locations", "ZXWireType|QuantumType:pytket._tket.zx", - "-o", gen_root_dir]) + if not mod.name.startswith("lib"): + print(f"Generate {mod.name}.pyi") + subprocess.run( + [ + "pybind11-stubgen", + f"pytket._tket.{mod.name}", + "--enum-class-locations", + "CXConfigType|BasisOrder|OpType:pytket._tket.circuit", + "--enum-class-locations", + "PauliSynthStrat:pytket._tket.transform", + "--enum-class-locations", + "GraphColourMethod|PauliPartitionStrat:pytket._tket.partition", + "--enum-class-locations", + "SafetyMode:pytket._tket.passes", + "--enum-class-locations", + "ZXWireType|QuantumType:pytket._tket.zx", + "-o", + gen_root_dir, + ] + ) print("Cleanup:") stub_fixer = StubFixer() - for path in Path(f'{gen_root_dir}/pytket/_tket').iterdir(): + for path in Path(f"{gen_root_dir}/pytket/_tket").iterdir(): if path.is_file() and path.suffix == ".pyi": print(f" Fixing {path}") - with path.open('r+') as file: + with path.open("r+") as file: text = file.read() text = stub_fixer.handle_args_kwargs_types(text) text = stub_fixer.handle_numpy_stuff(text) - with path.open('w') as file: + with path.open("w") as file: file.write(text) print("") From 48394a04165d7d28723589aa6845612537c1ae96 Mon Sep 17 00:00:00 2001 From: Travis Thompson <102229498+trvto@users.noreply.github.com> Date: Tue, 14 Nov 2023 09:34:17 +0100 Subject: [PATCH 26/36] add job to check all build and test jobs successful (#1123) --- .github/workflows/build_and_test.yml | 36 ++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 2b2e7b7301..738da60228 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -577,3 +577,39 @@ jobs: run: | wget https://cqcl.github.io/tket/pytket/test-coverage/cov.xml -O oldcov.xml ./.github/workflows/compare-pytket-coverage oldcov.xml pytket-test-coverage/cov.xml + + check_all_build_and_test_jobs_successful: + name: All build and test jobs successful (or skipped) + needs: + - check_changes + - check_docs_tket + - check_format_tket + - build_test_tket + - build_test_tket_windows + - publish_pytket_coverage + - build_test_pytket_macos + - build_test_pytket_ubuntu + - build_test_pytket_windows + - publish_pytket_coverage + - check_pytket_coverage + if: always() + runs-on: ubuntu-22.04 + steps: + - shell: python + name: Check job results + run: | + results = [ + "${{ needs.check_changes.result }}", + "${{ needs.check_docs_tket.result }}", + "${{ needs.check_format_tket.result }}", + "${{ needs.build_test_tket.result }}", + "${{ needs.build_test_tket_windows.result }}", + "${{ needs.publish_pytket_coverage.result }}", + "${{ needs.build_test_pytket_macos.result }}", + "${{ needs.build_test_pytket_ubuntu.result }}", + "${{ needs.build_test_pytket_windows.result }}" + "${{ needs.publish_pytket_coverage.result }}", + "${{ needs.check_pytket_coverage.result }}", + ] + if "failure" in results or "cancelled" in results: + raise Exception From 8c545a2792935ac92145f133cd62873e51df2954 Mon Sep 17 00:00:00 2001 From: Travis Thompson <102229498+trvto@users.noreply.github.com> Date: Tue, 14 Nov 2023 11:57:36 +0100 Subject: [PATCH 27/36] [infra] remove tket build dummy job (#1124) --- .github/workflows/build_and_test.yml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 738da60228..1f6edf16cf 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -219,17 +219,6 @@ jobs: ccache -s #show stats ccache -z #show stats - build_test_tket_not_required: - name: Build and test (tket) - needs: check_changes - if: needs.check_changes.outputs.tket_or_workflow_changed != 'true' - strategy: - matrix: - os: ['ubuntu-22.04', 'macos-12', 'windows-2022', 'macos-13-xlarge'] - runs-on: ${{ matrix.os }} - steps: - - run: echo "no changes to tket" - build_test_pytket_ubuntu: name: Build and test pytket (ubuntu) needs: check_changes From 145a37e3670bd032c4f771f433e5f3273fbb3bff Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Tue, 14 Nov 2023 15:09:03 +0000 Subject: [PATCH 28/36] [infra] Run type-stub checks on macos-13-xlarge. (#1126) --- .github/workflows/build_and_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 1f6edf16cf..323c26c818 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -393,7 +393,7 @@ jobs: python${{ matrix.python-version }} -m pip install -r requirements.txt python${{ matrix.python-version }} -m pytest --ignore=simulator/ - name: Check type stubs are up-to-date and run mypy - if: matrix.os == 'macos-12' && (github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch') + if: matrix.os == 'macos-13-xlarge' && (github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch') run: | python${{ matrix.python-version }} -m pip install -U mypy python${{ matrix.python-version }} -m pip install -U pybind11-stubgen From 73b44bb94484a4624134f8ddf70091a5bbceb4d8 Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Tue, 14 Nov 2023 15:56:22 +0000 Subject: [PATCH 29/36] [feature] Add DummyBox (#1120) --- pytket/binders/circuit/Circuit/add_op.cpp | 42 +++++ pytket/binders/circuit/Circuit/main.cpp | 77 +++++++++ pytket/binders/circuit/boxes.cpp | 130 ++++++++++++++ pytket/binders/circuit/main.cpp | 3 + pytket/conanfile.py | 2 +- pytket/docs/changelog.rst | 3 + pytket/docs/circuit.rst | 11 +- pytket/pytket/_tket/circuit.pyi | 168 ++++++++++++++++++- pytket/tests/circuit_test.py | 96 +++++++++++ schemas/circuit_v1.json | 76 +++++++++ tket/CMakeLists.txt | 4 + tket/conanfile.py | 2 +- tket/include/tket/Circuit/Circuit.hpp | 11 ++ tket/include/tket/Circuit/DummyBox.hpp | 91 ++++++++++ tket/include/tket/Circuit/ResourceData.hpp | 60 +++++++ tket/include/tket/OpType/OpType.hpp | 7 +- tket/include/tket/OpType/OpTypeFunctions.hpp | 6 + tket/src/Circuit/Circuit.cpp | 137 +++++++++++++-- tket/src/Circuit/DummyBox.cpp | 76 +++++++++ tket/src/Circuit/ResourceData.cpp | 44 +++++ tket/src/Circuit/setters_and_getters.cpp | 4 + tket/src/OpType/OpTypeFunctions.cpp | 13 +- tket/src/OpType/OpTypeInfo.cpp | 1 + tket/test/CMakeLists.txt | 1 + tket/test/src/Circuit/test_DummyBox.cpp | 55 ++++++ tket/test/src/test_json.cpp | 18 ++ 26 files changed, 1117 insertions(+), 21 deletions(-) create mode 100644 tket/include/tket/Circuit/DummyBox.hpp create mode 100644 tket/include/tket/Circuit/ResourceData.hpp create mode 100644 tket/src/Circuit/DummyBox.cpp create mode 100644 tket/src/Circuit/ResourceData.cpp create mode 100644 tket/test/src/Circuit/test_DummyBox.cpp diff --git a/pytket/binders/circuit/Circuit/add_op.cpp b/pytket/binders/circuit/Circuit/add_op.cpp index a7a38daffd..087c84afde 100644 --- a/pytket/binders/circuit/Circuit/add_op.cpp +++ b/pytket/binders/circuit/Circuit/add_op.cpp @@ -25,12 +25,14 @@ #include "tket/Circuit/ClassicalExpBox.hpp" #include "tket/Circuit/ConjugationBox.hpp" #include "tket/Circuit/DiagonalBox.hpp" +#include "tket/Circuit/DummyBox.hpp" #include "tket/Circuit/Multiplexor.hpp" #include "tket/Circuit/PauliExpBoxes.hpp" #include "tket/Circuit/StatePreparation.hpp" #include "tket/Circuit/ToffoliBox.hpp" #include "tket/Converters/PhasePoly.hpp" #include "tket/Gate/OpPtrFunctions.hpp" +#include "tket/Utils/UnitID.hpp" #include "typecast.hpp" namespace py = pybind11; @@ -332,6 +334,30 @@ void init_circuit_add_op(py::class_> &c) { "qubits: Indices of the qubits to append the box to" "\n:return: the new :py:class:`Circuit`", py::arg("toffolibox"), py::arg("qubits")) + .def( + "add_dummybox", + [](Circuit *circ, const DummyBox &box, + const py::tket_custom::SequenceVec &qubits, + const py::tket_custom::SequenceVec &bits, + const py::kwargs &kwargs) { + std::vector args; + for (unsigned i : qubits) { + args.push_back(Qubit(i)); + } + for (unsigned i : bits) { + args.push_back(Bit(i)); + } + return add_box_method( + circ, std::make_shared(box), args, kwargs); + }, + "Append a :py:class:`DummyBox` to the circuit." + "\n\n:param dummybox: The box to append" + "\n:param qubits: Indices (in the default register) of the qubits to " + "append the box to" + "\n:param bits: Indices of the bits (in the default register) to " + "append the box to" + "\n:return: the new :py:class:`Circuit`", + py::arg("dummybox"), py::arg("qubits"), py::arg("bits")) .def( "add_qcontrolbox", [](Circuit *circ, const QControlBox &box, @@ -603,6 +629,22 @@ void init_circuit_add_op(py::class_> &c) { "qubits: Indices of the qubits to append the box to" "\n:return: the new :py:class:`Circuit`", py::arg("toffolibox"), py::arg("qubits")) + .def( + "add_dummybox", + [](Circuit *circ, const DummyBox &box, + const py_qubit_vector_t &qubits, const py_bit_vector_t &bits, + const py::kwargs &kwargs) { + std::vector args = {qubits.begin(), qubits.end()}; + args.insert(args.end(), bits.begin(), bits.end()); + return add_box_method( + circ, std::make_shared(box), args, kwargs); + }, + "Append a :py:class:`DummyBox` to the circuit." + "\n\n:param dummybox: The box to append" + "\n:param qubits: Qubits to append the box to" + "\n:param bits: Bits to append the box to" + "\n:return: the new :py:class:`Circuit`", + py::arg("dummybox"), py::arg("qubits"), py::arg("bits")) .def( "add_qcontrolbox", [](Circuit *circ, const QControlBox &box, diff --git a/pytket/binders/circuit/Circuit/main.cpp b/pytket/binders/circuit/Circuit/main.cpp index fe56309db0..44ad29ea8c 100644 --- a/pytket/binders/circuit/Circuit/main.cpp +++ b/pytket/binders/circuit/Circuit/main.cpp @@ -29,6 +29,7 @@ #include "tket/Circuit/Boxes.hpp" #include "tket/Circuit/Circuit.hpp" #include "tket/Circuit/Command.hpp" +#include "tket/Circuit/DummyBox.hpp" #include "tket/Circuit/PauliExpBoxes.hpp" #include "tket/Circuit/Simulation/CircuitSimulator.hpp" #include "tket/Circuit/ToffoliBox.hpp" @@ -763,6 +764,17 @@ void def_circuit(py::class_> &pyCircuit) { ":param opgroup: the name of the operations group to replace\n" ":return: whether any replacements were made", py::arg("box"), py::arg("opgroup")) + .def( + "substitute_named", + [](Circuit &circ, const DummyBox &box, const std::string &opgroup) { + return circ.substitute_named(box, opgroup); + }, + "Substitute all ops with the given name for the given box." + "The replacement boxes retain the same name.\n\n" + ":param box: the replacement DummyBox\n" + ":param opgroup: the name of the operations group to replace\n" + ":return: whether any replacements were made", + py::arg("box"), py::arg("opgroup")) .def( "substitute_named", [](Circuit &circ, const QControlBox &box, @@ -854,6 +866,71 @@ void def_circuit(py::class_> &pyCircuit) { "\n\n:param optype: operation type" "\n\n:return: list of :py:class:`Command`", py::arg("optype")) + .def( + "get_resources", &Circuit::get_resources, + "Calculate the overall resources of the circuit." + "\n\nThis takes account of the data stored in each " + "py:class:`DummyBox` within the circuit, as well as other gates, " + "to compute upper and lower bounds." + "\n\n:return: bounds on resources of the circuit" + "\n\n" + ">>> resource_data0 = ResourceData(\n" + "... op_type_count={\n" + "... OpType.T: ResourceBounds(1, 2),\n" + "... OpType.H: ResourceBounds(0, 1),\n" + "... OpType.CX: ResourceBounds(1, 2),\n" + "... OpType.CZ: ResourceBounds(3, 3),\n" + "... },\n" + "... gate_depth=ResourceBounds(5, 8),\n" + "... op_type_depth={\n" + "... OpType.T: ResourceBounds(0, 10),\n" + "... OpType.H: ResourceBounds(0, 10),\n" + "... OpType.CX: ResourceBounds(1, 2),\n" + "... OpType.CZ: ResourceBounds(3, 3),\n" + "... },\n" + "... two_qubit_gate_depth=ResourceBounds(4, 5),\n" + "... )\n" + ">>> dbox0 = DummyBox(n_qubits=2, n_bits=0, " + "resource_data=resource_data0)\n" + ">>> resource_data1 = ResourceData(\n" + "... op_type_count={\n" + "... OpType.T: ResourceBounds(2, 2),\n" + "... OpType.H: ResourceBounds(1, 1),\n" + "... OpType.CX: ResourceBounds(2, 3),\n" + "... OpType.CZ: ResourceBounds(3, 5),\n" + "... },\n" + "... gate_depth=ResourceBounds(5, 10),\n" + "... op_type_depth={\n" + "... OpType.T: ResourceBounds(1, 2),\n" + "... OpType.H: ResourceBounds(2, 4),\n" + "... OpType.CX: ResourceBounds(1, 1),\n" + "... OpType.CZ: ResourceBounds(3, 4),\n" + "... },\n" + "... two_qubit_gate_depth=ResourceBounds(3, 5),\n" + "... )\n" + ">>> dbox1 = DummyBox(n_qubits=3, n_bits=0, " + "resource_data=resource_data1)\n" + ">>> c = (\n" + "... Circuit(3)\n" + "... .H(0)\n" + "... .CX(1, 2)\n" + "... .CX(0, 1)\n" + "... .T(2)\n" + "... .H(1)\n" + "... .add_dummybox(dbox0, [0, 1], [])\n" + "... .CZ(1, 2)\n" + "... .add_dummybox(dbox1, [0, 1, 2], [])\n" + "... .H(2)\n" + "... )\n" + ">>> resource_data = c.get_resources()\n" + ">>> print(resource_data)\n" + "ResourceData(op_type_count={OpType.T: ResourceBounds(4, 5), " + "OpType.H: ResourceBounds(4, 5), OpType.CX: ResourceBounds(5, 7), " + "OpType.CZ: ResourceBounds(7, 9), }, gate_depth=ResourceBounds(15, " + "23), op_type_depth={OpType.T: ResourceBounds(2, 12), OpType.H: " + "ResourceBounds(5, 17), OpType.CX: ResourceBounds(4, 5), OpType.CZ: " + "ResourceBounds(7, 8), }, two_qubit_gate_depth=ResourceBounds(10, " + "13))") .def_property_readonly( "_dag_data", [](Circuit &circ) { diff --git a/pytket/binders/circuit/boxes.cpp b/pytket/binders/circuit/boxes.cpp index 9a20f64f64..1747ad57d0 100644 --- a/pytket/binders/circuit/boxes.cpp +++ b/pytket/binders/circuit/boxes.cpp @@ -17,16 +17,22 @@ #include #include +#include +#include + #include "binder_json.hpp" #include "binder_utils.hpp" #include "tket/Circuit/Circuit.hpp" #include "tket/Circuit/ConjugationBox.hpp" #include "tket/Circuit/DiagonalBox.hpp" +#include "tket/Circuit/DummyBox.hpp" #include "tket/Circuit/Multiplexor.hpp" #include "tket/Circuit/PauliExpBoxes.hpp" +#include "tket/Circuit/ResourceData.hpp" #include "tket/Circuit/StatePreparation.hpp" #include "tket/Circuit/ToffoliBox.hpp" #include "tket/Converters/PhasePoly.hpp" +#include "tket/OpType/OpType.hpp" #include "tket/Utils/HelperFunctions.hpp" #include "tket/Utils/Json.hpp" #include "typecast.hpp" @@ -453,6 +459,130 @@ void init_boxes(py::module &m) { .def( "get_rotation_axis", &ToffoliBox::get_rotation_axis, ":return: the rotation axis"); + py::class_>( + m, "ResourceBounds", + "Structure holding a minimum and maximum value of some resource, where " + "both values are unsigned integers.") + .def( + py::init([](unsigned min, unsigned max) { + if (min > max) { + throw std::invalid_argument( + "minimum must be less than or equal to maximum"); + } + return ResourceBounds{min, max}; + }), + "Constructs a ResourceBounds object.\n\n" + ":param min: minimum value\n" + ":param max: maximum value\n", + py::arg("min"), py::arg("max")) + .def( + "get_min", + [](const ResourceBounds &resource_bounds) { + return resource_bounds.min; + }, + ":return: the minimum value") + .def( + "get_max", + [](const ResourceBounds &resource_bounds) { + return resource_bounds.max; + }, + ":return: the maximum value"); + py::class_( + m, "ResourceData", + "An object holding resource data for use in a :py:class:`DummyBox`." + "\n\nThe object holds several fields representing minimum and maximum " + "values for certain resources. The absence of an :py:class:`OpType` in " + "one of these fields is interpreted as the absence of gates of that type " + "in the (imagined) circuit." + "\n\nSee :py:meth:`Circuit.get_resources` for how to use this data.") + .def( + py::init([](std::map> op_type_count, + ResourceBounds gate_depth, + std::map> op_type_depth, + ResourceBounds two_qubit_gate_depth) { + return ResourceData{ + op_type_count, gate_depth, op_type_depth, two_qubit_gate_depth}; + }), + "Constructs a ResourceData object.\n\n" + ":param op_type_count: dictionary of counts of selected " + ":py:class:`OpType`\n" + ":param gate_depth: overall gate depth\n" + ":param op_type_depth: dictionary of depths of selected " + ":py:class:`OpType`\n" + ":param two_qubit_gate_depth: overall two-qubit-gate depth", + py::arg("op_type_count"), py::arg("gate_depth"), + py::arg("op_type_depth"), py::arg("two_qubit_gate_depth")) + .def( + "get_op_type_count", + [](const ResourceData &resource_data) { + return resource_data.OpTypeCount; + }, + ":return: bounds on the op type count") + .def( + "get_gate_depth", + [](const ResourceData &resource_data) { + return resource_data.GateDepth; + }, + ":return: bounds on the gate depth") + .def( + "get_op_type_depth", + [](const ResourceData &resource_data) { + return resource_data.OpTypeDepth; + }, + ":return: bounds on the op type depth") + .def( + "get_two_qubit_gate_depth", + [](const ResourceData &resource_data) { + return resource_data.TwoQubitGateDepth; + }, + ":return: bounds on the two-qubit-gate depth") + .def("__repr__", [](const ResourceData &resource_data) { + std::stringstream ss; + ss << "ResourceData("; + ss << "op_type_count={"; + for (const auto &pair : resource_data.OpTypeCount) { + ss << "OpType." << optypeinfo().at(pair.first).name << ": " + << "ResourceBounds(" << pair.second.min << ", " << pair.second.max + << "), "; + } + ss << "}, "; + ss << "gate_depth=ResourceBounds(" << resource_data.GateDepth.min + << ", " << resource_data.GateDepth.max << "), "; + ss << "op_type_depth={"; + for (const auto &pair : resource_data.OpTypeDepth) { + ss << "OpType." << optypeinfo().at(pair.first).name << ": " + << "ResourceBounds(" << pair.second.min << ", " << pair.second.max + << "), "; + } + ss << "}, "; + ss << "two_qubit_gate_depth=ResourceBounds(" + << resource_data.TwoQubitGateDepth.min << ", " + << resource_data.TwoQubitGateDepth.max << ")"; + ss << ")"; + return ss.str(); + }); + py::class_, Op>( + m, "DummyBox", + "A placeholder operation that holds resource data. This box type cannot " + "be decomposed into a circuit. It only serves to record resource data " + "for a region of a circuit: for example, upper and lower bounds on gate " + "counts and depth. A circuit containing such a box cannot be executed.") + .def( + py::init([](unsigned n_qubits, unsigned n_bits, + const ResourceData &resource_data) { + return DummyBox(n_qubits, n_bits, resource_data); + }), + "Construct a new instance from some resource data.", + py::arg("n_qubits"), py::arg("n_bits"), py::arg("resource_data")) + .def( + "get_n_qubits", &DummyBox::get_n_qubits, + ":return: the number of qubits covered by the box") + .def( + "get_n_bits", &DummyBox::get_n_bits, + ":return: the number of bits covered by the box") + .def( + "get_resource_data", &DummyBox::get_resource_data, + ":return: the associated resource data"); py::class_, Op>( m, "QControlBox", "A user-defined controlled operation specified by an " diff --git a/pytket/binders/circuit/main.cpp b/pytket/binders/circuit/main.cpp index d14ec311b1..4730cef3ec 100644 --- a/pytket/binders/circuit/main.cpp +++ b/pytket/binders/circuit/main.cpp @@ -330,6 +330,9 @@ PYBIND11_MODULE(circuit, m) { .value( "ToffoliBox", OpType::ToffoliBox, "A permutation of classical basis states") + .value( + "DummyBox", OpType::DummyBox, + "A placeholder operation that holds resource data") .value( "CustomGate", OpType::CustomGate, ":math:`(\\alpha, \\beta, \\ldots) \\mapsto` A user-defined " diff --git a/pytket/conanfile.py b/pytket/conanfile.py index e75f704d46..756035975c 100644 --- a/pytket/conanfile.py +++ b/pytket/conanfile.py @@ -32,7 +32,7 @@ def package(self): cmake.install() def requirements(self): - self.requires("tket/1.2.67@tket/stable") + self.requires("tket/1.2.68@tket/stable") self.requires("tklog/0.3.3@tket/stable") self.requires("tkrng/0.3.3@tket/stable") self.requires("tkassert/0.3.4@tket/stable") diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index 71cba0ff00..e38e7c3d31 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -9,6 +9,9 @@ Minor new features: * Add optional parameter to QASM conversion methods to set the maximum allowed width of classical registers (default 32). * New ``OpType.CS`` and ``OpType.CSdg``. +* New classes ``ResourceBounds``, ``ResourceData`` and ``DummyBox``, and method + ``Circuit.get_resources()``, allowing reasoning about resource requirements + on circuit templates. Fixes: diff --git a/pytket/docs/circuit.rst b/pytket/docs/circuit.rst index a56d730742..b8f4c3342c 100644 --- a/pytket/docs/circuit.rst +++ b/pytket/docs/circuit.rst @@ -102,4 +102,13 @@ pytket.circuit :members: .. autoclass:: pytket._tket.circuit.ConjugationBox :special-members: - :members: \ No newline at end of file + :members: +.. autoclass:: pytket._tket.circuit.ResourceBounds + :special-members: + :members: +.. autoclass:: pytket._tket.circuit.ResourceData + :special-members: + :members: +.. autoclass:: pytket._tket.circuit.DummyBox + :special-members: + :members: diff --git a/pytket/pytket/_tket/circuit.pyi b/pytket/pytket/_tket/circuit.pyi index a9c00a6819..76282ef6d5 100644 --- a/pytket/pytket/_tket/circuit.pyi +++ b/pytket/pytket/_tket/circuit.pyi @@ -9,7 +9,7 @@ import pytket.circuit.logic_exp import pytket.wasm.wasm import sympy import typing -__all__ = ['BarrierOp', 'BasisOrder', 'CXConfigType', 'CircBox', 'Circuit', 'ClassicalEvalOp', 'ClassicalExpBox', 'ClassicalOp', 'Command', 'Conditional', 'ConjugationBox', 'CopyBitsOp', 'CustomGate', 'CustomGateDef', 'DiagonalBox', 'EdgeType', 'ExpBox', 'MetaOp', 'MultiBitOp', 'MultiplexedRotationBox', 'MultiplexedTensoredU2Box', 'MultiplexedU2Box', 'MultiplexorBox', 'Op', 'OpType', 'PauliExpBox', 'PauliExpCommutingSetBox', 'PauliExpPairBox', 'PhasePolyBox', 'ProjectorAssertionBox', 'QControlBox', 'RangePredicateOp', 'SetBitsOp', 'StabiliserAssertionBox', 'StatePreparationBox', 'ToffoliBox', 'ToffoliBoxSynthStrat', 'Unitary1qBox', 'Unitary2qBox', 'Unitary3qBox', 'WASMOp', 'fresh_symbol'] +__all__ = ['BarrierOp', 'BasisOrder', 'CXConfigType', 'CircBox', 'Circuit', 'ClassicalEvalOp', 'ClassicalExpBox', 'ClassicalOp', 'Command', 'Conditional', 'ConjugationBox', 'CopyBitsOp', 'CustomGate', 'CustomGateDef', 'DiagonalBox', 'DummyBox', 'EdgeType', 'ExpBox', 'MetaOp', 'MultiBitOp', 'MultiplexedRotationBox', 'MultiplexedTensoredU2Box', 'MultiplexedU2Box', 'MultiplexorBox', 'Op', 'OpType', 'PauliExpBox', 'PauliExpCommutingSetBox', 'PauliExpPairBox', 'PhasePolyBox', 'ProjectorAssertionBox', 'QControlBox', 'RangePredicateOp', 'ResourceBounds', 'ResourceData', 'SetBitsOp', 'StabiliserAssertionBox', 'StatePreparationBox', 'ToffoliBox', 'ToffoliBoxSynthStrat', 'Unitary1qBox', 'Unitary2qBox', 'Unitary3qBox', 'WASMOp', 'fresh_symbol'] class BarrierOp(Op): """ Barrier operations. @@ -1424,6 +1424,26 @@ class Circuit: :return: the new :py:class:`Circuit` """ @typing.overload + def add_dummybox(self, dummybox: DummyBox, qubits: typing.Sequence[int], bits: typing.Sequence[int], **kwargs: Any) -> Circuit: + """ + Append a :py:class:`DummyBox` to the circuit. + + :param dummybox: The box to append + :param qubits: Indices (in the default register) of the qubits to append the box to + :param bits: Indices of the bits (in the default register) to append the box to + :return: the new :py:class:`Circuit` + """ + @typing.overload + def add_dummybox(self, dummybox: DummyBox, qubits: typing.Sequence[pytket._tket.unit_id.Qubit], bits: typing.Sequence[pytket._tket.unit_id.Bit], **kwargs: Any) -> Circuit: + """ + Append a :py:class:`DummyBox` to the circuit. + + :param dummybox: The box to append + :param qubits: Qubits to append the box to + :param bits: Bits to append the box to + :return: the new :py:class:`Circuit` + """ + @typing.overload def add_expbox(self, expbox: ExpBox, qubit_0: int, qubit_1: int, **kwargs: Any) -> Circuit: """ Append an :py:class:`ExpBox` to the circuit. @@ -1977,6 +1997,64 @@ class Circuit: :param name: name for the register :return: the retrieved :py:class:`QubitRegister` """ + def get_resources(self) -> ResourceData: + """ + Calculate the overall resources of the circuit. + + This takes account of the data stored in each py:class:`DummyBox` within the circuit, as well as other gates, to compute upper and lower bounds. + + :return: bounds on resources of the circuit + + >>> resource_data0 = ResourceData( + ... op_type_count={ + ... OpType.T: ResourceBounds(1, 2), + ... OpType.H: ResourceBounds(0, 1), + ... OpType.CX: ResourceBounds(1, 2), + ... OpType.CZ: ResourceBounds(3, 3), + ... }, + ... gate_depth=ResourceBounds(5, 8), + ... op_type_depth={ + ... OpType.T: ResourceBounds(0, 10), + ... OpType.H: ResourceBounds(0, 10), + ... OpType.CX: ResourceBounds(1, 2), + ... OpType.CZ: ResourceBounds(3, 3), + ... }, + ... two_qubit_gate_depth=ResourceBounds(4, 5), + ... ) + >>> dbox0 = DummyBox(n_qubits=2, n_bits=0, resource_data=resource_data0) + >>> resource_data1 = ResourceData( + ... op_type_count={ + ... OpType.T: ResourceBounds(2, 2), + ... OpType.H: ResourceBounds(1, 1), + ... OpType.CX: ResourceBounds(2, 3), + ... OpType.CZ: ResourceBounds(3, 5), + ... }, + ... gate_depth=ResourceBounds(5, 10), + ... op_type_depth={ + ... OpType.T: ResourceBounds(1, 2), + ... OpType.H: ResourceBounds(2, 4), + ... OpType.CX: ResourceBounds(1, 1), + ... OpType.CZ: ResourceBounds(3, 4), + ... }, + ... two_qubit_gate_depth=ResourceBounds(3, 5), + ... ) + >>> dbox1 = DummyBox(n_qubits=3, n_bits=0, resource_data=resource_data1) + >>> c = ( + ... Circuit(3) + ... .H(0) + ... .CX(1, 2) + ... .CX(0, 1) + ... .T(2) + ... .H(1) + ... .add_dummybox(dbox0, , []) + ... .CZ(1, 2) + ... .add_dummybox(dbox1, [0, 1, 2], []) + ... .H(2) + ... ) + >>> resource_data = c.get_resources() + >>> print(resource_data) + ResourceData(op_type_count={OpType.T: ResourceBounds(4, 5), OpType.H: ResourceBounds(4, 5), OpType.CX: ResourceBounds(5, 7), OpType.CZ: ResourceBounds(7, 9), }, gate_depth=ResourceBounds(15, 23), op_type_depth={OpType.T: ResourceBounds(2, 12), OpType.H: ResourceBounds(5, 17), OpType.CX: ResourceBounds(4, 5), OpType.CZ: ResourceBounds(7, 8), }, two_qubit_gate_depth=ResourceBounds(10, 13)) + """ def get_statevector(self) -> NDArray[numpy.complex128]: """ Calculate the unitary matrix of the circuit, using ILO-BE convention, applied to the column vector (1,0,0...), which is thus another column vector. Due to pybind11 and numpy peculiarities, to treat the result as a genuine column vector and perform further matrix multiplication, you need to call .reshape(rows,1) to get a 2D matrix with the correct dimensions. @@ -2175,6 +2253,15 @@ class Circuit: :return: whether any replacements were made """ @typing.overload + def substitute_named(self, box: DummyBox, opgroup: str) -> bool: + """ + Substitute all ops with the given name for the given box.The replacement boxes retain the same name. + + :param box: the replacement DummyBox + :param opgroup: the name of the operations group to replace + :return: whether any replacements were made + """ + @typing.overload def substitute_named(self, box: QControlBox, opgroup: str) -> bool: """ Substitute all ops with the given name for the given box.The replacement boxes retain the same name. @@ -2567,6 +2654,26 @@ class DiagonalBox(Op): """ :return: the upper_triangle flag """ +class DummyBox(Op): + """ + A placeholder operation that holds resource data. This box type cannot be decomposed into a circuit. It only serves to record resource data for a region of a circuit: for example, upper and lower bounds on gate counts and depth. A circuit containing such a box cannot be executed. + """ + def __init__(self, n_qubits: int, n_bits: int, resource_data: ResourceData) -> None: + """ + Construct a new instance from some resource data. + """ + def get_n_bits(self) -> int: + """ + :return: the number of bits covered by the box + """ + def get_n_qubits(self) -> int: + """ + :return: the number of qubits covered by the box + """ + def get_resource_data(self) -> ResourceData: + """ + :return: the associated resource data + """ class EdgeType: """ Type of a wire in a circuit or input to an op @@ -2997,6 +3104,8 @@ class OpType: ToffoliBox : A permutation of classical basis states + DummyBox : A placeholder operation that holds resource data + CustomGate : :math:`(\alpha, \beta, \ldots) \mapsto` A user-defined operation, based on a :py:class:`Circuit` :math:`C` with parameters :math:`\alpha, \beta, \ldots` substituted in place of bound symbolic variables in :math:`C`, as defined by the :py:class:`CustomGateDef`. Conditional : An operation to be applied conditionally on the value of some classical register @@ -3096,6 +3205,7 @@ class OpType: CopyBits: typing.ClassVar[OpType] # value = CustomGate: typing.ClassVar[OpType] # value = DiagonalBox: typing.ClassVar[OpType] # value = + DummyBox: typing.ClassVar[OpType] # value = ECR: typing.ClassVar[OpType] # value = ESWAP: typing.ClassVar[OpType] # value = ExpBox: typing.ClassVar[OpType] # value = @@ -3158,7 +3268,7 @@ class OpType: Z: typing.ClassVar[OpType] # value = ZZMax: typing.ClassVar[OpType] # value = ZZPhase: typing.ClassVar[OpType] # value = - __members__: typing.ClassVar[dict[str, OpType]] # value = {'Phase': , 'Z': , 'X': , 'Y': , 'S': , 'Sdg': , 'T': , 'Tdg': , 'V': , 'Vdg': , 'SX': , 'SXdg': , 'H': , 'Rx': , 'Ry': , 'Rz': , 'U1': , 'U2': , 'U3': , 'TK1': , 'TK2': , 'CX': , 'CY': , 'CZ': , 'CH': , 'CV': , 'CVdg': , 'CSX': , 'CSXdg': , 'CS': , 'CSdg': , 'CRz': , 'CRx': , 'CRy': , 'CU1': , 'CU3': , 'CCX': , 'ECR': , 'SWAP': , 'CSWAP': , 'noop': , 'Barrier': , 'Label': , 'Branch': , 'Goto': , 'Stop': , 'BRIDGE': , 'Measure': , 'Reset': , 'CircBox': , 'PhasePolyBox': , 'Unitary1qBox': , 'Unitary2qBox': , 'Unitary3qBox': , 'ExpBox': , 'PauliExpBox': , 'PauliExpPairBox': , 'PauliExpCommutingSetBox': , 'QControlBox': , 'ToffoliBox': , 'CustomGate': , 'Conditional': , 'ISWAP': , 'PhasedISWAP': , 'XXPhase': , 'YYPhase': , 'ZZPhase': , 'XXPhase3': , 'PhasedX': , 'NPhasedX': , 'CnRy': , 'CnX': , 'CnY': , 'CnZ': , 'ZZMax': , 'ESWAP': , 'FSim': , 'Sycamore': , 'ISWAPMax': , 'ClassicalTransform': , 'WASM': , 'SetBits': , 'CopyBits': , 'RangePredicate': , 'ExplicitPredicate': , 'ExplicitModifier': , 'MultiBit': , 'ClassicalExpBox': , 'MultiplexorBox': , 'MultiplexedRotationBox': , 'MultiplexedU2Box': , 'MultiplexedTensoredU2Box': , 'StatePreparationBox': , 'DiagonalBox': } + __members__: typing.ClassVar[dict[str, OpType]] # value = {'Phase': , 'Z': , 'X': , 'Y': , 'S': , 'Sdg': , 'T': , 'Tdg': , 'V': , 'Vdg': , 'SX': , 'SXdg': , 'H': , 'Rx': , 'Ry': , 'Rz': , 'U1': , 'U2': , 'U3': , 'TK1': , 'TK2': , 'CX': , 'CY': , 'CZ': , 'CH': , 'CV': , 'CVdg': , 'CSX': , 'CSXdg': , 'CS': , 'CSdg': , 'CRz': , 'CRx': , 'CRy': , 'CU1': , 'CU3': , 'CCX': , 'ECR': , 'SWAP': , 'CSWAP': , 'noop': , 'Barrier': , 'Label': , 'Branch': , 'Goto': , 'Stop': , 'BRIDGE': , 'Measure': , 'Reset': , 'CircBox': , 'PhasePolyBox': , 'Unitary1qBox': , 'Unitary2qBox': , 'Unitary3qBox': , 'ExpBox': , 'PauliExpBox': , 'PauliExpPairBox': , 'PauliExpCommutingSetBox': , 'QControlBox': , 'ToffoliBox': , 'DummyBox': , 'CustomGate': , 'Conditional': , 'ISWAP': , 'PhasedISWAP': , 'XXPhase': , 'YYPhase': , 'ZZPhase': , 'XXPhase3': , 'PhasedX': , 'NPhasedX': , 'CnRy': , 'CnX': , 'CnY': , 'CnZ': , 'ZZMax': , 'ESWAP': , 'FSim': , 'Sycamore': , 'ISWAPMax': , 'ClassicalTransform': , 'WASM': , 'SetBits': , 'CopyBits': , 'RangePredicate': , 'ExplicitPredicate': , 'ExplicitModifier': , 'MultiBit': , 'ClassicalExpBox': , 'MultiplexorBox': , 'MultiplexedRotationBox': , 'MultiplexedU2Box': , 'MultiplexedTensoredU2Box': , 'StatePreparationBox': , 'DiagonalBox': } noop: typing.ClassVar[OpType] # value = @staticmethod def from_name(arg0: str) -> OpType: @@ -3401,6 +3511,60 @@ class RangePredicateOp(ClassicalEvalOp): """ Inclusive upper bound. """ +class ResourceBounds: + """ + Structure holding a minimum and maximum value of some resource, where both values are unsigned integers. + """ + def __init__(self, min: int, max: int) -> None: + """ + Constructs a ResourceBounds object. + + :param min: minimum value + :param max: maximum value + """ + def get_max(self) -> int: + """ + :return: the maximum value + """ + def get_min(self) -> int: + """ + :return: the minimum value + """ +class ResourceData: + """ + An object holding resource data for use in a :py:class:`DummyBox`. + + The object holds several fields representing minimum and maximum values for certain resources. The absence of an :py:class:`OpType` in one of these fields is interpreted as the absence of gates of that type in the (imagined) circuit. + + See :py:meth:`Circuit.get_resources` for how to use this data. + """ + def __init__(self, op_type_count: dict[OpType, ResourceBounds], gate_depth: ResourceBounds, op_type_depth: dict[OpType, ResourceBounds], two_qubit_gate_depth: ResourceBounds) -> None: + """ + Constructs a ResourceData object. + + :param op_type_count: dictionary of counts of selected :py:class:`OpType` + :param gate_depth: overall gate depth + :param op_type_depth: dictionary of depths of selected :py:class:`OpType` + :param two_qubit_gate_depth: overall two-qubit-gate depth + """ + def __repr__(self) -> str: + ... + def get_gate_depth(self) -> ResourceBounds: + """ + :return: bounds on the gate depth + """ + def get_op_type_count(self) -> dict[OpType, ResourceBounds]: + """ + :return: bounds on the op type count + """ + def get_op_type_depth(self) -> dict[OpType, ResourceBounds]: + """ + :return: bounds on the op type depth + """ + def get_two_qubit_gate_depth(self) -> ResourceBounds: + """ + :return: bounds on the two-qubit-gate depth + """ class SetBitsOp(ClassicalEvalOp): """ An operation to set the values of Bits to some constants. diff --git a/pytket/tests/circuit_test.py b/pytket/tests/circuit_test.py index 9b0804c78f..243619aece 100644 --- a/pytket/tests/circuit_test.py +++ b/pytket/tests/circuit_test.py @@ -49,6 +49,9 @@ BitRegister, QubitRegister, CXConfigType, + ResourceBounds, + ResourceData, + DummyBox, ) from pytket.circuit.display import get_circuit_renderer, render_circuit_as_html from pytket.circuit.named_types import ( @@ -1257,6 +1260,99 @@ def test_phase_order() -> None: assert c == c1 +def test_dummy_box() -> None: + resource_data = ResourceData( + op_type_count={OpType.T: ResourceBounds(10, 20)}, + gate_depth=ResourceBounds(5, 8), + op_type_depth={OpType.CZ: ResourceBounds(3, 6), OpType.T: ResourceBounds(4, 6)}, + two_qubit_gate_depth=ResourceBounds(4, 5), + ) + dbox = DummyBox(n_qubits=3, n_bits=1, resource_data=resource_data) + c = Circuit(4, 2) + c.add_dummybox(dbox, [0, 2, 3], [1]) + cmds = c.get_commands() + assert len(cmds) == 1 + op = cmds[0].op + assert type(op) is DummyBox + resource_data1 = op.get_resource_data() + op_type_count = resource_data1.get_op_type_count() + assert op_type_count[OpType.T].get_min() == 10 + assert op_type_count[OpType.T].get_max() == 20 + assert json_validate(c) + + +def test_resources() -> None: + resource_data0 = ResourceData( + op_type_count={ + OpType.T: ResourceBounds(1, 2), + OpType.H: ResourceBounds(0, 1), + OpType.CX: ResourceBounds(1, 2), + OpType.CZ: ResourceBounds(3, 3), + }, + gate_depth=ResourceBounds(5, 8), + op_type_depth={ + OpType.T: ResourceBounds(0, 10), + OpType.H: ResourceBounds(0, 10), + OpType.CX: ResourceBounds(1, 2), + OpType.CZ: ResourceBounds(3, 3), + }, + two_qubit_gate_depth=ResourceBounds(4, 5), + ) + dbox0 = DummyBox(n_qubits=2, n_bits=0, resource_data=resource_data0) + resource_data1 = ResourceData( + op_type_count={ + OpType.T: ResourceBounds(2, 2), + OpType.H: ResourceBounds(1, 1), + OpType.CX: ResourceBounds(2, 3), + OpType.CZ: ResourceBounds(3, 5), + }, + gate_depth=ResourceBounds(5, 10), + op_type_depth={ + OpType.T: ResourceBounds(1, 2), + OpType.H: ResourceBounds(2, 4), + OpType.CX: ResourceBounds(1, 1), + OpType.CZ: ResourceBounds(3, 4), + }, + two_qubit_gate_depth=ResourceBounds(3, 5), + ) + dbox1 = DummyBox(n_qubits=3, n_bits=0, resource_data=resource_data1) + c = Circuit(3) + c.H(0) + c.CX(1, 2) + c.CX(0, 1) + c.T(2) + c.H(1) + c.add_dummybox(dbox0, [0, 1], []) + c.CZ(1, 2) + c.add_dummybox(dbox1, [0, 1, 2], []) + c.H(2) + resource_data = c.get_resources() + op_type_count = resource_data.get_op_type_count() + assert op_type_count[OpType.T].get_min() == 4 + assert op_type_count[OpType.T].get_max() == 5 + assert op_type_count[OpType.H].get_min() == 4 + assert op_type_count[OpType.H].get_max() == 5 + assert op_type_count[OpType.CX].get_min() == 5 + assert op_type_count[OpType.CX].get_max() == 7 + assert op_type_count[OpType.CZ].get_min() == 7 + assert op_type_count[OpType.CZ].get_max() == 9 + gate_depth = resource_data.get_gate_depth() + assert gate_depth.get_min() == 15 + assert gate_depth.get_max() == 23 + op_type_depth = resource_data.get_op_type_depth() + assert op_type_depth[OpType.T].get_min() == 2 + assert op_type_depth[OpType.T].get_max() == 12 + assert op_type_depth[OpType.H].get_min() == 5 + assert op_type_depth[OpType.H].get_max() == 17 + assert op_type_depth[OpType.CX].get_min() == 4 + assert op_type_depth[OpType.CX].get_max() == 5 + assert op_type_depth[OpType.CZ].get_min() == 7 + assert op_type_depth[OpType.CZ].get_max() == 8 + two_qubit_gate_depth = resource_data.get_two_qubit_gate_depth() + assert two_qubit_gate_depth.get_min() == 10 + assert two_qubit_gate_depth.get_max() == 13 + + if __name__ == "__main__": test_circuit_gen() test_symbolic_ops() diff --git a/schemas/circuit_v1.json b/schemas/circuit_v1.json index 9844e8f9bb..baca6161eb 100644 --- a/schemas/circuit_v1.json +++ b/schemas/circuit_v1.json @@ -644,6 +644,65 @@ "Matching" ], "definition": "Strategies for synthesising \"ToffoliBoxes\"" + }, + "resource_bound": { + "type": "object", + "properties": { + "max": { + "type": "integer", + "minimum": 0 + }, + "min": { + "type": "integer", + "minimum": 0 + } + }, + "required": [ + "max", + "min" + ], + "additionalProperties": false + }, + "optype_resource_bound": { + "type": "array", + "items": [ + { + "type": "string" + }, + { + "$ref": "#/definitions/box/properties/resource_bound" + } + ] + }, + "resource_data": { + "type": "object", + "properties": { + "gate_depth": { + "$ref": "#/definitions/box/properties/resource_bound" + }, + "two_qubit_gate_depth": { + "$ref": "#/definitions/box/properties/resource_bound" + }, + "op_type_count": { + "type": "array", + "items": { + "$ref": "#/definitions/box/properties/optype_resource_bound" + } + }, + "op_type_depth": { + "type": "array", + "items": { + "$ref": "#/definitions/box/properties/optype_resource_bound" + } + } + }, + "required": [ + "gate_depth", + "two_qubit_gate_depth", + "op_type_count", + "op_type_depth" + ], + "additionalProperties": false } }, "required": [ @@ -778,6 +837,23 @@ "maxProperties": 5 } }, + { + "if": { + "properties": { + "type": { + "const": "DummyBox" + } + } + }, + "then": { + "required": [ + "n_qubits", + "n_bits", + "resource_data" + ], + "maxProperties": 5 + } + }, { "if": { "properties": { diff --git a/tket/CMakeLists.txt b/tket/CMakeLists.txt index 958ea72490..8b23409ac8 100644 --- a/tket/CMakeLists.txt +++ b/tket/CMakeLists.txt @@ -168,6 +168,8 @@ target_sources(tket src/Circuit/Circuit.cpp src/Circuit/CircuitJson.cpp src/Circuit/CommandJson.cpp + src/Circuit/ResourceData.cpp + src/Circuit/DummyBox.cpp src/Circuit/macro_manipulation.cpp src/Circuit/basic_circ_manip.cpp src/Circuit/latex_drawing.cpp @@ -343,12 +345,14 @@ target_sources(tket include/tket/Circuit/Conditional.hpp include/tket/Circuit/DAGDefs.hpp include/tket/Circuit/DiagonalBox.hpp + include/tket/Circuit/DummyBox.hpp include/tket/Circuit/Multiplexor.hpp include/tket/Circuit/StatePreparation.hpp include/tket/Circuit/ThreeQubitConversion.hpp include/tket/Circuit/ToffoliBox.hpp include/tket/Circuit/PauliExpBoxes.hpp include/tket/Circuit/ConjugationBox.hpp + include/tket/Circuit/ResourceData.hpp include/tket/Circuit/Simulation/CircuitSimulator.hpp include/tket/Circuit/Simulation/PauliExpBoxUnitaryCalculator.hpp include/tket/Architecture/Architecture.hpp diff --git a/tket/conanfile.py b/tket/conanfile.py index 7cf1e667ab..9193b7cacb 100644 --- a/tket/conanfile.py +++ b/tket/conanfile.py @@ -23,7 +23,7 @@ class TketConan(ConanFile): name = "tket" - version = "1.2.67" + version = "1.2.68" package_type = "library" license = "Apache 2" homepage = "https://github.com/CQCL/tket" diff --git a/tket/include/tket/Circuit/Circuit.hpp b/tket/include/tket/Circuit/Circuit.hpp index 7374e1a870..b5eeac9ff4 100644 --- a/tket/include/tket/Circuit/Circuit.hpp +++ b/tket/include/tket/Circuit/Circuit.hpp @@ -46,6 +46,7 @@ #include "Command.hpp" #include "Conditional.hpp" #include "DAGDefs.hpp" +#include "ResourceData.hpp" #include "tket/Gate/OpPtrFunctions.hpp" #include "tket/Utils/Constants.hpp" #include "tket/Utils/GraphHeaders.hpp" @@ -1651,6 +1652,16 @@ class Circuit { std::vector wasmwire; std::size_t _number_of_wasm_wires = 0; + /** + * Calculate the overall resources of the circuit. + * + * This takes account of the data stored in each \ref DummyBox within the + * circuit, as well as other gates, to compute upper and lower bounds. + * + * @return bounds on resources of the circuit + */ + ResourceData get_resources() /*const*/; + private: std::optional name; /** optional string name descriptor for human identification*/ diff --git a/tket/include/tket/Circuit/DummyBox.hpp b/tket/include/tket/Circuit/DummyBox.hpp new file mode 100644 index 0000000000..c43b520a06 --- /dev/null +++ b/tket/include/tket/Circuit/DummyBox.hpp @@ -0,0 +1,91 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include "Boxes.hpp" +#include "ResourceData.hpp" +#include "tket/Utils/Json.hpp" + +namespace tket { + +/** + * Exception indicating that dummy boxes cannot be decomposed. + */ +class DummyBoxNotDecomposable : public std::logic_error { + public: + DummyBoxNotDecomposable() + : std::logic_error("Cannot generate circuit from DummyBox") {} +}; + +/** + * @brief A placeholder operation that holds resource data. + * + * This box type cannot be decomposed into a circuit. It only serves to record + * resource data for a region of a circuit: for example, upper and lower bounds + * on gate counts and depth. A circuit containing such a box cannot be executed. + */ +class DummyBox : public Box { + public: + /** + * @brief Construct a new instance from some resource data. + * + * @param n_qubits number of qubits + * @param n_bits number of bits + * @param resource_data_ resource data + */ + DummyBox( + unsigned n_qubits, unsigned n_bits, const ResourceData &resource_data_); + + /** + * Copy constructor + */ + DummyBox(const DummyBox &other); + + Op_ptr symbol_substitution( + const SymEngine::map_basic_basic &) const override { + return std::make_shared(*this); + } + + SymSet free_symbols() const override { return {}; } + + bool is_equal(const Op &op_other) const override; + + unsigned get_n_qubits() const; + unsigned get_n_bits() const; + ResourceData get_resource_data() const; + + op_signature_t get_signature() const override; + + static Op_ptr from_json(const nlohmann::json &j); + + static nlohmann::json to_json(const Op_ptr &op); + + protected: + /** + * @brief Throw an exception. + * + * This box does not correspond to any actual circuit. + * + * @throws DummyBoxNotDecomposable + */ + void generate_circuit() const override; + + private: + const unsigned n_qubits; + const unsigned n_bits; + const ResourceData resource_data; +}; + +} // namespace tket diff --git a/tket/include/tket/Circuit/ResourceData.hpp b/tket/include/tket/Circuit/ResourceData.hpp new file mode 100644 index 0000000000..8e23dc0d50 --- /dev/null +++ b/tket/include/tket/Circuit/ResourceData.hpp @@ -0,0 +1,60 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include +#include + +#include "tket/OpType/OpType.hpp" + +namespace tket { + +template +concept arithmetic = std::integral or std::floating_point; + +template +struct ResourceBounds { + T min; + T max; + bool operator==(const ResourceBounds& other) const { + return min == other.min && max == other.max; + } + ResourceBounds() : min(0), max(0) {} + ResourceBounds(T val) : min(val), max(val) {} + ResourceBounds(T minval, T maxval) : min(minval), max(maxval) {} +}; + +struct ResourceData { + std::map> OpTypeCount; + ResourceBounds GateDepth; + std::map> OpTypeDepth; + ResourceBounds TwoQubitGateDepth; + bool operator==(const ResourceData& other) const; +}; + +template +void to_json(nlohmann::json& j, const ResourceBounds& bounds) { + j["min"] = bounds.min; + j["max"] = bounds.max; +} +template +void from_json(const nlohmann::json& j, ResourceBounds& bounds) { + bounds.min = j.at("min").get(); + bounds.max = j.at("max").get(); +} + +JSON_DECL(ResourceData) + +} // namespace tket diff --git a/tket/include/tket/OpType/OpType.hpp b/tket/include/tket/OpType/OpType.hpp index 833aacd31d..a3ba10d342 100644 --- a/tket/include/tket/OpType/OpType.hpp +++ b/tket/include/tket/OpType/OpType.hpp @@ -719,7 +719,12 @@ enum class OpType { /** * See \ref UnitaryTableauBox */ - UnitaryTableauBox + UnitaryTableauBox, + + /** + * See \ref DummyBox + */ + DummyBox }; JSON_DECL(OpType) diff --git a/tket/include/tket/OpType/OpTypeFunctions.hpp b/tket/include/tket/OpType/OpTypeFunctions.hpp index 1556ba2dbc..6027b5ec72 100644 --- a/tket/include/tket/OpType/OpTypeFunctions.hpp +++ b/tket/include/tket/OpType/OpTypeFunctions.hpp @@ -60,6 +60,12 @@ bool is_initial_q_type(OpType optype); /** Test for output or discard quantum "ops" */ bool is_final_q_type(OpType optype); +/** Test for input "ops" */ +bool is_initial_type(OpType optype); + +/** Test for output "ops" */ +bool is_final_type(OpType optype); + /** Test for input, creation, output or discard "ops" */ bool is_boundary_type(OpType optype); diff --git a/tket/src/Circuit/Circuit.cpp b/tket/src/Circuit/Circuit.cpp index e5e2615746..87cbdcb174 100644 --- a/tket/src/Circuit/Circuit.cpp +++ b/tket/src/Circuit/Circuit.cpp @@ -14,14 +14,22 @@ #include "tket/Circuit/Circuit.hpp" +#include #include #include #include #include #include +#include #include #include +#include "tket/Circuit/DAGDefs.hpp" +#include "tket/Circuit/DummyBox.hpp" +#include "tket/Circuit/ResourceData.hpp" +#include "tket/OpType/OpDesc.hpp" +#include "tket/OpType/OpType.hpp" +#include "tket/OpType/OpTypeFunctions.hpp" #include "tket/Utils/Expression.hpp" #include "tket/Utils/GraphHeaders.hpp" #include "tket/Utils/HelperFunctions.hpp" @@ -36,17 +44,17 @@ namespace tket { // information apart from qubit path and slices can be seen easily. // Very useful for debugging and eyeball comparison of circuits. // out << "\nrankdir=\"LR\"" <--- put this in for Left-Right circuit -void Circuit::to_graphviz(std::ostream &out) const { +void Circuit::to_graphviz(std::ostream& out) const { IndexMap im = index_map(); out << "digraph G {\n"; out << "{ rank = same\n"; - for (const Vertex &v : all_inputs()) { + for (const Vertex& v : all_inputs()) { out << im[v] << " "; } out << "}\n"; out << "{ rank = same\n"; - for (const Vertex &v : all_outputs()) { + for (const Vertex& v : all_outputs()) { out << im[v] << " "; } out << "}\n"; @@ -66,7 +74,7 @@ void Circuit::to_graphviz(std::ostream &out) const { out << "}"; } -void Circuit::to_graphviz_file(const std::string &filename) const { +void Circuit::to_graphviz_file(const std::string& filename) const { std::ofstream dot_file(filename); to_graphviz(dot_file); } @@ -140,9 +148,9 @@ Expr Circuit::get_phase() const { void Circuit::add_phase(Expr a) { phase += a; } -void Circuit::symbol_substitution(const symbol_map_t &symbol_map) { +void Circuit::symbol_substitution(const symbol_map_t& symbol_map) { SymEngine::map_basic_basic sub_map; - for (const std::pair &p : symbol_map) { + for (const std::pair& p : symbol_map) { ExprPtr s = p.first; ExprPtr e = p.second; // This is a workaround for a symengine issue: symengine currently has poor @@ -158,7 +166,7 @@ void Circuit::symbol_substitution(const symbol_map_t &symbol_map) { } void Circuit::symbol_substitution( - const std::map &symbol_map) { + const std::map& symbol_map) { symbol_map_t s_map; for (std::pair p : symbol_map) { s_map[p.first] = Expr(p.second); @@ -192,7 +200,7 @@ bool Circuit::is_symbolic() const { return !free_symbols().empty(); } // check aspects of circuit for equality, and optionally throw exceptions when // not met bool Circuit::circuit_equality( - const Circuit &other, const std::set &except, + const Circuit& other, const std::set& except, bool throw_error) const { bool check = true; check &= check_iterators_equality(*this, other); @@ -265,9 +273,9 @@ bool Circuit::circuit_equality( // depth) // TODO:: rewrite to work with classical boxes bool Circuit::in_causal_order( - const Vertex &target, const Vertex &from, bool forward, - const std::map &v_to_depth, - const std::map &v_to_units, bool strict) const { + const Vertex& target, const Vertex& from, bool forward, + const std::map& v_to_depth, + const std::map& v_to_units, bool strict) const { unsigned target_depth = v_to_depth.at(target); if (!strict && from == target) return true; if (v_to_depth.at(from) >= target_depth) return false; @@ -285,7 +293,7 @@ bool Circuit::in_causal_order( std::set to_search(c); if (forward) { VertexVec succs = get_successors(from); - for (const Vertex &s : succs) { + for (const Vertex& s : succs) { if (v_to_depth.find(s) != v_to_depth.end()) { to_search.insert(s); } @@ -300,14 +308,14 @@ bool Circuit::in_causal_order( to_search.erase(to_search.begin()); if (v_to_depth.at(v) > target_depth) continue; unit_set_t v_units = v_to_units.at(v); - for (const UnitID &u : lookup_units) { + for (const UnitID& u : lookup_units) { if (v_units.find(u) != v_units.end()) { return true; } } if (forward) { VertexVec succs = get_successors(v); - for (const Vertex &s : succs) { + for (const Vertex& s : succs) { if (v_to_depth.find(s) != v_to_depth.end()) { to_search.insert(s); } @@ -320,4 +328,105 @@ bool Circuit::in_causal_order( return false; } +// Update depth fields of `data` for a vertex with data for the vertex's +// predecessors `preds`, which is assumed to be already stored in `datamap`. +static void update_from_predecessors( + ResourceData& data, const VertexVec& preds, + const std::map& datamap) { + std::vector pre_data; + for (const Vertex& pre_v : preds) { + pre_data.push_back(datamap.at(pre_v)); + } + // 1. GateDepth + data.GateDepth.min += std::max_element( + pre_data.begin(), pre_data.end(), + [](const ResourceData& a, const ResourceData& b) { + return a.GateDepth.min < b.GateDepth.min; + }) + ->GateDepth.min; + data.GateDepth.max += std::max_element( + pre_data.begin(), pre_data.end(), + [](const ResourceData& a, const ResourceData& b) { + return a.GateDepth.max < b.GateDepth.max; + }) + ->GateDepth.max; + // 2. OpTypeDepth + std::map min_depths; + std::map max_depths; + for (const ResourceData& pre_v_data : pre_data) { + for (const auto& pair : pre_v_data.OpTypeDepth) { + if (pair.second.min > min_depths[pair.first]) { + min_depths[pair.first] = pair.second.min; + } + if (pair.second.max > max_depths[pair.first]) { + max_depths[pair.first] = pair.second.max; + } + } + } + for (const auto& pair : min_depths) { + data.OpTypeDepth[pair.first].min += min_depths[pair.first]; + } + for (const auto& pair : max_depths) { + data.OpTypeDepth[pair.first].max += max_depths[pair.first]; + } + // 3. TwoQubitGateDepth + data.TwoQubitGateDepth.min += + std::max_element( + pre_data.begin(), pre_data.end(), + [](const ResourceData& a, const ResourceData& b) { + return a.TwoQubitGateDepth.min < b.TwoQubitGateDepth.min; + }) + ->TwoQubitGateDepth.min; + data.TwoQubitGateDepth.max += + std::max_element( + pre_data.begin(), pre_data.end(), + [](const ResourceData& a, const ResourceData& b) { + return a.TwoQubitGateDepth.max < b.TwoQubitGateDepth.max; + }) + ->TwoQubitGateDepth.max; +} + +ResourceData Circuit::get_resources() /*const*/ { + // Traverse the DAG in topological order. At each vertex compute a new + // ResourceData based on the ResourceData already computed for its immediate + // predecessors. Compute final ResourceData based on terminal nodes. + const VertexVec vertices = vertices_in_order(); + std::map datamap; + std::map> op_type_count; + for (const Vertex& v : vertices) { + ResourceData data; + OpType optype = get_OpType_from_Vertex(v); + if (!is_initial_type(optype)) { + if (!is_final_type(optype)) { + if (optype == OpType::DummyBox) { + const DummyBox& dbox = + static_cast(*get_Op_ptr_from_Vertex(v)); + data = dbox.get_resource_data(); + for (const auto& pair : data.OpTypeCount) { + op_type_count[pair.first].min += pair.second.min; + op_type_count[pair.first].max += pair.second.max; + } + } else { + data.GateDepth = {1}; + data.OpTypeDepth[optype] = {1}; + if (OpDesc(optype).is_gate() && + get_Op_ptr_from_Vertex(v)->n_qubits() == 2) { + data.TwoQubitGateDepth = {1}; + } + op_type_count[optype].min += 1; + op_type_count[optype].max += 1; + } + } + // Aggregate with predecessors + update_from_predecessors(data, get_predecessors(v), datamap); + } + datamap[v] = data; + } + // Finally aggregate outputs + ResourceData final_data; + update_from_predecessors(final_data, all_outputs(), datamap); + final_data.OpTypeCount = op_type_count; + return final_data; +} + } // namespace tket diff --git a/tket/src/Circuit/DummyBox.cpp b/tket/src/Circuit/DummyBox.cpp new file mode 100644 index 0000000000..3b9c4f1a3c --- /dev/null +++ b/tket/src/Circuit/DummyBox.cpp @@ -0,0 +1,76 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "tket/Circuit/DummyBox.hpp" + +#include + +#include "Circuit/ResourceData.hpp" +#include "tket/Ops/OpJsonFactory.hpp" + +namespace tket { + +DummyBox::DummyBox( + unsigned n_qubits_, unsigned n_bits_, const ResourceData &resource_data_) + : Box(OpType::DummyBox), + n_qubits(n_qubits_), + n_bits(n_bits_), + resource_data(resource_data_) {} + +DummyBox::DummyBox(const DummyBox &other) + : Box(other), + n_qubits(other.n_qubits), + n_bits(other.n_bits), + resource_data(other.resource_data) {} + +bool DummyBox::is_equal(const Op &op_other) const { + const DummyBox &other = dynamic_cast(op_other); + if (id_ == other.get_id()) return true; + return resource_data == other.resource_data; +} + +unsigned DummyBox::get_n_qubits() const { return n_qubits; } +unsigned DummyBox::get_n_bits() const { return n_bits; } +ResourceData DummyBox::get_resource_data() const { return resource_data; } + +op_signature_t DummyBox::get_signature() const { + op_signature_t sig(n_qubits, EdgeType::Quantum); + op_signature_t bits(n_bits, EdgeType::Classical); + sig.insert(sig.end(), bits.begin(), bits.end()); + return sig; +} + +nlohmann::json DummyBox::to_json(const Op_ptr &op) { + const auto &box = static_cast(*op); + nlohmann::json j = core_box_json(box); + j["n_qubits"] = box.get_n_qubits(); + j["n_bits"] = box.get_n_bits(); + j["resource_data"] = box.get_resource_data(); + return j; +} + +Op_ptr DummyBox::from_json(const nlohmann::json &j) { + DummyBox box = DummyBox( + j.at("n_qubits").get(), j.at("n_bits").get(), + j.at("resource_data").get()); + return set_box_id( + box, + boost::lexical_cast(j.at("id").get())); +} + +REGISTER_OPFACTORY(DummyBox, DummyBox) + +void DummyBox::generate_circuit() const { throw DummyBoxNotDecomposable(); } + +} // namespace tket diff --git a/tket/src/Circuit/ResourceData.cpp b/tket/src/Circuit/ResourceData.cpp new file mode 100644 index 0000000000..f8e577dfa5 --- /dev/null +++ b/tket/src/Circuit/ResourceData.cpp @@ -0,0 +1,44 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "tket/Circuit/ResourceData.hpp" + +#include "tket/Utils/Json.hpp" + +namespace tket { + +bool ResourceData::operator==(const ResourceData& other) const { + return OpTypeCount == other.OpTypeCount && GateDepth == other.GateDepth && + OpTypeDepth == other.OpTypeDepth && + TwoQubitGateDepth == other.TwoQubitGateDepth; +} + +void to_json(nlohmann::json& j, const ResourceData& data) { + j["op_type_count"] = data.OpTypeCount; + j["gate_depth"] = data.GateDepth; + j["op_type_depth"] = data.OpTypeDepth; + j["two_qubit_gate_depth"] = data.TwoQubitGateDepth; +} + +void from_json(const nlohmann::json& j, ResourceData& data) { + data.OpTypeCount = + j.at("op_type_count").get>>(); + data.GateDepth = j.at("gate_depth").get>(); + data.OpTypeDepth = + j.at("op_type_depth").get>>(); + data.TwoQubitGateDepth = + j.at("two_qubit_gate_depth").get>(); +} + +} // namespace tket diff --git a/tket/src/Circuit/setters_and_getters.cpp b/tket/src/Circuit/setters_and_getters.cpp index 09141a5adb..0c4e9c3be7 100644 --- a/tket/src/Circuit/setters_and_getters.cpp +++ b/tket/src/Circuit/setters_and_getters.cpp @@ -72,7 +72,9 @@ void Circuit::assert_valid() const { // VertexVec Circuit::all_inputs() const { VertexVec ins = q_inputs(); VertexVec c_ins = c_inputs(); + VertexVec w_ins = w_inputs(); ins.insert(ins.end(), c_ins.begin(), c_ins.end()); + ins.insert(ins.end(), w_ins.begin(), w_ins.end()); return ins; } @@ -107,7 +109,9 @@ VertexVec Circuit::w_inputs() const { VertexVec Circuit::all_outputs() const { VertexVec outs = q_outputs(); VertexVec c_outs = c_outputs(); + VertexVec w_outs = w_outputs(); outs.insert(outs.end(), c_outs.begin(), c_outs.end()); + outs.insert(outs.end(), w_outs.begin(), w_outs.end()); return outs; } diff --git a/tket/src/OpType/OpTypeFunctions.cpp b/tket/src/OpType/OpTypeFunctions.cpp index 698b3768f8..c4cb701778 100644 --- a/tket/src/OpType/OpTypeFunctions.cpp +++ b/tket/src/OpType/OpTypeFunctions.cpp @@ -142,6 +142,16 @@ bool is_final_q_type(OpType optype) { return optype == OpType::Output || optype == OpType::Discard; } +bool is_initial_type(OpType optype) { + return optype == OpType::Input || optype == OpType::Create || + optype == OpType::ClInput || optype == OpType::WASMInput; +} + +bool is_final_type(OpType optype) { + return optype == OpType::Output || optype == OpType::Discard || + optype == OpType::ClOutput || optype == OpType::WASMOutput; +} + bool is_boundary_type(OpType optype) { return is_boundary_q_type(optype) || is_boundary_c_type(optype) || is_boundary_w_type(optype); @@ -188,7 +198,8 @@ bool is_box_type(OpType optype) { OpType::ProjectorAssertionBox, OpType::StabiliserAssertionBox, OpType::UnitaryTableauBox, - OpType::ToffoliBox}; + OpType::ToffoliBox, + OpType::DummyBox}; return find_in_set(optype, boxes); } diff --git a/tket/src/OpType/OpTypeInfo.cpp b/tket/src/OpType/OpTypeInfo.cpp index 5227e22937..8a73aa8c38 100644 --- a/tket/src/OpType/OpTypeInfo.cpp +++ b/tket/src/OpType/OpTypeInfo.cpp @@ -157,6 +157,7 @@ const std::map& optypeinfo() { {OpType::StabiliserAssertionBox, {"StabiliserAssertionBox", "StabiliserAssertionBox", {}, std::nullopt}}, {OpType::ToffoliBox, {"ToffoliBox", "ToffoliBox", {}, std::nullopt}}, + {OpType::DummyBox, {"DummyBox", "DummyBox", {}, std::nullopt}}, {OpType::ClassicalTransform, {"ClassicalTransform", "ClassicalTransform", {}, std::nullopt}}, {OpType::WASM, {"WASM", "WASM", {}, std::nullopt}}, diff --git a/tket/test/CMakeLists.txt b/tket/test/CMakeLists.txt index 1074497da3..d5ff0bfee7 100644 --- a/tket/test/CMakeLists.txt +++ b/tket/test/CMakeLists.txt @@ -119,6 +119,7 @@ add_executable(test-tket src/Circuit/test_DiagonalBox.cpp src/Circuit/test_ToffoliBox.cpp src/Circuit/test_ConjugationBox.cpp + src/Circuit/test_DummyBox.cpp src/test_UnitaryTableau.cpp src/test_ChoiMixTableau.cpp src/test_Diagonalisation.cpp diff --git a/tket/test/src/Circuit/test_DummyBox.cpp b/tket/test/src/Circuit/test_DummyBox.cpp new file mode 100644 index 0000000000..2763680853 --- /dev/null +++ b/tket/test/src/Circuit/test_DummyBox.cpp @@ -0,0 +1,55 @@ +// Copyright 2019-2023 Cambridge Quantum Computing +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include + +#include "tket/Circuit/Circuit.hpp" +#include "tket/Circuit/DummyBox.hpp" +#include "tket/Circuit/ResourceData.hpp" +namespace tket { + +SCENARIO("DummyBox") { + GIVEN("ResourceData") { + DummyBox dbox0( + 1, 0, + ResourceData{ + {{OpType::H, ResourceBounds(3, 4)}}, + ResourceBounds(2, 3), + {{OpType::H, ResourceBounds(3)}}, + ResourceBounds()}); + DummyBox dbox1( + 2, 0, + ResourceData{ + {{OpType::H, ResourceBounds(3, 4)}, + {OpType::CX, ResourceBounds(2, 8)}}, + ResourceBounds(2, 3), + {{OpType::CX, ResourceBounds(2, 8)}}, + ResourceBounds(4, 8)}); + Circuit c(2); + c.add_op(OpType::CX, {0, 1}); + c.add_box(dbox0, {0}); + c.add_box(dbox1, {0, 1}); + ResourceData data = c.get_resources(); + ResourceData expected{ + {{OpType::H, ResourceBounds(6, 8)}, + {OpType::CX, ResourceBounds(3, 9)}}, + ResourceBounds(5, 7), + {{OpType::H, ResourceBounds(3)}, + {OpType::CX, ResourceBounds(3, 9)}}, + ResourceBounds(5, 9)}; + CHECK(data == expected); + } +} + +} // namespace tket diff --git a/tket/test/src/test_json.cpp b/tket/test/src/test_json.cpp index 13849fcca9..91d576aaac 100644 --- a/tket/test/src/test_json.cpp +++ b/tket/test/src/test_json.cpp @@ -25,6 +25,7 @@ #include "tket/Circuit/Command.hpp" #include "tket/Circuit/ConjugationBox.hpp" #include "tket/Circuit/DiagonalBox.hpp" +#include "tket/Circuit/DummyBox.hpp" #include "tket/Circuit/Multiplexor.hpp" #include "tket/Circuit/PauliExpBoxes.hpp" #include "tket/Circuit/Simulation/CircuitSimulator.hpp" @@ -400,6 +401,23 @@ SCENARIO("Test Circuit serialization") { REQUIRE(t_b == tbox); } + GIVEN("DummyBox") { + ResourceData data{ + {{OpType::H, ResourceBounds(3, 4)}, + {OpType::CX, ResourceBounds(2, 8)}}, + ResourceBounds(2, 3), + {{OpType::CX, ResourceBounds(2, 8)}}, + ResourceBounds(4, 8)}; + DummyBox dbox(2, 0, data); + Circuit c(2); + c.add_box(dbox, {0, 1}); + nlohmann::json j_c = c; + Circuit c1 = j_c.get(); + const auto& dbox1 = + static_cast(*c1.get_commands()[0].get_op_ptr()); + REQUIRE(dbox == dbox1); + } + GIVEN("CustomGate") { Circuit setup(2); Sym a = SymTable::fresh_symbol("a"); From 7aed23d181ee1d1fabb687563781c9f5c5415443 Mon Sep 17 00:00:00 2001 From: Alec Edgington Date: Thu, 16 Nov 2023 10:10:29 +0000 Subject: [PATCH 30/36] Update docs and changelog. --- pytket/docs/changelog.rst | 4 ++-- pytket/docs/conf.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index e38e7c3d31..df505e864c 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -1,8 +1,8 @@ Changelog ========= -Unreleased ----------- +1.22.0 (November 2023) +---------------------- Minor new features: diff --git a/pytket/docs/conf.py b/pytket/docs/conf.py index 78ca420bae..5dbbd9b684 100644 --- a/pytket/docs/conf.py +++ b/pytket/docs/conf.py @@ -38,9 +38,9 @@ author = "Quantinuum" # The short X.Y version -version = "1.21" +version = "1.22" # The full version, including alpha/beta/rc tags -release = "1.21.0" +release = "1.22.0" # -- General configuration --------------------------------------------------- From 627e55e66b599a2e247e1d8b14e468ee243980b3 Mon Sep 17 00:00:00 2001 From: Alec Edgington Date: Thu, 16 Nov 2023 11:06:03 +0000 Subject: [PATCH 31/36] Add link to full changelog. --- pytket/docs/changelog.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index df505e864c..364f7d97a2 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -21,6 +21,8 @@ Fixes: length 2. * Fix incorrect controlled ``ConjugationBox`` handling. +`Full changelog `_ + 1.21.0 (October 2023) --------------------- From dfec5a73c6fd22a3ec351190196e57914cd34c3f Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Thu, 16 Nov 2023 13:33:52 +0000 Subject: [PATCH 32/36] [infra] Drop support for MacOS 11 (#1130) --- .github/workflows/release.yml | 14 +++++++------- conan-profiles/macos-11 | 8 -------- pytket/docs/changelog.rst | 4 ++++ 3 files changed, 11 insertions(+), 15 deletions(-) delete mode 100644 conan-profiles/macos-11 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index bf0b7b8b44..ef92819e26 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -73,7 +73,7 @@ jobs: build_macos_wheels: name: Build macos wheels - runs-on: macos-11 + runs-on: macos-12 strategy: matrix: python-version: ['3.9', '3.10', '3.11'] @@ -92,7 +92,7 @@ jobs: run: | conan profile detect DEFAULT_PROFILE_PATH=`conan profile path default` - PROFILE_PATH=./conan-profiles/macos-11 + PROFILE_PATH=./conan-profiles/macos-12 diff ${DEFAULT_PROFILE_PATH} ${PROFILE_PATH} || true cp ${PROFILE_PATH} ${DEFAULT_PROFILE_PATH} conan remote add tket-libs https://quantinuumsw.jfrog.io/artifactory/api/conan/tket1-libs --index 0 @@ -103,8 +103,8 @@ jobs: conan create recipes/pybind11 conan create recipes/pybind11_json/all --version 0.2.13 cd pytket - # Ensure wheels are compatible with MacOS 10.14 and later: - export WHEEL_PLAT_NAME=macosx_10_14_x86_64 + # Ensure wheels are compatible with MacOS 12.0 and later: + export WHEEL_PLAT_NAME=macosx_12_0_x86_64 pip install -U pip build delocate python -m build delocate-wheel -v -w "$GITHUB_WORKSPACE/wheelhouse/" "dist/pytket-"*".whl" @@ -149,8 +149,8 @@ jobs: conan create recipes/pybind11 conan create recipes/pybind11_json/all --version 0.2.13 cd pytket - # Ensure wheels are compatible with MacOS 11.0 and later: - export WHEEL_PLAT_NAME=macosx_11_0_arm64 + # Ensure wheels are compatible with MacOS 12.0 and later: + export WHEEL_PLAT_NAME=macosx_12_0_arm64 python${{ matrix.python-version }} -m pip install -U pip build delocate python${{ matrix.python-version }} -m build delocate-wheel -v -w "$GITHUB_WORKSPACE/wheelhouse/" "dist/pytket-"*".whl" @@ -268,7 +268,7 @@ jobs: needs: build_macos_wheels strategy: matrix: - os: ['macos-11', 'macos-12'] + os: ['macos-12', 'macos-13'] python-version: ['3.9', '3.10', '3.11'] runs-on: ${{ matrix.os }} steps: diff --git a/conan-profiles/macos-11 b/conan-profiles/macos-11 deleted file mode 100644 index a275dacb59..0000000000 --- a/conan-profiles/macos-11 +++ /dev/null @@ -1,8 +0,0 @@ -[settings] -arch=x86_64 -build_type=Release -compiler=apple-clang -compiler.cppstd=gnu17 -compiler.libcxx=libc++ -compiler.version=13 -os=Macos diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index 364f7d97a2..cc81a3dc73 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -21,6 +21,10 @@ Fixes: length 2. * Fix incorrect controlled ``ConjugationBox`` handling. +General: + +* Drop support for MacOS 11. + `Full changelog `_ 1.21.0 (October 2023) From 62b50eba937ce654b687f1687aabe22c41218a6b Mon Sep 17 00:00:00 2001 From: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> Date: Tue, 21 Nov 2023 12:49:46 +0000 Subject: [PATCH 33/36] [infra] Pin to pybind11-stubgen 2.3.6. (#1136) --- .github/workflows/build_and_test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 323c26c818..3cadc33dd5 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -396,7 +396,7 @@ jobs: if: matrix.os == 'macos-13-xlarge' && (github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch') run: | python${{ matrix.python-version }} -m pip install -U mypy - python${{ matrix.python-version }} -m pip install -U pybind11-stubgen + python${{ matrix.python-version }} -m pip install pybind11-stubgen==2.3.6 # https://github.com/CQCL/tket/issues/1135 cd pytket ./stub_generation/regenerate_stubs git diff --quiet pytket/_tket && echo "Stubs are up-to-date" || exit 1 # fail if stubs change after regeneration From 875b79d2c9a4c097a008a235dd46ab66586c0a6f Mon Sep 17 00:00:00 2001 From: CalMacCQ <93673602+CalMacCQ@users.noreply.github.com> Date: Tue, 21 Nov 2023 14:56:43 +0000 Subject: [PATCH 34/36] Update emulator info and fix typo (#1134) * update emulator info and fix typo * rename extensions_index.rst to extensions.rst --------- Co-authored-by: Alec Edgington <54802828+cqc-alec@users.noreply.github.com> --- pytket/docs/{extensions_index.rst => extensions.rst} | 2 +- pytket/docs/index.rst | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename pytket/docs/{extensions_index.rst => extensions.rst} (98%) diff --git a/pytket/docs/extensions_index.rst b/pytket/docs/extensions.rst similarity index 98% rename from pytket/docs/extensions_index.rst rename to pytket/docs/extensions.rst index 8c26c94475..3ca7c1a09f 100644 --- a/pytket/docs/extensions_index.rst +++ b/pytket/docs/extensions.rst @@ -63,7 +63,7 @@ Emulators `IBMQEmulatorBackend`_ - A backend which uses the `AerBackend `_ to emulate the behavior of IBMQBackend. `QuantinuumBackend `_ -- The QuantinuumBackend has two available emulators namely H1-1E and H1-2E. These are device specific emulators for the H1-1 and H1-2 devices. These emualtors run remotely on a server. +- The QuantinuumBackend has two available emulators namely H1-1E and H2-1E. These are device specific emulators for the H1-1 and H2-1 devices. These emulators run remotely on a server. Statevector Simulators ---------------------- diff --git a/pytket/docs/index.rst b/pytket/docs/index.rst index 9bbf64265f..1c1a953337 100644 --- a/pytket/docs/index.rst +++ b/pytket/docs/index.rst @@ -87,7 +87,7 @@ Licensed under the `Apache 2 License - extensions_index.rst + extensions.rst Example notebooks .. toctree:: From c33e23fd23772b5714553653d6d460a4d3cc42d3 Mon Sep 17 00:00:00 2001 From: cqc-melf <70640934+cqc-melf@users.noreply.github.com> Date: Tue, 21 Nov 2023 16:59:59 +0000 Subject: [PATCH 35/36] add link to tket website (#1137) --- pytket/docs/index.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/pytket/docs/index.rst b/pytket/docs/index.rst index 1c1a953337..2a5b9e1f85 100644 --- a/pytket/docs/index.rst +++ b/pytket/docs/index.rst @@ -86,6 +86,7 @@ Licensed under the `Apache 2 License Manual extensions.rst Example notebooks From 3839ad60e4c08934cc73dff39a77e9aed58fae97 Mon Sep 17 00:00:00 2001 From: Alec Edgington Date: Wed, 22 Nov 2023 09:41:43 +0000 Subject: [PATCH 36/36] Fix link to full changelog. --- pytket/docs/changelog.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pytket/docs/changelog.rst b/pytket/docs/changelog.rst index cc81a3dc73..03a0a465c2 100644 --- a/pytket/docs/changelog.rst +++ b/pytket/docs/changelog.rst @@ -25,7 +25,7 @@ General: * Drop support for MacOS 11. -`Full changelog `_ +`Full changelog `_ 1.21.0 (October 2023) ---------------------