Repository: Interlin-q/Interlin-q (language: python)

Issue:
Change the Clock class to a singleton.
The Clock class is shared and only one clock can exist at a time. Thus, it makes more sense to use the Singleton design pattern.


Discussion / hints:

Fix patch:
diff --git a/examples/distributed_quantum_phase_estimation_notebook.ipynb b/examples/distributed_quantum_phase_estimation_notebook.ipynb
index 31769da..15ab654 100644
--- a/examples/distributed_quantum_phase_estimation_notebook.ipynb
+++ b/examples/distributed_quantum_phase_estimation_notebook.ipynb
@@ -1,7 +1,6 @@
 {
  "cells": [
   {
-   "attachments": {},
    "cell_type": "markdown",
    "metadata": {},
    "source": [
@@ -102,7 +101,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 1,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -181,7 +180,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 7,
+   "execution_count": 2,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -221,7 +220,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 3,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -351,7 +350,7 @@
     "    decimal_value = 0\n",
     "    for computing_host_id in computing_host_ids:\n",
     "        i = 0\n",
-    "        bits = results[computing_host_id]['bits']\n",
+    "        bits = results[computing_host_id]['val']\n",
     "        for bit_id, bit in bits.items():\n",
     "            print(\"{0}: {1}\".format(bit_id, bit))\n",
     "            decimal_value += (2 ** i) * bit\n",
@@ -438,11 +437,8 @@
     "    network.delay = 0\n",
     "    network.start()\n",
     "\n",
-    "    clock = Clock()\n",
-    "\n",
     "    controller_host = ControllerHost(\n",
     "        host_id=\"host_1\",\n",
-    "        clock=clock,\n",
     "    )\n",
     "\n",
     "    computing_hosts, q_map = controller_host.create_distributed_network(\n",
@@ -479,6 +475,13 @@
     "if __name__ == '__main__':\n",
     "    main()"
    ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
   }
  ],
  "metadata": {
@@ -497,9 +500,9 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.6.3"
+   "version": "3.8.10"
   }
  },
  "nbformat": 4,
  "nbformat_minor": 2
-}
\ No newline at end of file
+}
diff --git a/examples/phase_kickback.py b/examples/phase_kickback.py
index 1342c7d..334489f 100644
--- a/examples/phase_kickback.py
+++ b/examples/phase_kickback.py
@@ -16,11 +16,8 @@ def main():
     qutip = QuTipBackend()
     network.start(backend=qutip)
 
-    clock = Clock()
-
     controller_host = ControllerHost(
         host_id="host_1",
-        clock=clock,
         backend=qutip
     )
     computing_hosts, q_map = controller_host \
diff --git a/examples/template.py b/examples/template.py
index 29043b9..4f9f628 100644
--- a/examples/template.py
+++ b/examples/template.py
@@ -1,13 +1,12 @@
 import sys
+
 sys.path.append("../")
 
 from qunetsim.components import Network
 from qunetsim.objects import Logger
 
 from interlinq import (ControllerHost, Constants, Clock,
-Circuit, Layer, ComputingHost, Operation)
-
-import numpy as np
+                       Circuit, Layer, Operation)
 
 Logger.DISABLED = True
 
@@ -102,11 +101,8 @@ def main():
     network.delay = 0
     network.start()
 
-    clock = Clock()
-
     controller_host = ControllerHost(
         host_id="host_1",
-        clock=clock,
     )
 
     computing_hosts, q_map = controller_host.create_distributed_network(
@@ -125,7 +121,7 @@ def main():
         t = host.run_protocol(computing_host_protocol)
         threads.append(t)
 
-    for thread in threads:    
+    for thread in threads:
         thread.join()
     network.stop(True)
     exit()
diff --git a/examples/vqe-examples/N-QPUs-VQE-manual-Vertical.ipynb b/examples/vqe-examples/N-QPUs-VQE-manual-Vertical.ipynb
index caaa08a..75d87e1 100644
--- a/examples/vqe-examples/N-QPUs-VQE-manual-Vertical.ipynb
+++ b/examples/vqe-examples/N-QPUs-VQE-manual-Vertical.ipynb
@@ -541,7 +541,7 @@
     "    network.start()\n",
     "\n",
     "    # Initialize the synchronization clock\n",
-    "    clock = Clock()\n",
+    "    clock = Clock.get_instance()\n",
     "\n",
     "    # Initialize the statevector backend\n",
     "    eqsn = EQSNBackend()\n",
@@ -549,7 +549,6 @@
     "    # Initialize the controller host with the given ID\n",
     "    controller_host = ControllerHost(\n",
     "        host_id=\"host_1\",\n",
-    "        clock=clock, \n",
     "        backend=eqsn\n",
     "    )\n",
     "\n",
@@ -628,9 +627,9 @@
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-26 00:51:37,895: Host QPU_0 started processing\n",
-      "2021-06-26 00:51:37,896: Host QPU_1 started processing\n",
-      "2021-06-26 00:51:37,897: Host host_1 started processing\n"
+      "2021-07-18 00:58:21,356: Host QPU_0 started processing\n",
+      "2021-07-18 00:58:21,356: Host QPU_1 started processing\n",
+      "2021-07-18 00:58:21,357: Host host_1 started processing\n"
      ]
     }
    ],
@@ -648,77 +647,77 @@
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-26 00:51:38,508: host_1 sends BROADCAST message\n",
-      "2021-06-26 00:51:38,597: sending ACK:1 from QPU_1 to host_1\n",
-      "2021-06-26 00:51:38,628: sending ACK:1 from QPU_0 to host_1\n",
-      "2021-06-26 00:51:38,679: QPU_1 received {\"QPU_0\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SEND_ENT\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_1\", \"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"MEASURE\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": [\"4b63aaee-07eb-4bbf-b330-82eed537a158\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"4b63aaee-07eb-4bbf-b330-82eed537a158\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 3}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"4c8ced87-84a7-4ab4-bebe-e02283102b31\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 8}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_0_1\"], \"cids\": [\"4c8ced87-84a7-4ab4-bebe-e02283102b31\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 9}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"REC_ENT\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"REC_ENT\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"113e8c38-7176-4ace-8e6f-dcc83410f97b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"60efda58-4b09-4a9d-aebd-93f963c23511\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": [\"113e8c38-7176-4ace-8e6f-dcc83410f97b\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 15}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": [\"60efda58-4b09-4a9d-aebd-93f963c23511\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 15}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\", \"q_0_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 16}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 16}, {\"name\": \"SINGLE\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 17}, {\"name\": \"SINGLE\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 17}, {\"name\": \"MEASURE\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": [\"dad37e03-b080-4ef6-9442-26ae3f2d3eba\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 18}, {\"name\": \"MEASURE\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": [\"349a091d-ef58-4523-90c5-042d9ce46cd7\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 18}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"dad37e03-b080-4ef6-9442-26ae3f2d3eba\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"349a091d-ef58-4523-90c5-042d9ce46cd7\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}], \"QPU_1\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"REC_ENT\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 0}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"4b63aaee-07eb-4bbf-b330-82eed537a158\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 3}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": [\"4b63aaee-07eb-4bbf-b330-82eed537a158\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 4}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\", \"q_1_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 5}, {\"name\": \"SINGLE\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}, {\"name\": \"MEASURE\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": [\"4c8ced87-84a7-4ab4-bebe-e02283102b31\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 7}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"4c8ced87-84a7-4ab4-bebe-e02283102b31\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 8}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 11}, {\"name\": \"SEND_ENT\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"SEND_ENT\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 12}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_1\", \"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 12}, {\"name\": \"MEASURE\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": [\"113e8c38-7176-4ace-8e6f-dcc83410f97b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 13}, {\"name\": \"MEASURE\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": [\"60efda58-4b09-4a9d-aebd-93f963c23511\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 13}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"113e8c38-7176-4ace-8e6f-dcc83410f97b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"60efda58-4b09-4a9d-aebd-93f963c23511\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"dad37e03-b080-4ef6-9442-26ae3f2d3eba\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"349a091d-ef58-4523-90c5-042d9ce46cd7\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_1_0\"], \"cids\": [\"dad37e03-b080-4ef6-9442-26ae3f2d3eba\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 20}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_1_1\"], \"cids\": [\"349a091d-ef58-4523-90c5-042d9ce46cd7\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 20}]} with sequence number 0\n"
+      "2021-07-18 00:58:22,503: host_1 sends BROADCAST message\n",
+      "2021-07-18 00:58:22,514: sending ACK:1 from QPU_1 to host_1\n",
+      "2021-07-18 00:58:22,531: QPU_1 received {\"QPU_0\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SEND_ENT\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_1\", \"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"MEASURE\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": [\"67a4305a-e872-4be0-ad16-db27de514225\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"67a4305a-e872-4be0-ad16-db27de514225\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 3}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"38e9af67-3bca-43a6-ac53-a66c636c168a\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 8}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_0_1\"], \"cids\": [\"38e9af67-3bca-43a6-ac53-a66c636c168a\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 9}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"REC_ENT\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"REC_ENT\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"dfc35f27-23f1-4661-841c-a96296252706\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"2525752b-f83f-43ae-9adc-dcbc30d0f7cf\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": [\"dfc35f27-23f1-4661-841c-a96296252706\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 15}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": [\"2525752b-f83f-43ae-9adc-dcbc30d0f7cf\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 15}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\", \"q_0_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 16}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 16}, {\"name\": \"SINGLE\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 17}, {\"name\": \"SINGLE\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 17}, {\"name\": \"MEASURE\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": [\"9234fdad-a62d-4847-b41d-9faa3e17bc1b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 18}, {\"name\": \"MEASURE\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": [\"0f986d89-5b88-4cc1-b66f-4fce8e996cc3\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 18}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"9234fdad-a62d-4847-b41d-9faa3e17bc1b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"0f986d89-5b88-4cc1-b66f-4fce8e996cc3\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}], \"QPU_1\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"REC_ENT\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 0}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"67a4305a-e872-4be0-ad16-db27de514225\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 3}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": [\"67a4305a-e872-4be0-ad16-db27de514225\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 4}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\", \"q_1_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 5}, {\"name\": \"SINGLE\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}, {\"name\": \"MEASURE\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": [\"38e9af67-3bca-43a6-ac53-a66c636c168a\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 7}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"38e9af67-3bca-43a6-ac53-a66c636c168a\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 8}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 11}, {\"name\": \"SEND_ENT\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"SEND_ENT\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 12}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_1\", \"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 12}, {\"name\": \"MEASURE\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": [\"dfc35f27-23f1-4661-841c-a96296252706\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 13}, {\"name\": \"MEASURE\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": [\"2525752b-f83f-43ae-9adc-dcbc30d0f7cf\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 13}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"dfc35f27-23f1-4661-841c-a96296252706\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"2525752b-f83f-43ae-9adc-dcbc30d0f7cf\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"9234fdad-a62d-4847-b41d-9faa3e17bc1b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"0f986d89-5b88-4cc1-b66f-4fce8e996cc3\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_1_0\"], \"cids\": [\"9234fdad-a62d-4847-b41d-9faa3e17bc1b\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 20}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_1_1\"], \"cids\": [\"0f986d89-5b88-4cc1-b66f-4fce8e996cc3\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 20}]} with sequence number 0\n"
      ]
     },
     {
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-26 00:51:38,695: host_1 received ACK from QPU_1 with sequence number 0\n",
-      "2021-06-26 00:51:38,706: QPU_0 received {\"QPU_0\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SEND_ENT\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_1\", \"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"MEASURE\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": [\"4b63aaee-07eb-4bbf-b330-82eed537a158\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"4b63aaee-07eb-4bbf-b330-82eed537a158\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 3}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"4c8ced87-84a7-4ab4-bebe-e02283102b31\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 8}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_0_1\"], \"cids\": [\"4c8ced87-84a7-4ab4-bebe-e02283102b31\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 9}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"REC_ENT\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"REC_ENT\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"113e8c38-7176-4ace-8e6f-dcc83410f97b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"60efda58-4b09-4a9d-aebd-93f963c23511\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": [\"113e8c38-7176-4ace-8e6f-dcc83410f97b\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 15}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": [\"60efda58-4b09-4a9d-aebd-93f963c23511\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 15}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\", \"q_0_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 16}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 16}, {\"name\": \"SINGLE\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 17}, {\"name\": \"SINGLE\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 17}, {\"name\": \"MEASURE\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": [\"dad37e03-b080-4ef6-9442-26ae3f2d3eba\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 18}, {\"name\": \"MEASURE\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": [\"349a091d-ef58-4523-90c5-042d9ce46cd7\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 18}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"dad37e03-b080-4ef6-9442-26ae3f2d3eba\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"349a091d-ef58-4523-90c5-042d9ce46cd7\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}], \"QPU_1\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"REC_ENT\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 0}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"4b63aaee-07eb-4bbf-b330-82eed537a158\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 3}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": [\"4b63aaee-07eb-4bbf-b330-82eed537a158\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 4}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\", \"q_1_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 5}, {\"name\": \"SINGLE\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}, {\"name\": \"MEASURE\", \"qids\": [\"81d243de-8856-43d7-9254-9711ea64ed1f\"], \"cids\": [\"4c8ced87-84a7-4ab4-bebe-e02283102b31\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 7}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"4c8ced87-84a7-4ab4-bebe-e02283102b31\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 8}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 11}, {\"name\": \"SEND_ENT\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"SEND_ENT\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 12}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_1\", \"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 12}, {\"name\": \"MEASURE\", \"qids\": [\"251092bb-ea17-4dc9-8b37-659c5b333564\"], \"cids\": [\"113e8c38-7176-4ace-8e6f-dcc83410f97b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 13}, {\"name\": \"MEASURE\", \"qids\": [\"dcfef78b-6a49-44e1-b396-e9be1d88d55c\"], \"cids\": [\"60efda58-4b09-4a9d-aebd-93f963c23511\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 13}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"113e8c38-7176-4ace-8e6f-dcc83410f97b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"60efda58-4b09-4a9d-aebd-93f963c23511\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"dad37e03-b080-4ef6-9442-26ae3f2d3eba\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"349a091d-ef58-4523-90c5-042d9ce46cd7\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_1_0\"], \"cids\": [\"dad37e03-b080-4ef6-9442-26ae3f2d3eba\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 20}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_1_1\"], \"cids\": [\"349a091d-ef58-4523-90c5-042d9ce46cd7\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 20}]} with sequence number 0\n"
+      "2021-07-18 00:58:22,536: sending ACK:1 from QPU_0 to host_1\n",
+      "2021-07-18 00:58:22,553: QPU_1 sends CLASSICAL to host_1 with sequence 0\n",
+      "2021-07-18 00:58:22,584: host_1 received ACK from QPU_1 with sequence number 0\n",
+      "2021-07-18 00:58:22,647: QPU_0 received {\"QPU_0\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SEND_ENT\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_1\", \"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"MEASURE\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": [\"67a4305a-e872-4be0-ad16-db27de514225\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"67a4305a-e872-4be0-ad16-db27de514225\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 3}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"38e9af67-3bca-43a6-ac53-a66c636c168a\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 8}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_0_1\"], \"cids\": [\"38e9af67-3bca-43a6-ac53-a66c636c168a\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 9}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"REC_ENT\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"REC_ENT\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"dfc35f27-23f1-4661-841c-a96296252706\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"2525752b-f83f-43ae-9adc-dcbc30d0f7cf\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": [\"dfc35f27-23f1-4661-841c-a96296252706\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 15}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": [\"2525752b-f83f-43ae-9adc-dcbc30d0f7cf\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 15}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\", \"q_0_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 16}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 16}, {\"name\": \"SINGLE\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 17}, {\"name\": \"SINGLE\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 17}, {\"name\": \"MEASURE\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": [\"9234fdad-a62d-4847-b41d-9faa3e17bc1b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 18}, {\"name\": \"MEASURE\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": [\"0f986d89-5b88-4cc1-b66f-4fce8e996cc3\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 18}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"9234fdad-a62d-4847-b41d-9faa3e17bc1b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"0f986d89-5b88-4cc1-b66f-4fce8e996cc3\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\", \"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}], \"QPU_1\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"REC_ENT\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 0}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"67a4305a-e872-4be0-ad16-db27de514225\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 3}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": [\"67a4305a-e872-4be0-ad16-db27de514225\"], \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 4}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\", \"q_1_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 5}, {\"name\": \"SINGLE\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": null, \"gate\": \"H\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}, {\"name\": \"MEASURE\", \"qids\": [\"13373bb7-6cdf-42c2-bec0-a084c6182c78\"], \"cids\": [\"38e9af67-3bca-43a6-ac53-a66c636c168a\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 7}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"38e9af67-3bca-43a6-ac53-a66c636c168a\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 8}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 10}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 11}, {\"name\": \"SEND_ENT\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"SEND_ENT\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": true, \"layer_end\": 11}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 12}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_1\", \"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 12}, {\"name\": \"MEASURE\", \"qids\": [\"5cd20ecb-e98c-43a7-a9dd-649f7a695ab8\"], \"cids\": [\"dfc35f27-23f1-4661-841c-a96296252706\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 13}, {\"name\": \"MEASURE\", \"qids\": [\"8ccedf09-bb61-4c12-884a-73f3b6311e3d\"], \"cids\": [\"2525752b-f83f-43ae-9adc-dcbc30d0f7cf\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 13}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"dfc35f27-23f1-4661-841c-a96296252706\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"SEND_CLASSICAL\", \"qids\": null, \"cids\": [\"2525752b-f83f-43ae-9adc-dcbc30d0f7cf\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 14}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"9234fdad-a62d-4847-b41d-9faa3e17bc1b\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"REC_CLASSICAL\", \"qids\": null, \"cids\": [\"0f986d89-5b88-4cc1-b66f-4fce8e996cc3\"], \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\", \"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 19}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_1_0\"], \"cids\": [\"9234fdad-a62d-4847-b41d-9faa3e17bc1b\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 20}, {\"name\": \"CLASSICAL_CTRL_GATE\", \"qids\": [\"q_1_1\"], \"cids\": [\"0f986d89-5b88-4cc1-b66f-4fce8e996cc3\"], \"gate\": \"Z\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 20}]} with sequence number 0\n"
      ]
     },
     {
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-26 00:51:38,706: QPU_0 sends CLASSICAL to host_1 with sequence 0\n",
-      "2021-06-26 00:51:38,707: QPU_1 sends CLASSICAL to host_1 with sequence 0\n",
-      "2021-06-26 00:51:38,708: host_1 received ACK from QPU_0 with sequence number 0\n",
-      "2021-06-26 00:51:38,710: QPU_0 awaits classical ACK from host_1 with sequence 0\n",
-      "2021-06-26 00:51:38,711: sending ACK:1 from host_1 to QPU_0\n",
-      "2021-06-26 00:51:38,711: QPU_1 awaits classical ACK from host_1 with sequence 0\n",
-      "2021-06-26 00:51:38,712: sending ACK:1 from host_1 to QPU_1\n",
-      "2021-06-26 00:51:38,713: host_1 received ACK with sequence number 0\n",
-      "2021-06-26 00:51:38,714: QPU_0 received ACK from host_1 with sequence number 0\n",
-      "2021-06-26 00:51:38,715: host_1 received ACK with sequence number 0\n",
-      "2021-06-26 00:51:38,722: QPU_1 received ACK from host_1 with sequence number 0\n",
-      "2021-06-26 00:51:39,846: QPU_0 sends EPR to QPU_1\n",
-      "2021-06-26 00:51:39,858: QPU_0 awaits EPR ACK from QPU_1 with sequence 0\n",
-      "2021-06-26 00:51:40,533: sending ACK:1 from QPU_1 to QPU_0\n",
-      "2021-06-26 00:51:40,585: QPU_0 received ACK from QPU_1 with sequence number 0\n",
-      "2021-06-26 00:51:42,436: QPU_0 sends CLASSICAL to QPU_1 with sequence 1\n",
-      "2021-06-26 00:51:42,442: QPU_0 awaits classical ACK from QPU_1 with sequence 1\n",
-      "2021-06-26 00:51:42,448: sending ACK:2 from QPU_1 to QPU_0\n",
-      "2021-06-26 00:51:42,464: QPU_1 received 0 with sequence number 1\n",
-      "2021-06-26 00:51:42,476: QPU_0 received ACK from QPU_1 with sequence number 1\n",
-      "2021-06-26 00:51:43,631: QPU_1 sends CLASSICAL to QPU_0 with sequence 0\n",
-      "2021-06-26 00:51:43,653: QPU_1 awaits classical ACK from QPU_0 with sequence 0\n",
-      "2021-06-26 00:51:43,695: sending ACK:1 from QPU_0 to QPU_1\n",
-      "2021-06-26 00:51:43,696: QPU_0 received 0 with sequence number 0\n",
-      "2021-06-26 00:51:43,718: QPU_1 received ACK from QPU_0 with sequence number 0\n",
-      "2021-06-26 00:51:43,767: QPU_1 sends EPR to QPU_0\n",
-      "2021-06-26 00:51:43,793: QPU_1 awaits EPR ACK from QPU_0 with sequence 1\n",
-      "2021-06-26 00:51:44,568: sending ACK:2 from QPU_0 to QPU_1\n",
-      "2021-06-26 00:51:44,631: QPU_1 received ACK from QPU_0 with sequence number 1\n",
-      "2021-06-26 00:51:44,657: QPU_1 sends EPR to QPU_0\n",
-      "2021-06-26 00:51:44,673: QPU_1 awaits EPR ACK from QPU_0 with sequence 2\n",
-      "2021-06-26 00:51:45,366: sending ACK:3 from QPU_0 to QPU_1\n",
-      "2021-06-26 00:51:45,413: QPU_1 received ACK from QPU_0 with sequence number 2\n",
-      "2021-06-26 00:51:47,664: QPU_1 sends CLASSICAL to QPU_0 with sequence 3\n",
-      "2021-06-26 00:51:47,716: QPU_1 awaits classical ACK from QPU_0 with sequence 3\n",
-      "2021-06-26 00:51:47,768: sending ACK:4 from QPU_0 to QPU_1\n",
-      "2021-06-26 00:51:47,806: QPU_0 received 0 with sequence number 3\n",
-      "2021-06-26 00:51:47,837: QPU_1 received ACK from QPU_0 with sequence number 3\n",
-      "2021-06-26 00:51:47,879: QPU_1 sends CLASSICAL to QPU_0 with sequence 4\n",
-      "2021-06-26 00:51:47,905: QPU_1 awaits classical ACK from QPU_0 with sequence 4\n",
-      "2021-06-26 00:51:47,911: sending ACK:5 from QPU_0 to QPU_1\n",
-      "2021-06-26 00:51:47,990: QPU_0 received 1 with sequence number 4\n",
-      "2021-06-26 00:51:48,005: QPU_1 received ACK from QPU_0 with sequence number 4\n",
-      "2021-06-26 00:51:48,847: QPU_0 sends CLASSICAL to QPU_1 with sequence 2\n",
-      "2021-06-26 00:51:48,858: QPU_0 awaits classical ACK from QPU_1 with sequence 2\n",
-      "2021-06-26 00:51:48,884: sending ACK:3 from QPU_1 to QPU_0\n",
-      "2021-06-26 00:51:48,952: QPU_1 received 0 with sequence number 2\n",
-      "2021-06-26 00:51:48,978: QPU_0 received ACK from QPU_1 with sequence number 2\n",
-      "2021-06-26 00:51:49,010: QPU_0 sends CLASSICAL to QPU_1 with sequence 3\n",
-      "2021-06-26 00:51:49,057: QPU_0 awaits classical ACK from QPU_1 with sequence 3\n",
-      "2021-06-26 00:51:49,074: sending ACK:4 from QPU_1 to QPU_0\n",
-      "2021-06-26 00:51:49,101: QPU_1 received 1 with sequence number 3\n",
-      "2021-06-26 00:51:49,112: QPU_0 received ACK from QPU_1 with sequence number 3\n"
+      "2021-07-18 00:58:22,647: QPU_0 sends CLASSICAL to host_1 with sequence 0\n",
+      "2021-07-18 00:58:22,648: host_1 received ACK from QPU_0 with sequence number 0\n",
+      "2021-07-18 00:58:22,649: QPU_1 awaits classical ACK from host_1 with sequence 0\n",
+      "2021-07-18 00:58:22,650: sending ACK:1 from host_1 to QPU_1\n",
+      "2021-07-18 00:58:22,652: QPU_0 awaits classical ACK from host_1 with sequence 0\n",
+      "2021-07-18 00:58:22,655: host_1 received ACK with sequence number 0\n",
+      "2021-07-18 00:58:22,656: QPU_1 received ACK from host_1 with sequence number 0\n",
+      "2021-07-18 00:58:22,661: sending ACK:1 from host_1 to QPU_0\n",
+      "2021-07-18 00:58:22,661: host_1 received ACK with sequence number 0\n",
+      "2021-07-18 00:58:22,670: QPU_0 received ACK from host_1 with sequence number 0\n",
+      "2021-07-18 00:58:23,783: QPU_0 sends EPR to QPU_1\n",
+      "2021-07-18 00:58:23,816: QPU_0 awaits EPR ACK from QPU_1 with sequence 0\n",
+      "2021-07-18 00:58:24,593: sending ACK:1 from QPU_1 to QPU_0\n",
+      "2021-07-18 00:58:24,635: QPU_0 received ACK from QPU_1 with sequence number 0\n",
+      "2021-07-18 00:58:26,649: QPU_0 sends CLASSICAL to QPU_1 with sequence 1\n",
+      "2021-07-18 00:58:26,691: QPU_0 awaits classical ACK from QPU_1 with sequence 1\n",
+      "2021-07-18 00:58:26,718: sending ACK:2 from QPU_1 to QPU_0\n",
+      "2021-07-18 00:58:26,729: QPU_1 received 1 with sequence number 1\n",
+      "2021-07-18 00:58:26,756: QPU_0 received ACK from QPU_1 with sequence number 1\n",
+      "2021-07-18 00:58:27,954: QPU_1 sends CLASSICAL to QPU_0 with sequence 0\n",
+      "2021-07-18 00:58:27,970: QPU_1 awaits classical ACK from QPU_0 with sequence 0\n",
+      "2021-07-18 00:58:27,997: sending ACK:1 from QPU_0 to QPU_1\n",
+      "2021-07-18 00:58:28,019: QPU_0 received 0 with sequence number 0\n",
+      "2021-07-18 00:58:28,039: QPU_1 received ACK from QPU_0 with sequence number 0\n",
+      "2021-07-18 00:58:28,121: QPU_1 sends EPR to QPU_0\n",
+      "2021-07-18 00:58:28,137: QPU_1 awaits EPR ACK from QPU_0 with sequence 1\n",
+      "2021-07-18 00:58:28,950: sending ACK:2 from QPU_0 to QPU_1\n",
+      "2021-07-18 00:58:28,982: QPU_1 received ACK from QPU_0 with sequence number 1\n",
+      "2021-07-18 00:58:29,019: QPU_1 sends EPR to QPU_0\n",
+      "2021-07-18 00:58:29,061: QPU_1 awaits EPR ACK from QPU_0 with sequence 2\n",
+      "2021-07-18 00:58:29,870: sending ACK:3 from QPU_0 to QPU_1\n",
+      "2021-07-18 00:58:29,933: QPU_1 received ACK from QPU_0 with sequence number 2\n",
+      "2021-07-18 00:58:32,165: QPU_1 sends CLASSICAL to QPU_0 with sequence 3\n",
+      "2021-07-18 00:58:32,217: QPU_1 awaits classical ACK from QPU_0 with sequence 3\n",
+      "2021-07-18 00:58:32,228: sending ACK:4 from QPU_0 to QPU_1\n",
+      "2021-07-18 00:58:32,286: QPU_0 received 1 with sequence number 3\n",
+      "2021-07-18 00:58:32,323: QPU_1 received ACK from QPU_0 with sequence number 3\n",
+      "2021-07-18 00:58:32,375: QPU_1 sends CLASSICAL to QPU_0 with sequence 4\n",
+      "2021-07-18 00:58:32,412: QPU_1 awaits classical ACK from QPU_0 with sequence 4\n",
+      "2021-07-18 00:58:32,438: sending ACK:5 from QPU_0 to QPU_1\n",
+      "2021-07-18 00:58:32,465: QPU_0 received 0 with sequence number 4\n",
+      "2021-07-18 00:58:32,491: QPU_1 received ACK from QPU_0 with sequence number 4\n",
+      "2021-07-18 00:58:33,412: QPU_0 sends CLASSICAL to QPU_1 with sequence 2\n",
+      "2021-07-18 00:58:33,419: QPU_0 awaits classical ACK from QPU_1 with sequence 2\n",
+      "2021-07-18 00:58:33,419: sending ACK:3 from QPU_1 to QPU_0\n",
+      "2021-07-18 00:58:33,503: QPU_1 received 1 with sequence number 2\n",
+      "2021-07-18 00:58:33,530: QPU_0 received ACK from QPU_1 with sequence number 2\n",
+      "2021-07-18 00:58:33,674: QPU_0 sends CLASSICAL to QPU_1 with sequence 3\n",
+      "2021-07-18 00:58:33,675: QPU_0 awaits classical ACK from QPU_1 with sequence 3\n",
+      "2021-07-18 00:58:33,717: sending ACK:4 from QPU_1 to QPU_0\n",
+      "2021-07-18 00:58:33,733: QPU_1 received 0 with sequence number 3\n",
+      "2021-07-18 00:58:33,744: QPU_0 received ACK from QPU_1 with sequence number 3\n"
      ]
     }
    ],
@@ -873,13 +872,12 @@
     "    network.delay = 0\n",
     "    network.start()\n",
     "\n",
-    "    clock = Clock()\n",
+    "    Clock.reset_clock()\n",
     "\n",
     "    eqsn = EQSNBackend()\n",
     "\n",
     "    controller_host = ControllerHost(\n",
     "        host_id=\"host_1\",\n",
-    "        clock=clock,\n",
     "        backend=eqsn\n",
     "    )\n",
     "\n",
@@ -1284,7 +1282,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.8.5"
+   "version": "3.8.10"
   }
  },
  "nbformat": 4,
diff --git a/examples/vqe-examples/N-QPUs-VQE-networking-Horizontal.ipynb b/examples/vqe-examples/N-QPUs-VQE-networking-Horizontal.ipynb
index 344e078..1b6f529 100644
--- a/examples/vqe-examples/N-QPUs-VQE-networking-Horizontal.ipynb
+++ b/examples/vqe-examples/N-QPUs-VQE-networking-Horizontal.ipynb
@@ -38,9 +38,6 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "%load_ext autoreload\n",
-    "%autoreload 2\n",
-    "\n",
     "# Basic Libraries\n",
     "import sys\n",
     "import numpy as np\n",
@@ -519,7 +516,7 @@
     "    network.start()\n",
     "\n",
     "    # Initialize the synchronization clock\n",
-    "    clock = Clock()\n",
+    "    clock = Clock.get_instance()\n",
     "\n",
     "    # Initialize the statevector backend\n",
     "    eqsn = EQSNBackend()\n",
@@ -527,7 +524,6 @@
     "    # Initialize the controller host with the given ID\n",
     "    controller_host = ControllerHost(\n",
     "        host_id=\"host_1\",\n",
-    "        clock=clock, \n",
     "        backend=eqsn\n",
     "    )\n",
     "\n",
@@ -607,9 +603,9 @@
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-25 23:45:23,880: Host QPU_0 started processing\n",
-      "2021-06-25 23:45:23,881: Host QPU_1 started processing\n",
-      "2021-06-25 23:45:23,882: Host host_1 started processing\n"
+      "2021-07-18 00:56:33,120: Host QPU_0 started processing\n",
+      "2021-07-18 00:56:33,122: Host QPU_1 started processing\n",
+      "2021-07-18 00:56:33,123: Host host_1 started processing\n"
      ]
     }
    ],
@@ -627,29 +623,29 @@
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-25 23:45:24,005: host_1 sends BROADCAST message\n",
-      "2021-06-25 23:45:24,100: sending ACK:1 from QPU_1 to host_1\n",
-      "2021-06-25 23:45:24,126: QPU_1 received {\"QPU_0\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_0_0\", \"q_0_1\", \"q_0_2\", \"q_0_3\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_2\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_2\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_3\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_2\", \"q_0_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_2\", \"q_0_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_3\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}], \"QPU_1\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_1_0\", \"q_1_1\", \"q_1_2\", \"q_1_3\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_2\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_2\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_3\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_2\", \"q_1_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_2\", \"q_1_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_3\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}]} with sequence number 0\n",
-      "2021-06-25 23:45:24,132: QPU_1 sends CLASSICAL to host_1 with sequence 0\n",
-      "2021-06-25 23:45:24,142: sending ACK:1 from QPU_0 to host_1\n",
-      "2021-06-25 23:45:24,142: host_1 received ACK from QPU_1 with sequence number 0\n",
-      "2021-06-25 23:45:24,195: QPU_1 awaits classical ACK from host_1 with sequence 0\n",
-      "2021-06-25 23:45:24,212: sending ACK:1 from host_1 to QPU_1\n",
-      "2021-06-25 23:45:24,224: QPU_0 received {\"QPU_0\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_0_0\", \"q_0_1\", \"q_0_2\", \"q_0_3\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_2\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_2\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_3\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_2\", \"q_0_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_2\", \"q_0_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_3\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}], \"QPU_1\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_1_0\", \"q_1_1\", \"q_1_2\", \"q_1_3\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_2\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_2\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_3\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_2\", \"q_1_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_2\", \"q_1_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_3\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}]} with sequence number 0\n"
+      "2021-07-18 00:56:34,020: host_1 sends BROADCAST message\n",
+      "2021-07-18 00:56:34,120: sending ACK:1 from QPU_1 to host_1\n",
+      "2021-07-18 00:56:34,152: sending ACK:1 from QPU_0 to host_1\n",
+      "2021-07-18 00:56:34,167: host_1 received ACK from QPU_1 with sequence number 0\n",
+      "2021-07-18 00:56:34,173: QPU_1 received {\"QPU_0\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_0_0\", \"q_0_1\", \"q_0_2\", \"q_0_3\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_2\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_2\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_3\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_2\", \"q_0_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_2\", \"q_0_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_3\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}], \"QPU_1\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_1_0\", \"q_1_1\", \"q_1_2\", \"q_1_3\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_2\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_2\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_3\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_2\", \"q_1_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_2\", \"q_1_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_3\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}]} with sequence number 0\n",
+      "2021-07-18 00:56:34,174: QPU_1 sends CLASSICAL to host_1 with sequence 0\n",
+      "2021-07-18 00:56:34,175: QPU_0 received {\"QPU_0\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_0_0\", \"q_0_1\", \"q_0_2\", \"q_0_3\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_2\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_0\", \"q_0_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_2\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_0_3\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_2\", \"q_0_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_2\", \"q_0_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_0_3\", \"q_0_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}], \"QPU_1\": [{\"name\": \"PREPARE_QUBITS\", \"qids\": [\"q_1_0\", \"q_1_1\", \"q_1_2\", \"q_1_3\"], \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_2\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_0\", \"q_1_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"X\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 0}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_0\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.31798493034765196, 0.7437467353318117], [-0.19454774447448653, -0.5548671488518317]], [[0.19454774447448653, -0.5548671488518317], [-0.31798493034765196, -0.7437467353318117]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_1\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.39367767478169263, 0.8957445465285611], [-0.06940503059650993, 0.19453158476381135]], [[0.06940503059650993, 0.19453158476381135], [0.39367767478169263, -0.8957445465285611]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_2\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[0.2315227000379894, -0.9438901384346993], [-0.01969801507418892, 0.234692637581541]], [[0.01969801507418892, 0.234692637581541], [0.2315227000379894, 0.9438901384346993]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"SINGLE\", \"qids\": [\"q_1_3\"], \"cids\": null, \"gate\": \"custom_gate\", \"gate_param\": [[[-0.9526411467473749, -0.20529868550618627], [0.015378497582795967, 0.22380973407198954]], [[-0.015378497582795967, 0.22380973407198954], [-0.9526411467473749, 0.20529868550618627]]], \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 1}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_2\", \"q_1_3\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_2\", \"q_1_0\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}, {\"name\": \"TWO_QUBIT\", \"qids\": [\"q_1_3\", \"q_1_1\"], \"cids\": null, \"gate\": \"cnot\", \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 2}]} with sequence number 0\n"
      ]
     },
     {
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-25 23:45:24,224: QPU_0 sends CLASSICAL to host_1 with sequence 0\n",
-      "2021-06-25 23:45:24,224: host_1 received ACK from QPU_0 with sequence number 0\n",
-      "2021-06-25 23:45:24,225: host_1 received ACK with sequence number 0\n",
-      "2021-06-25 23:45:24,227: QPU_0 awaits classical ACK from host_1 with sequence 0\n",
-      "2021-06-25 23:45:24,229: QPU_1 received ACK from host_1 with sequence number 0\n",
-      "2021-06-25 23:45:24,229: sending ACK:1 from host_1 to QPU_0\n",
-      "2021-06-25 23:45:24,232: host_1 received ACK with sequence number 0\n",
-      "2021-06-25 23:45:24,233: QPU_0 received ACK from host_1 with sequence number 0\n"
+      "2021-07-18 00:56:34,175: QPU_0 sends CLASSICAL to host_1 with sequence 0\n",
+      "2021-07-18 00:56:34,176: host_1 received ACK from QPU_0 with sequence number 0\n",
+      "2021-07-18 00:56:34,177: QPU_1 awaits classical ACK from host_1 with sequence 0\n",
+      "2021-07-18 00:56:34,179: sending ACK:1 from host_1 to QPU_1\n",
+      "2021-07-18 00:56:34,180: QPU_0 awaits classical ACK from host_1 with sequence 0\n",
+      "2021-07-18 00:56:34,182: host_1 received ACK with sequence number 0\n",
+      "2021-07-18 00:56:34,184: QPU_1 received ACK from host_1 with sequence number 0\n",
+      "2021-07-18 00:56:34,187: sending ACK:1 from host_1 to QPU_0\n",
+      "2021-07-18 00:56:34,188: host_1 received ACK with sequence number 0\n",
+      "2021-07-18 00:56:34,222: QPU_0 received ACK from host_1 with sequence number 0\n"
      ]
     }
    ],
@@ -700,23 +696,23 @@
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-25 23:45:27,656: host_1 sends BROADCAST message\n",
-      "2021-06-25 23:45:27,690: sending ACK:2 from QPU_1 to host_1\n",
-      "2021-06-25 23:45:27,712: sending ACK:2 from QPU_0 to host_1\n",
-      "2021-06-25 23:45:27,712: QPU_1 received {\"QPU_0\": [{\"name\": \"REC_HAMILTON\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"hamiltonian\": [[-0.04207897647782276, [[\"Identity\", 0]]], [0.17771287465139946, [[\"PauliZ\", 0]]], [0.1777128746513994, [[\"PauliZ\", 1]]], [-0.24274280513140462, [[\"PauliZ\", 2]]], [-0.24274280513140462, [[\"PauliZ\", 3]]], [0.17059738328801052, [[\"PauliZ\", 0], [\"PauliZ\", 1]]], [0.04475014401535161, [[\"PauliY\", 0], [\"PauliX\", 1], [\"PauliX\", 2], [\"PauliY\", 3]]], [-0.04475014401535161, [[\"PauliY\", 0], [\"PauliY\", 1], [\"PauliX\", 2], [\"PauliX\", 3]]]], \"layer_end\": 4}], \"QPU_1\": [{\"name\": \"REC_HAMILTON\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"hamiltonian\": [[-0.04475014401535161, [[\"PauliX\", 0], [\"PauliX\", 1], [\"PauliY\", 2], [\"PauliY\", 3]]], [0.04475014401535161, [[\"PauliX\", 0], [\"PauliY\", 1], [\"PauliY\", 2], [\"PauliX\", 3]]], [0.12293305056183798, [[\"PauliZ\", 0], [\"PauliZ\", 2]]], [0.1676831945771896, [[\"PauliZ\", 0], [\"PauliZ\", 3]]], [0.1676831945771896, [[\"PauliZ\", 1], [\"PauliZ\", 2]]], [0.12293305056183798, [[\"PauliZ\", 1], [\"PauliZ\", 3]]], [0.17627640804319591, [[\"PauliZ\", 2], [\"PauliZ\", 3]]]], \"layer_end\": 4}]} with sequence number 1\n",
-      "2021-06-25 23:45:27,722: QPU_1 sends CLASSICAL to host_1 with sequence 1\n",
-      "2021-06-25 23:45:27,728: host_1 received ACK from QPU_1 with sequence number 1\n",
-      "2021-06-25 23:45:27,735: host_1 received ACK from QPU_0 with sequence number 1\n",
-      "2021-06-25 23:45:27,735: QPU_0 received {\"QPU_0\": [{\"name\": \"REC_HAMILTON\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"hamiltonian\": [[-0.04207897647782276, [[\"Identity\", 0]]], [0.17771287465139946, [[\"PauliZ\", 0]]], [0.1777128746513994, [[\"PauliZ\", 1]]], [-0.24274280513140462, [[\"PauliZ\", 2]]], [-0.24274280513140462, [[\"PauliZ\", 3]]], [0.17059738328801052, [[\"PauliZ\", 0], [\"PauliZ\", 1]]], [0.04475014401535161, [[\"PauliY\", 0], [\"PauliX\", 1], [\"PauliX\", 2], [\"PauliY\", 3]]], [-0.04475014401535161, [[\"PauliY\", 0], [\"PauliY\", 1], [\"PauliX\", 2], [\"PauliX\", 3]]]], \"layer_end\": 4}], \"QPU_1\": [{\"name\": \"REC_HAMILTON\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"hamiltonian\": [[-0.04475014401535161, [[\"PauliX\", 0], [\"PauliX\", 1], [\"PauliY\", 2], [\"PauliY\", 3]]], [0.04475014401535161, [[\"PauliX\", 0], [\"PauliY\", 1], [\"PauliY\", 2], [\"PauliX\", 3]]], [0.12293305056183798, [[\"PauliZ\", 0], [\"PauliZ\", 2]]], [0.1676831945771896, [[\"PauliZ\", 0], [\"PauliZ\", 3]]], [0.1676831945771896, [[\"PauliZ\", 1], [\"PauliZ\", 2]]], [0.12293305056183798, [[\"PauliZ\", 1], [\"PauliZ\", 3]]], [0.17627640804319591, [[\"PauliZ\", 2], [\"PauliZ\", 3]]]], \"layer_end\": 4}]} with sequence number 1\n",
-      "2021-06-25 23:45:27,736: QPU_0 sends CLASSICAL to host_1 with sequence 1\n",
-      "2021-06-25 23:45:27,736: QPU_1 awaits classical ACK from host_1 with sequence 1\n",
-      "2021-06-25 23:45:27,738: sending ACK:2 from host_1 to QPU_1\n",
-      "2021-06-25 23:45:27,739: QPU_0 awaits classical ACK from host_1 with sequence 1\n",
-      "2021-06-25 23:45:27,741: host_1 received ACK with sequence number 1\n",
-      "2021-06-25 23:45:27,742: QPU_1 received ACK from host_1 with sequence number 1\n",
-      "2021-06-25 23:45:27,743: sending ACK:2 from host_1 to QPU_0\n",
-      "2021-06-25 23:45:27,744: host_1 received ACK with sequence number 1\n",
-      "2021-06-25 23:45:27,745: QPU_0 received ACK from host_1 with sequence number 1\n"
+      "2021-07-18 00:56:40,591: host_1 sends BROADCAST message\n",
+      "2021-07-18 00:56:40,910: sending ACK:2 from QPU_0 to host_1\n",
+      "2021-07-18 00:56:40,930: sending ACK:2 from QPU_1 to host_1\n",
+      "2021-07-18 00:56:41,088: QPU_0 received {\"QPU_0\": [{\"name\": \"REC_HAMILTON\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"hamiltonian\": [[-0.04207897647782276, [[\"Identity\", 0]]], [0.17771287465139946, [[\"PauliZ\", 0]]], [0.1777128746513994, [[\"PauliZ\", 1]]], [-0.24274280513140462, [[\"PauliZ\", 2]]], [-0.24274280513140462, [[\"PauliZ\", 3]]], [0.17059738328801052, [[\"PauliZ\", 0], [\"PauliZ\", 1]]], [0.04475014401535161, [[\"PauliY\", 0], [\"PauliX\", 1], [\"PauliX\", 2], [\"PauliY\", 3]]], [-0.04475014401535161, [[\"PauliY\", 0], [\"PauliY\", 1], [\"PauliX\", 2], [\"PauliX\", 3]]]], \"layer_end\": 4}], \"QPU_1\": [{\"name\": \"REC_HAMILTON\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"hamiltonian\": [[-0.04475014401535161, [[\"PauliX\", 0], [\"PauliX\", 1], [\"PauliY\", 2], [\"PauliY\", 3]]], [0.04475014401535161, [[\"PauliX\", 0], [\"PauliY\", 1], [\"PauliY\", 2], [\"PauliX\", 3]]], [0.12293305056183798, [[\"PauliZ\", 0], [\"PauliZ\", 2]]], [0.1676831945771896, [[\"PauliZ\", 0], [\"PauliZ\", 3]]], [0.1676831945771896, [[\"PauliZ\", 1], [\"PauliZ\", 2]]], [0.12293305056183798, [[\"PauliZ\", 1], [\"PauliZ\", 3]]], [0.17627640804319591, [[\"PauliZ\", 2], [\"PauliZ\", 3]]]], \"layer_end\": 4}]} with sequence number 1\n",
+      "2021-07-18 00:56:41,099: QPU_0 sends CLASSICAL to host_1 with sequence 1\n",
+      "2021-07-18 00:56:41,119: host_1 received ACK from QPU_0 with sequence number 1\n",
+      "2021-07-18 00:56:41,137: QPU_1 received {\"QPU_0\": [{\"name\": \"REC_HAMILTON\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"hamiltonian\": [[-0.04207897647782276, [[\"Identity\", 0]]], [0.17771287465139946, [[\"PauliZ\", 0]]], [0.1777128746513994, [[\"PauliZ\", 1]]], [-0.24274280513140462, [[\"PauliZ\", 2]]], [-0.24274280513140462, [[\"PauliZ\", 3]]], [0.17059738328801052, [[\"PauliZ\", 0], [\"PauliZ\", 1]]], [0.04475014401535161, [[\"PauliY\", 0], [\"PauliX\", 1], [\"PauliX\", 2], [\"PauliY\", 3]]], [-0.04475014401535161, [[\"PauliY\", 0], [\"PauliY\", 1], [\"PauliX\", 2], [\"PauliX\", 3]]]], \"layer_end\": 4}], \"QPU_1\": [{\"name\": \"REC_HAMILTON\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"hamiltonian\": [[-0.04475014401535161, [[\"PauliX\", 0], [\"PauliX\", 1], [\"PauliY\", 2], [\"PauliY\", 3]]], [0.04475014401535161, [[\"PauliX\", 0], [\"PauliY\", 1], [\"PauliY\", 2], [\"PauliX\", 3]]], [0.12293305056183798, [[\"PauliZ\", 0], [\"PauliZ\", 2]]], [0.1676831945771896, [[\"PauliZ\", 0], [\"PauliZ\", 3]]], [0.1676831945771896, [[\"PauliZ\", 1], [\"PauliZ\", 2]]], [0.12293305056183798, [[\"PauliZ\", 1], [\"PauliZ\", 3]]], [0.17627640804319591, [[\"PauliZ\", 2], [\"PauliZ\", 3]]]], \"layer_end\": 4}]} with sequence number 1\n",
+      "2021-07-18 00:56:41,137: QPU_1 sends CLASSICAL to host_1 with sequence 1\n",
+      "2021-07-18 00:56:41,137: host_1 received ACK from QPU_1 with sequence number 1\n",
+      "2021-07-18 00:56:41,138: QPU_0 awaits classical ACK from host_1 with sequence 1\n",
+      "2021-07-18 00:56:41,140: sending ACK:2 from host_1 to QPU_0\n",
+      "2021-07-18 00:56:41,141: QPU_1 awaits classical ACK from host_1 with sequence 1\n",
+      "2021-07-18 00:56:41,141: sending ACK:2 from host_1 to QPU_1\n",
+      "2021-07-18 00:56:41,142: host_1 received ACK with sequence number 1\n",
+      "2021-07-18 00:56:41,144: host_1 received ACK with sequence number 1\n",
+      "2021-07-18 00:56:41,150: QPU_0 received ACK from host_1 with sequence number 1\n",
+      "2021-07-18 00:56:41,150: QPU_1 received ACK from host_1 with sequence number 1\n"
      ]
     }
    ],
@@ -766,33 +762,33 @@
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "2021-06-25 23:45:27,866: host_1 sends BROADCAST message\n",
-      "2021-06-25 23:45:27,873: sending ACK:3 from QPU_1 to host_1\n",
-      "2021-06-25 23:45:27,879: sending ACK:3 from QPU_0 to host_1\n",
-      "2021-06-25 23:45:27,891: QPU_1 received {\"QPU_0\": [{\"name\": \"SEND_EXP\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}], \"QPU_1\": [{\"name\": \"SEND_EXP\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}]} with sequence number 2\n",
-      "2021-06-25 23:45:27,891: QPU_1 sends CLASSICAL to host_1 with sequence 2\n",
-      "2021-06-25 23:45:27,918: QPU_0 received {\"QPU_0\": [{\"name\": \"SEND_EXP\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}], \"QPU_1\": [{\"name\": \"SEND_EXP\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}]} with sequence number 2\n",
-      "2021-06-25 23:45:27,919: QPU_0 sends CLASSICAL to host_1 with sequence 2\n",
-      "2021-06-25 23:45:27,919: host_1 received ACK from QPU_1 with sequence number 2\n",
-      "2021-06-25 23:45:27,919: host_1 received ACK from QPU_0 with sequence number 2\n",
-      "2021-06-25 23:45:27,921: QPU_1 awaits classical ACK from host_1 with sequence 2\n",
-      "2021-06-25 23:45:27,922: sending ACK:3 from host_1 to QPU_1\n",
-      "2021-06-25 23:45:27,923: QPU_0 awaits classical ACK from host_1 with sequence 2\n",
-      "2021-06-25 23:45:27,926: host_1 received ACK with sequence number 2\n",
-      "2021-06-25 23:45:27,930: sending ACK:3 from host_1 to QPU_0\n",
-      "2021-06-25 23:45:27,931: host_1 received ACK with sequence number 2\n",
-      "2021-06-25 23:45:27,931: QPU_1 received ACK from host_1 with sequence number 2\n",
-      "2021-06-25 23:45:27,931: QPU_0 received ACK from host_1 with sequence number 2\n",
-      "2021-06-25 23:45:28,960: QPU_1 sends CLASSICAL to host_1 with sequence 3\n",
-      "2021-06-25 23:45:28,962: QPU_1 awaits classical ACK from host_1 with sequence 3\n",
-      "2021-06-25 23:45:28,963: sending ACK:4 from host_1 to QPU_1\n",
-      "2021-06-25 23:45:28,966: host_1 received {\"QPU_1\": {\"type\": \"expectation_value\", \"val\": -0.2097483415839275}} with sequence number 3\n",
-      "2021-06-25 23:45:28,968: QPU_1 received ACK from host_1 with sequence number 3\n",
-      "2021-06-25 23:45:28,975: QPU_0 sends CLASSICAL to host_1 with sequence 3\n",
-      "2021-06-25 23:45:28,976: QPU_0 awaits classical ACK from host_1 with sequence 3\n",
-      "2021-06-25 23:45:28,977: sending ACK:4 from host_1 to QPU_0\n",
-      "2021-06-25 23:45:28,977: host_1 received {\"QPU_0\": {\"type\": \"expectation_value\", \"val\": -0.5977214207152473}} with sequence number 3\n",
-      "2021-06-25 23:45:28,978: QPU_0 received ACK from host_1 with sequence number 3\n"
+      "2021-07-18 00:56:42,283: host_1 sends BROADCAST message\n",
+      "2021-07-18 00:56:42,403: sending ACK:3 from QPU_0 to host_1\n",
+      "2021-07-18 00:56:42,424: sending ACK:3 from QPU_1 to host_1\n",
+      "2021-07-18 00:56:42,450: QPU_0 received {\"QPU_0\": [{\"name\": \"SEND_EXP\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}], \"QPU_1\": [{\"name\": \"SEND_EXP\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}]} with sequence number 2\n",
+      "2021-07-18 00:56:42,450: QPU_0 sends CLASSICAL to host_1 with sequence 2\n",
+      "2021-07-18 00:56:42,461: QPU_1 received {\"QPU_0\": [{\"name\": \"SEND_EXP\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_0\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}], \"QPU_1\": [{\"name\": \"SEND_EXP\", \"qids\": null, \"cids\": null, \"gate\": null, \"gate_param\": null, \"computing_host_ids\": [\"QPU_1\"], \"pre_allocated_qubits\": false, \"layer_end\": 6}]} with sequence number 2\n",
+      "2021-07-18 00:56:42,462: QPU_1 sends CLASSICAL to host_1 with sequence 2\n",
+      "2021-07-18 00:56:42,463: host_1 received ACK from QPU_0 with sequence number 2\n",
+      "2021-07-18 00:56:42,464: host_1 received ACK from QPU_1 with sequence number 2\n",
+      "2021-07-18 00:56:42,464: QPU_0 awaits classical ACK from host_1 with sequence 2\n",
+      "2021-07-18 00:56:42,466: QPU_1 awaits classical ACK from host_1 with sequence 2\n",
+      "2021-07-18 00:56:42,467: sending ACK:3 from host_1 to QPU_1\n",
+      "2021-07-18 00:56:42,468: sending ACK:3 from host_1 to QPU_0\n",
+      "2021-07-18 00:56:42,470: host_1 received ACK with sequence number 2\n",
+      "2021-07-18 00:56:42,471: host_1 received ACK with sequence number 2\n",
+      "2021-07-18 00:56:42,474: QPU_1 received ACK from host_1 with sequence number 2\n",
+      "2021-07-18 00:56:42,484: QPU_0 received ACK from host_1 with sequence number 2\n",
+      "2021-07-18 00:56:43,477: QPU_1 sends CLASSICAL to host_1 with sequence 3\n",
+      "2021-07-18 00:56:43,478: QPU_1 awaits classical ACK from host_1 with sequence 3\n",
+      "2021-07-18 00:56:43,481: sending ACK:4 from host_1 to QPU_1\n",
+      "2021-07-18 00:56:43,482: host_1 received {\"QPU_1\": {\"type\": \"expectation_value\", \"val\": -0.2097483415839275}} with sequence number 3\n",
+      "2021-07-18 00:56:43,483: QPU_1 received ACK from host_1 with sequence number 3\n",
+      "2021-07-18 00:56:43,502: QPU_0 sends CLASSICAL to host_1 with sequence 3\n",
+      "2021-07-18 00:56:43,503: QPU_0 awaits classical ACK from host_1 with sequence 3\n",
+      "2021-07-18 00:56:43,504: sending ACK:4 from host_1 to QPU_0\n",
+      "2021-07-18 00:56:43,505: host_1 received {\"QPU_0\": {\"type\": \"expectation_value\", \"val\": -0.5977214207152473}} with sequence number 3\n",
+      "2021-07-18 00:56:43,506: QPU_0 received ACK from host_1 with sequence number 3\n"
      ]
     }
    ],
@@ -970,13 +966,12 @@
     "    network.delay = 0\n",
     "    network.start()\n",
     "\n",
-    "    clock = Clock()\n",
+    "    Clock.reset_clock()\n",
     "\n",
     "    eqsn = EQSNBackend()\n",
     "\n",
     "    controller_host = ControllerHost(\n",
     "        host_id=\"host_1\",\n",
-    "        clock=clock,\n",
     "        backend=eqsn\n",
     "    )\n",
     "\n",
@@ -1351,7 +1346,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.8.5"
+   "version": "3.8.10"
   }
  },
  "nbformat": 4,
diff --git a/interlinq/components/clock.py b/interlinq/components/clock.py
index bda8faf..c2033aa 100644
--- a/interlinq/components/clock.py
+++ b/interlinq/components/clock.py
@@ -6,17 +6,34 @@ class Clock(object):
     This is a clock simulator which synchronises the scheduled operations in computing
     hosts
     """
+    __instance = None
+
+    @staticmethod
+    def get_instance():
+        if Clock.__instance is None:
+            Clock()
+        return Clock.__instance
+
+    @staticmethod
+    def reset_clock():
+        if Clock.__instance is not None:
+            Clock.__instance.stop_clock()
+            Clock.__instance = None
+        __instance = Clock()
 
     def __init__(self):
         """
         Returns the important things for the clock object
         """
-
-        self._ticks = 0
-        self._maximum_ticks = 0
-        self._response = 0
-        self._stop = False
-        self._computing_hosts = []
+        if Clock.__instance is None:
+            self._ticks = 0
+            self._maximum_ticks = 0
+            self._response = 0
+            self._stop = False
+            self._computing_hosts = []
+            Clock.__instance = self
+        else:
+            raise Exception('This is a singleton class. Use get_instance().')
 
     @property
     def ticks(self):
@@ -26,7 +43,7 @@ def ticks(self):
         return self._ticks
 
     @property
-    def stop(self):
+    def has_stopped(self):
         """
         Check if the clock has stopped
         """
diff --git a/interlinq/components/computing_host.py b/interlinq/components/computing_host.py
index e5069b9..ee99a0f 100644
--- a/interlinq/components/computing_host.py
+++ b/interlinq/components/computing_host.py
@@ -21,7 +21,7 @@ class ComputingHost(Host):
     distributed network system, connected to the controller host.
     """
 
-    def __init__(self, host_id: str, controller_host_id: str, clock: Clock, total_qubits: int = 0,
+    def __init__(self, host_id: str, controller_host_id: str, total_qubits: int = 0,
                  total_pre_allocated_qubits: int = 1, gate_time: dict = None, backend=None):
 
         """
@@ -30,8 +30,6 @@ def __init__(self, host_id: str, controller_host_id: str, clock: Clock, total_qu
         Args:
             host_id (str): The ID of the computing host
             controller_host_id (str): The IDs of controller/master host
-            clock (Clock): The clock object which ensures clock synchronization
-               amongst the computing hosts
             total_qubits (int): Total number of processing qubits possessed by
                the computing host
             total_pre_allocated_qubits (int): Total number of pre allocated qubits
@@ -60,12 +58,12 @@ def __init__(self, host_id: str, controller_host_id: str, clock: Clock, total_qu
             gate_time = DefaultOperationTime
 
         self._gate_time = gate_time
-        
+
         self._last_buffer_size = 0
 
         # Attach computing host to the clock
-        clock.attach_host(self)
-        self._clock = clock
+        self._clock = Clock.get_instance()
+        self._clock.attach_host(self)
 
     @property
     def controller_host_id(self):
@@ -134,20 +132,20 @@ def update_total_qubits(self, total_qubits: int):
 
     def receive_schedule(self):
         """
-        Receive the broadcasted schedule from the Controller Host and update
+        Receive the broadcast schedule from the Controller Host and update
         the schedule property
         """
 
         messages = []
-        
+
         while len(messages) <= self._last_buffer_size:
             messages = self.classical
             messages = [x for x in messages if x.content != 'ACK']
-            
+
         self._last_buffer_size = len(messages)
-        
+
         # Await broadcast messages from the controller host
-        #while len(messages) < 1:
+        # while len(messages) < 1:
         #    messages = self.classical
         #    messages = [x for x in messages if x.content != 'ACK']
 
@@ -585,8 +583,7 @@ def _process_send_exp(self, operation: dict):
         self._calculated_exp = True
 
         return
-        
-        
+
     def perform_schedule(self, ticks: int):
         """
         Process the schedule and perform the corresponding operations
@@ -597,7 +594,7 @@ def perform_schedule(self, ticks: int):
         """
 
         if ticks in self._schedule:
-            for operation in self._schedule[ticks]:          
+            for operation in self._schedule[ticks]:
                 if operation['name'] == Constants.PREPARE_QUBITS:
                     self._prepare_qubits(operation)
 
@@ -630,21 +627,21 @@ def perform_schedule(self, ticks: int):
 
                 if operation['name'] == Constants.SEND_EXP:
                     self._process_send_exp(operation)
-        
+
         self._clock.respond()
 
-    def send_results(self, type='bits'):
+    def send_results(self, result_type='bits'):
         """
         Send results to Controller Host
         """
 
         # TODO: Check if there is a better implementation
         # Wait for the clock to stop ticking to send the results
-        while not self._clock.stop:
+        while not self._clock.has_stopped:
             time.sleep(1)
 
         # Wait until the expectation calculation is finished
-        while type == 'expectation' and not self._calculated_exp:
+        while result_type == 'expectation' and not self._calculated_exp:
             time.sleep(0.5)
 
         if self._error_message:
@@ -653,16 +650,21 @@ def send_results(self, type='bits'):
                 'message': self._error_message
             }
         else:
-            if type == 'bits':
+            if result_type == 'bits':
                 msg = {
                     'type': 'measurement_result',
                     'val': self.bits
                 }
-            elif type == 'expectation':
+            elif result_type == 'expectation':
                 msg = {
                     'type': 'expectation_value',
                     'val': np.real(self.exp)
                 }
+            else:
+                msg = {
+                    'type': 'unsupported_result_type',
+                    'message': 'Supported result types are only \'bits\' and \'expectation\''
+                }
 
         message = json.dumps({self.host_id: msg})
         self.send_classical(self._controller_host_id, message, await_ack=True)
diff --git a/interlinq/components/controller_host.py b/interlinq/components/controller_host.py
index d5b5cb2..d1bc036 100644
--- a/interlinq/components/controller_host.py
+++ b/interlinq/components/controller_host.py
@@ -16,29 +16,29 @@ class ControllerHost(Host):
     distributed network system.
     """
 
-    def __init__(self, host_id: str, clock: Clock, computing_host_ids: list = [], gate_time: dict = None, backend=None):
+    def __init__(self, host_id: str, computing_host_ids: list = None, gate_time: dict = None, backend=None):
         """
         Returns the important things for the controller hosts
 
         Args:
             host_id (str): The ID of the controller host
             computing_host_ids (list): The IDs of computing/slave hosts
-            clock (Clock): Clock object for synchronising the computing hosts
             gate_time (dict): A mapping of gate names to time the gate takes
                to execute for each computing host
             backend (Backend): Backend for qubits
         """
         super().__init__(host_id, backend=backend)
 
-        self._computing_host_ids = computing_host_ids
-        self.add_c_connections(computing_host_ids)
-        self._clock = clock
+        self.term_assignment = dict()
+        self._computing_host_ids = computing_host_ids if computing_host_ids is not None else []
+        self.add_c_connections(self._computing_host_ids)
+        self._clock = Clock.get_instance()
         self._circuit_max_execution_time = 0
 
         # TODO: Take gate_time as an input from computing hosts
         if gate_time is None:
             gate_time = {}
-            for computing_host_id in computing_host_ids:
+            for computing_host_id in self._computing_host_ids:
                 gate_time[computing_host_id] = DefaultOperationTime
 
         self._gate_time = gate_time
@@ -70,7 +70,7 @@ def create_distributed_network(self, num_computing_hosts: int, num_qubits_per_ho
         *num_qubits_per_host* each.
 
         Args:
-            num_computing_hosts (int): The number of computing hosts to initalize
+            num_computing_hosts (int): The number of computing hosts to initialize
             num_qubits_per_host (int): The number of qubits on each computing host
         Returns:
             (tuple): The list of computing hosts and the qubit map for their qubits
@@ -86,7 +86,6 @@ def create_distributed_network(self, num_computing_hosts: int, num_qubits_per_ho
             computing_host = ComputingHost(
                 host_id=id_prefix + str(i),
                 controller_host_id=self.host_id,
-                clock=self._clock,
                 total_qubits=num_qubits_per_host,
                 total_pre_allocated_qubits=num_qubits_per_host,
                 backend=self._backend
@@ -188,7 +187,7 @@ def _create_distributed_schedules(self, circuit: Circuit):
                 if op['computing_host_ids'][0] == computing_host_id:
                     computing_host_schedule.append(op)
             computing_host_schedules[computing_host_id] = computing_host_schedule
-        
+
         return computing_host_schedules, time_layer_end
 
     @staticmethod
@@ -428,12 +427,12 @@ def receive_results(self):
         results = {}
 
         for host_id in self._computing_host_ids:
-            result = self.get_next_classical(host_id, wait=-1)#, seq_num=1)
+            result = self.get_next_classical(host_id, wait=-1)
 
             # I think this is a bug with QuNetSim... Adding a hack for now
             # to overcome it...
             if result.content == 'ACK':
-                result = self.get_next_classical(host_id, wait=-1)#, seq_num=1)
+                result = self.get_next_classical(host_id, wait=-1)
 
             try:
                 result = result.content
@@ -443,40 +442,26 @@ def receive_results(self):
 
         self._results = results
 
-    def schedule_expectation_terms(self, terms, q_map):
+    def schedule_expectation_terms(self, hamiltonian, q_map):
         """
         Assign the terms of a Hamiltonian to the different computing hosts in the network
         """
 
         # First check the sanity of the list type-wise
-        if len(terms) == 0:
-            raise Exception('Empty list of terms passed')
-
-        for term in terms:
-            if not isinstance(term, tuple):
-                raise Exception('Can only accept a list of tuples')
-
-            try: 
-                coeff, observables = term 
-
-                if not isinstance(observables, list):
-                    raise Exception()
-                
-                for part in observables:
-                    obs_type, idx = part
-
-                    if not (isinstance(obs_type, str) and isinstance(idx, int)):
-                        raise Exception()
-            except:
-                raise Exception('Tuples must of the form (coefficient, [(Observable, qubit_idx)])')
+        assert len(hamiltonian) > 0, 'Empty list of terms passed'
+        assert all(isinstance(x, tuple) for x in hamiltonian), 'Can only accept a list of tuples'
+        for term in hamiltonian:
+            _, observables = term
+            assert isinstance(observables, list), 'Each term must include a list of observables.'
+            assert all(isinstance(obs_type, str) and isinstance(idx, int) for obs_type, idx in observables),\
+                'The list of observables must be of tuples of types (str, int)'
 
         # We assume that all QPUs have enough qubits for VQE
         number_of_computing_hosts = len(q_map.keys())
 
-        idx_assignment = np.array_split(np.arange(len(terms)), number_of_computing_hosts)
+        idx_assignment = np.array_split(np.arange(len(hamiltonian)), number_of_computing_hosts)
 
         # Then assign the terms as per the number
-        self.term_assignment = dict()
         computing_host_ids = list(q_map.keys())
 
         for i in range(number_of_computing_hosts):
@@ -484,10 +469,11 @@ def schedule_expectation_terms(self, terms, q_map):
 
         for i, arr in enumerate(idx_assignment):
             for val in arr:
-                self.term_assignment[computing_host_ids[i]].append(terms[val])
+                self.term_assignment[computing_host_ids[i]].append(hamiltonian[val])
 
         return
 
+
 class NumpyEncoder(json.JSONEncoder):
     def default(self, obj):
         if isinstance(obj, np.ndarray):
diff --git a/interlinq/objects/circuit.py b/interlinq/objects/circuit.py
index 295209c..9d78f41 100644
--- a/interlinq/objects/circuit.py
+++ b/interlinq/objects/circuit.py
@@ -6,7 +6,7 @@ class Circuit(object):
     Circuit object which contains information about a quantum circuit.
     """
 
-    def __init__(self, q_map: dict, layers: list = [], qubits: list = []):
+    def __init__(self, q_map: dict, layers: list = None, qubits: list = None):
         """
         Returns the important things for a quantum circuit
 
@@ -20,8 +20,8 @@ def __init__(self, q_map: dict, layers: list = [], qubits: list = []):
         """
 
         self._q_map = q_map
-        self._layers = layers
-        self._qubits = qubits
+        self._layers = layers if layers is not None else []
+        self._qubits = qubits if qubits is not None else []
         self._width = 0
 
         if not self._layers:
diff --git a/interlinq/objects/layer.py b/interlinq/objects/layer.py
index 7190284..5115b6b 100644
--- a/interlinq/objects/layer.py
+++ b/interlinq/objects/layer.py
@@ -3,7 +3,7 @@ class Layer(object):
     Layer object which is a collection of operations to be applied on the qubits in the system.
     """
 
-    def __init__(self, operations: list = []):
+    def __init__(self, operations: list = None):
         """
         Returns the important things for a layer in a quantum circuit
 
@@ -12,7 +12,7 @@ def __init__(self, operations: list = []):
                about the operation to be performed on the quantum circuit
         """
 
-        self._operations = operations
+        self._operations = operations if operations is not None else []
 
     def __str__(self):
         layer = ''
diff --git a/interlinq/objects/operation.py b/interlinq/objects/operation.py
index 86c5a13..1afc083 100644
--- a/interlinq/objects/operation.py
+++ b/interlinq/objects/operation.py
@@ -31,8 +31,8 @@ def __init__(self,
                  cids: list = None,
                  gate: str = None,
                  gate_param: list = None,
-                 computing_host_ids: list = [],
-                 pre_allocated_qubits: bool = False, 
+                 computing_host_ids: list = None,
+                 pre_allocated_qubits: bool = False,
                  hamiltonian: list = None):
         """
         Returns the important things for a quantum operation
@@ -59,17 +59,16 @@ def __init__(self,
         self._cids = cids
         self._gate = gate
         self._gate_param = gate_param
-        self._computing_host_ids = computing_host_ids
+        self._computing_host_ids = computing_host_ids if computing_host_ids is not None else []
         self._pre_allocated_qubits = pre_allocated_qubits
 
         if self._name is Constants.REC_HAMILTON:
-            if hamiltonian is None or len(hamiltonian) == 0: 
+            if hamiltonian is None or len(hamiltonian) == 0:
                 raise Exception('Must send non-empty Hamiltonian terms with this operation!')
             self._hamiltonian = hamiltonian
         else:
             if hamiltonian and len(hamiltonian) > 0:
                 warnings.warn('You sent a list of Hamiltonians with an operation other than REC_HAMILTON')
-            
 
     def __str__(self):
         return self.name
diff --git a/interlinq/objects/qubit.py b/interlinq/objects/qubit.py
index e497e08..9d0b8d6 100644
--- a/interlinq/objects/qubit.py
+++ b/interlinq/objects/qubit.py
@@ -1,6 +1,5 @@
 from interlinq.utils import Constants
-from . import Operation
-from . import Layer
+from interlinq.objects import Operation
 
 
 class Qubit(object):
diff --git a/interlinq/utils/vqe_subroutines.py b/interlinq/utils/vqe_subroutines.py
index 8976e3f..c039267 100644
--- a/interlinq/utils/vqe_subroutines.py
+++ b/interlinq/utils/vqe_subroutines.py
@@ -3,6 +3,7 @@
 
 import numpy as np
 
+
 def string_to_qutip_pauli(string):
     if string == 'Identity':
         return identity(2)
@@ -13,6 +14,7 @@ def string_to_qutip_pauli(string):
     if string == 'PauliZ':
         return sigmaz()
 
+
 def expectation_value(terms, vector, number_of_qubits):
     total = 0
 
@@ -23,14 +25,14 @@ def expectation_value(terms, vector, number_of_qubits):
 
         for _ in range(number_of_qubits):
             obs_tensor_prod.append(identity(2))
-        
+
         for obs in observables:
             pauli, index = obs
-            
+
             obs_tensor_prod[index] = string_to_qutip_pauli(pauli)
 
         obs_tensor_prod = tensor(obs_tensor_prod)
-        
-        total += coefficient * np.vdot(vector, obs_tensor_prod @ vector) 
-        
+
+        total += coefficient * np.vdot(vector, obs_tensor_prod @ vector)
+
     return total


Test patch:
diff --git a/tests/test_controller_host.py b/tests/test_controller_host.py
index d8309be..8eefa37 100644
--- a/tests/test_controller_host.py
+++ b/tests/test_controller_host.py
@@ -1,13 +1,12 @@
-from interlinq.components import ControllerHost
-from interlinq.components import Clock
-from interlinq.objects.circuit import Circuit
-from interlinq.objects.layer import Layer
-from interlinq.objects import Operation
+import unittest
 
-from qunetsim.components.network import Network
 from qunetsim.backends import EQSNBackend
+from qunetsim.components.network import Network
 
-import unittest
+from interlinq.components import ControllerHost
+from interlinq.objects import Operation
+from interlinq.objects.circuit import Circuit
+from interlinq.objects.layer import Layer
 
 
 class TestControllerHost(unittest.TestCase):
@@ -26,11 +25,8 @@ def setUp(self):
         network = Network.get_instance()
         network.start(["host_1"], EQSNBackend())
 
-        clock = Clock()
-
         self.controller_host = ControllerHost(
             host_id="host_1",
-            clock=clock,
             computing_host_ids=["QPU_1"])
         network.add_host(self.controller_host)
 
diff --git a/tests/test_distributed_cnot.py b/tests/test_distributed_cnot.py
index f008edd..1a22c18 100644
--- a/tests/test_distributed_cnot.py
+++ b/tests/test_distributed_cnot.py
@@ -29,29 +29,23 @@ def setUp(self):
         network = Network.get_instance()
         network.start(["host_1", "QPU_1", "QPU_2", "QPU_3"], EQSNBackend())
 
-        clock = Clock()
-
         self.computing_host_1 = ComputingHost(
             host_id="QPU_1",
             controller_host_id="host_1",
-            clock=clock,
             total_qubits=2)
 
         self.computing_host_2 = ComputingHost(
             host_id="QPU_2",
             controller_host_id="host_1",
-            clock=clock,
             total_qubits=2)
 
         self.computing_host_3 = ComputingHost(
             host_id="QPU_3",
             controller_host_id="host_1",
-            clock=clock,
             total_qubits=2)
 
         self.controller_host = ControllerHost(
             host_id="host_1",
-            clock=clock,
             computing_host_ids=["QPU_1", "QPU_2", "QPU_3"])
 
         self.computing_host_1.add_connections(['QPU_2', 'QPU_3'])
@@ -70,7 +64,7 @@ def setUp(self):
             self.computing_host_3])
 
         self.network = network
-        self.clock = clock
+        self.clock = Clock.get_instance()
 
     def tearDown(self):
         self.network.stop(True)
@@ -339,10 +333,10 @@ def computing_host_protocol(host):
         self.assertEqual(self.computing_host_3._bits['qubit_3'], 1)
 
         results = self.controller_host._results
-        self.assertEqual(results['QPU_1']['type'], 'result')
-        self.assertEqual(results['QPU_1']['bits']['qubit_1'], 1)
-        self.assertEqual(results['QPU_2']['bits']['qubit_2'], 1)
-        self.assertEqual(results['QPU_3']['bits']['qubit_3'], 1)
+        self.assertEqual(results['QPU_1']['type'], 'measurement_result')
+        self.assertEqual(results['QPU_1']['val']['qubit_1'], 1)
+        self.assertEqual(results['QPU_2']['val']['qubit_2'], 1)
+        self.assertEqual(results['QPU_3']['val']['qubit_3'], 1)
 
     def test_cnot_4(self):
         """
@@ -390,6 +384,6 @@ def computing_host_protocol(host):
         self.assertEqual(self.computing_host_3._bits['q_3'], 1)
 
         results = self.controller_host._results
-        self.assertEqual(results['QPU_1']['type'], 'result')
-        self.assertEqual(results['QPU_1']['bits']['q_1'], 1)
-        self.assertEqual(results['QPU_2']['bits']['q_2'], 1)
+        self.assertEqual(results['QPU_1']['type'], 'measurement_result')
+        self.assertEqual(results['QPU_1']['val']['q_1'], 1)
+        self.assertEqual(results['QPU_2']['val']['q_2'], 1)