diff --git a/.buildinfo b/.buildinfo
index 08e5b4c4754c642bf36a90f681b27a80b0a63d43..23c30fa9c605552db9e448239e140e108ca4f4ff 100644
--- a/.buildinfo
+++ b/.buildinfo
@@ -1,4 +1,4 @@
 # Sphinx build info version 1
 # This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: ed03d611f501ce7058a4e46dadc74e81
+config: 8d1fcf3d875ea72934b940f39cb9e632
 tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/_images/TRT_worklfow.png b/_images/TRT_worklfow.png
new file mode 100644
index 0000000000000000000000000000000000000000..effd74fcd09fb1b93576586e740decc88b8194df
Binary files /dev/null and b/_images/TRT_worklfow.png differ
diff --git a/_images/dino_sim.png b/_images/dino_sim.png
new file mode 100644
index 0000000000000000000000000000000000000000..32b5f3fdffc78c547bd6dc9cb336859a6f3d0c91
Binary files /dev/null and b/_images/dino_sim.png differ
diff --git a/_images/source_Tutorial_static_analysis_14_0.png b/_images/source_Tutorial_static_analysis_14_0.png
new file mode 100644
index 0000000000000000000000000000000000000000..7d2e26772eee801b1f56428f3feb9778b7a8555b
Binary files /dev/null and b/_images/source_Tutorial_static_analysis_14_0.png differ
diff --git a/_images/source_Tutorial_static_analysis_20_0.png b/_images/source_Tutorial_static_analysis_20_0.png
new file mode 100644
index 0000000000000000000000000000000000000000..724af920803f612c3ceab26f441fd2964cbc650f
Binary files /dev/null and b/_images/source_Tutorial_static_analysis_20_0.png differ
diff --git a/_images/source_Tutorial_static_analysis_22_0.png b/_images/source_Tutorial_static_analysis_22_0.png
new file mode 100644
index 0000000000000000000000000000000000000000..cc7b22014b836cef26eb8daeece79db3ef7d4315
Binary files /dev/null and b/_images/source_Tutorial_static_analysis_22_0.png differ
diff --git a/_sources/source/API/Core/operator.rst.txt b/_sources/source/API/Core/operator.rst.txt
index e7ba01a39b2d85e1d953ea361aca81e445eb6c45..0867a8873db8e7c98266be53e808b3e36d3ed854 100644
--- a/_sources/source/API/Core/operator.rst.txt
+++ b/_sources/source/API/Core/operator.rst.txt
@@ -150,7 +150,7 @@ Average Pooling
     .. tab-item:: C++
         :sync: cpp
 
-        .. doxygenfunction:: Aidge::AvgPooling(const std::array<DimSize_t, DIM> &kernel_dims, const std::string& name = "", const std::array<DimSize_t, DIM> &stride_dims = create_array<DimSize_t,DIM>(1), const std::array<DimSize_t, DIM> &dilations = create_array<DimSize_t,DIM>(1), bool ceil_mode=false)
+        .. doxygenfunction:: Aidge::AvgPooling(const std::array<DimSize_t, DIM> &kernel_dims, const std::string& name = "", const std::array<DimSize_t, DIM> &stride_dims = create_array<DimSize_t,DIM>(1), const std::array<DimSize_t, DIM> &dilations = create_array<DimSize_t,DIM>(1), bool ceil_mode=false, RoundingMode roundingMode = RoundingMode::HalfAwayFromZero)
 
 
 BatchNorm
@@ -564,22 +564,6 @@ Reshape
 
         .. doxygenfunction:: Aidge::Reshape
 
-Scaling
-~~~~~~~
-
-.. tab-set::
-    :sync-group: language
-
-    .. tab-item:: Python
-        :sync: python
-
-        Not available yet !
-
-    .. tab-item:: C++
-        :sync: cpp
-
-        .. doxygenfunction:: Aidge::Scaling
-
 Sigmoid
 ~~~~~~~
 
diff --git a/_sources/source/Tutorial/backend_cuda.nblink.txt b/_sources/source/Tutorial/backend_cuda.nblink.txt
new file mode 100644
index 0000000000000000000000000000000000000000..d457654a050aec458b38f8cb14542bbe6ebda12e
--- /dev/null
+++ b/_sources/source/Tutorial/backend_cuda.nblink.txt
@@ -0,0 +1,3 @@
+{
+    "path": "../../../examples/tutorials/Backend_cuda_tutorial/Backend_cuda.ipynb"
+}
\ No newline at end of file
diff --git a/_sources/source/Tutorial/export_cpp_add_impl.nblink.txt b/_sources/source/Tutorial/export_cpp_add_impl.nblink.txt
new file mode 100644
index 0000000000000000000000000000000000000000..a0a53e7eb63c4d592182e175e8900adcc78db987
--- /dev/null
+++ b/_sources/source/Tutorial/export_cpp_add_impl.nblink.txt
@@ -0,0 +1,3 @@
+{
+    "path": "../../../examples/tutorials/export/aidge_to_cpp/add_custom_operator/add_custom_operator.ipynb"
+}
\ No newline at end of file
diff --git a/_sources/source/Tutorial/export_cpp_quant.nblink.txt b/_sources/source/Tutorial/export_cpp_quant.nblink.txt
new file mode 100644
index 0000000000000000000000000000000000000000..3d316e30649f09d27a9d3e958d1757c575907022
--- /dev/null
+++ b/_sources/source/Tutorial/export_cpp_quant.nblink.txt
@@ -0,0 +1,3 @@
+{
+    "path": "../../../examples/tutorials/export/aidge_to_cpp/export_LeNet/export_lenet_int8.ipynb"
+}
\ No newline at end of file
diff --git a/_sources/source/Tutorial/export_stm32.nblink.txt b/_sources/source/Tutorial/export_stm32.nblink.txt
new file mode 100644
index 0000000000000000000000000000000000000000..ca8c663986f09bac8008b6ed63de7e81df51d4ac
--- /dev/null
+++ b/_sources/source/Tutorial/export_stm32.nblink.txt
@@ -0,0 +1,4 @@
+
+{
+    "path": "../../../examples/tutorials/export/aidge_to_STM32/export_LeNet/export_lenet_fp32.ipynb"
+}
\ No newline at end of file
diff --git a/_sources/source/Tutorial/export_trt.nblink.txt b/_sources/source/Tutorial/export_trt.nblink.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e1c4e64d2b4252c4ff51a7257dcc834e18a67e76
--- /dev/null
+++ b/_sources/source/Tutorial/export_trt.nblink.txt
@@ -0,0 +1,6 @@
+{
+    "path": "../../../examples/tutorials/TRT_Quantization_tutorial/tuto.ipynb",
+    "extra-media": [
+        "../../../examples/tutorials/TRT_Quantization_tutorial/static/"
+    ]
+}
\ No newline at end of file
diff --git a/_sources/source/Tutorial/index.rst.txt b/_sources/source/Tutorial/index.rst.txt
index 9fa153c66e58fbc85942e41828ac71b0e2f0d64a..7d5bee76def1868499db910a3b4ff1780b9769ad 100644
--- a/_sources/source/Tutorial/index.rst.txt
+++ b/_sources/source/Tutorial/index.rst.txt
@@ -1,8 +1,8 @@
 Tutorials
 =========
 
-Aidge 101
----------
+
+If you encounter any difficulty with the Tutorials, please create an issue `here <https://gitlab.eclipse.org/groups/eclipse/aidge/-/issues>`_.
 
 To get started with Aidge, please follow the Aidge demonstration tutorial.
 This tutorial demonstrates the basic features of the Aidge Framework, importing an ONNX, transforming a neural network graph, performing inference and a cpp export.
@@ -11,13 +11,8 @@ This tutorial demonstrates the basic features of the Aidge Framework, importing
     101_first_step.nblink
 
 
-Aidge DNN fonctionnalities
---------------------------
-
-- Manipulating databases and creating batches of data
-- Train a Deep Neural Network
-- Provide an operator implementation using Python or meta-operators
-- Perform advanced graph matching with the Graph Regular Expression tool
+🛠 Aidge functionalities
+------------------------
 
 .. nbgallery::
     database.nblink
@@ -25,33 +20,31 @@ Aidge DNN fonctionnalities
     scheduling.nblink
     learning.nblink
     ONNX.nblink
+    static_analysis.nblink
+    backend_cuda.nblink
 
-DNN Optimization
-----------------
-
-- Perform post Training Quantization
-- Perform Convolution tiling
+⚙️ Optimization tutorials
+-------------------------
 
 .. nbgallery::
     ptq.nblink
     tiling.nblink
 
-DNN export
-----------
+🚀 Export tutorials
+--------------------
 
 .. nbgallery::
     export_cpp.nblink
+    export_cpp_quant.nblink
+    export_cpp_add_impl.nblink
+    export_trt.nblink
+    export_stm32.nblink
 
-- `Exercise on adding a custom implementation for a cpp export <https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/export/aidge_to_cpp/add_custom_operator/add_custom_operator.ipynb?ref_type=heads>`_
-- `Export your DNN with TensorRT <https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/TRT_Quantization_tutorial/tuto.ipynb?ref_type=heads>`_
-- `Export your DNN for an STM32 <https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/export/aidge_to_STM32/export_LeNet/export_lenet_fp32.ipynb?ref_type=heads>`_
-
-Tutorial on adding the C++ Aidge
---------------------------------
+.. Tutorial on adding the C++ Aidge
+.. --------------------------------
 
-You can extend our operator coverage by adding an operator and its implementation in the C++ Aidge library.
-The `Add an operator and its implementation Tutorial <https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/Hardmax_operator/operator_adding.ipynb?ref_type=heads>`_ details the steps to follow.
+.. You can extend our operator coverage by adding an operator and its implementation in the C++ Aidge library.
+.. The `Add an operator and its implementation Tutorial <https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/Hardmax_operator/operator_adding.ipynb?ref_type=heads>`_ details the steps to follow.
 
-For more information on contributing to Aidge, please refer to the `wiki <https://gitlab.eclipse.org/groups/eclipse/aidge/-/wikis/Contributing>`_.
+.. For more information on contributing to Aidge, please refer to the `wiki <https://gitlab.eclipse.org/groups/eclipse/aidge/-/wikis/Contributing>`_.
 
-If you encounter any difficulty with the Tutorials, please create an issue `here <https://gitlab.eclipse.org/groups/eclipse/aidge/-/issues>`_.
diff --git a/_sources/source/Tutorial/static_analysis.nblink.txt b/_sources/source/Tutorial/static_analysis.nblink.txt
new file mode 100644
index 0000000000000000000000000000000000000000..63144992471d8d1b4b12e86bbe24ac849cec81eb
--- /dev/null
+++ b/_sources/source/Tutorial/static_analysis.nblink.txt
@@ -0,0 +1,7 @@
+{
+    "path": "../../../examples/tutorials/analysis/dinov2.ipynb",
+    "extra-media": [
+        "../../../examples/tutorials/analysis/static/"
+    ]
+
+}
\ No newline at end of file
diff --git a/_static/Tuto101.PNG b/_static/Tuto101.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..84bd1199f3f3ff8e1d6ac768047e80dc7c7caaff
Binary files /dev/null and b/_static/Tuto101.PNG differ
diff --git a/_static/TutoDatabase.PNG b/_static/TutoDatabase.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..3384244f425826eadea425b956737b7d563f45ee
Binary files /dev/null and b/_static/TutoDatabase.PNG differ
diff --git a/_static/TutoExport101.PNG b/_static/TutoExport101.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..fef08dd9ee1cb5ebbb9f0a0aa3688d141ac1de32
Binary files /dev/null and b/_static/TutoExport101.PNG differ
diff --git a/_static/TutoExportCpp.PNG b/_static/TutoExportCpp.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..e474e6b2be1c207f14cd1251947755a7d7c92c3c
Binary files /dev/null and b/_static/TutoExportCpp.PNG differ
diff --git a/_static/TutoExportSTM32.PNG b/_static/TutoExportSTM32.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..091a9550a1c377f930fb41260f2cc06873a75b0f
Binary files /dev/null and b/_static/TutoExportSTM32.PNG differ
diff --git a/_static/TutoExportTRT.PNG b/_static/TutoExportTRT.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..066dceeb4b7aca2f2022b40d30b82a02ff3a351c
Binary files /dev/null and b/_static/TutoExportTRT.PNG differ
diff --git a/_static/TutoGraphMatching.PNG b/_static/TutoGraphMatching.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..fee3b896c2c65da93b9f883d3cb3307d378395e2
Binary files /dev/null and b/_static/TutoGraphMatching.PNG differ
diff --git a/_static/TutoLearning.PNG b/_static/TutoLearning.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..2815e428b94a4a6f77625f00682337c2bbb823f3
Binary files /dev/null and b/_static/TutoLearning.PNG differ
diff --git a/_static/TutoONNX.PNG b/_static/TutoONNX.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..91da28ec5de5c3ba7194221ff6fd5d4dc92964f7
Binary files /dev/null and b/_static/TutoONNX.PNG differ
diff --git a/_static/TutoPTQ.png b/_static/TutoPTQ.png
new file mode 100644
index 0000000000000000000000000000000000000000..c591aef1e41b09a0f79fa1d18311de1b4d8fcf7a
Binary files /dev/null and b/_static/TutoPTQ.png differ
diff --git a/_static/TutoScheduling.PNG b/_static/TutoScheduling.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..259be16229813c792cff0f257d83fdbebedd5113
Binary files /dev/null and b/_static/TutoScheduling.PNG differ
diff --git a/genindex.html b/genindex.html
index d470e472a11182d7d15fad930ef402b81bed81de..5bc79ae9d51a81c074c582439b5e9f1dbe1d7d89 100644
--- a/genindex.html
+++ b/genindex.html
@@ -65,7 +65,7 @@ window.addEventListener("load", () => mermaid.run());
     <link rel="search" title="Search" href="search.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -451,7 +451,7 @@ window.addEventListener("load", () => mermaid.run());
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge3AddERKNSt6stringE">Aidge::Add (C++ function)</a>
 </li>
-      <li><a href="source/API/Core/operator.html#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb">Aidge::AvgPooling (C++ function)</a>
+      <li><a href="source/API/Core/operator.html#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode">Aidge::AvgPooling (C++ function)</a>
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE">Aidge::BatchNorm (C++ function)</a>
 </li>
@@ -519,7 +519,7 @@ window.addEventListener("load", () => mermaid.run());
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge3ErfERKNSt6stringE">Aidge::Erf (C++ function)</a>
 </li>
-      <li><a href="source/API/Core/recipes.html#_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEb">Aidge::expandMetaOps (C++ function)</a>
+      <li><a href="source/API/Core/recipes.html#_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb">Aidge::expandMetaOps (C++ function)</a>
 </li>
       <li><a href="source/API/Core/recipes.html#_CPPv4N5Aidge16explicitCastMoveENSt10shared_ptrI9GraphViewEE">Aidge::explicitCastMove (C++ function)</a>
 </li>
@@ -832,8 +832,6 @@ window.addEventListener("load", () => mermaid.run());
       <li><a href="source/API/Core/operator.html#_CPPv4NK5Aidge8Operator20getAvailableBackendsEv">Aidge::Operator::getAvailableBackends (C++ function)</a>
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4NK5Aidge8Operator7getImplEv">Aidge::Operator::getImpl (C++ function)</a>
-</li>
-      <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge8Operator13getInputsNameEv">Aidge::Operator::getInputsName (C++ function)</a>
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4NK5Aidge8Operator17getNbConsumedDataEK9IOIndex_t">Aidge::Operator::getNbConsumedData (C++ function)</a>
 </li>
@@ -842,8 +840,6 @@ window.addEventListener("load", () => mermaid.run());
       <li><a href="source/API/Core/operator.html#_CPPv4NK5Aidge8Operator17getNbRequiredDataEK9IOIndex_t">Aidge::Operator::getNbRequiredData (C++ function)</a>
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4NK5Aidge8Operator22getNbRequiredProtectedEK9IOIndex_t">Aidge::Operator::getNbRequiredProtected (C++ function)</a>
-</li>
-      <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge8Operator14getOutputsNameEv">Aidge::Operator::getOutputsName (C++ function)</a>
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4NK5Aidge8Operator11getRawInputEK9IOIndex_t">Aidge::Operator::getRawInput (C++ function)</a>
 </li>
@@ -963,7 +959,7 @@ window.addEventListener("load", () => mermaid.run());
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb">Aidge::Producer (C++ function)</a>, <a href="source/API/Core/operator.html#_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb">[1]</a>
 </li>
-      <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE">Aidge::ReduceMean (C++ function)</a>
+      <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE">Aidge::ReduceMean (C++ function)</a>
 </li>
       <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge4ReLUERKNSt6stringE">Aidge::ReLU (C++ function)</a>
 </li>
@@ -974,8 +970,6 @@ window.addEventListener("load", () => mermaid.run());
       <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE">Aidge::Reshape (C++ function)</a>
 </li>
       <li><a href="source/API/Core/graph.html#_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE">Aidge::Residual (C++ function)</a>
-</li>
-      <li><a href="source/API/Core/operator.html#_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE">Aidge::Scaling (C++ function)</a>
 </li>
       <li><a href="source/API/Core/scheduler.html#_CPPv4N5Aidge9SchedulerE">Aidge::Scheduler (C++ class)</a>
 </li>
@@ -1305,7 +1299,7 @@ window.addEventListener("load", () => mermaid.run());
 </li>
       <li><a href="source/API/Core/data.html#_CPPv4NK5Aidge6Tensor7stridesEv">Aidge::Tensor::strides (C++ function)</a>
 </li>
-      <li><a href="source/API/Core/data.html#_CPPv4I00EN5Aidge6Tensor6TensorE1T">Aidge::Tensor::Tensor (C++ function)</a>, <a href="source/API/Core/data.html#_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE">[1]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E">[2]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E">[3]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E">[4]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E">[5]</a>, <a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat">[6]</a>, <a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor6TensorERK6Tensor">[7]</a>, <a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor6TensorERKNSt6vectorI9DimSize_tEE">[8]</a>, <a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor6TensorERR6Tensor">[9]</a>
+      <li><a href="source/API/Core/data.html#_CPPv4I00EN5Aidge6Tensor6TensorE1T">Aidge::Tensor::Tensor (C++ function)</a>, <a href="source/API/Core/data.html#_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE">[1]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E">[2]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E">[3]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E">[4]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E">[5]</a>, <a href="source/API/Core/data.html#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E">[6]</a>, <a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat">[7]</a>, <a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor6TensorERK6Tensor">[8]</a>, <a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor6TensorERKNSt6vectorI9DimSize_tEE">[9]</a>, <a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor6TensorERR6Tensor">[10]</a>
 </li>
       <li><a href="source/API/Core/data.html#_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE">Aidge::Tensor::toCoord (C++ function)</a>
 </li>
@@ -2036,6 +2030,10 @@ window.addEventListener("load", () => mermaid.run());
       <li><a href="source/API/Core/data.html#aidge_core.Tensor.sqrt">sqrt() (aidge_core.Tensor method)</a>
 </li>
       <li><a href="source/API/Core/operator.html#aidge_core.Sqrt">Sqrt() (in module aidge_core)</a>
+</li>
+      <li><a href="source/API/Core/data.html#aidge_core.Tensor.stride">stride() (aidge_core.Tensor method)</a>
+</li>
+      <li><a href="source/API/Core/data.html#aidge_core.Tensor.strides">strides() (aidge_core.Tensor method)</a>
 </li>
       <li><a href="source/API/Core/operator.html#aidge_core.Sub">Sub() (in module aidge_core)</a>
 </li>
diff --git a/index.html b/index.html
index 6d7c109b42d641ad188eca0b37c824a003292209..eaeea425e784795e743b31f3814aa9adf0af6007 100644
--- a/index.html
+++ b/index.html
@@ -61,7 +61,7 @@
     <link rel="next" title="Get Started" href="source/GetStarted/index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -360,10 +360,10 @@
 <h1>Aidge<a class="headerlink" href="#aidge" title="Link to this heading">#</a></h1>
 <dl class="field-list simple">
 <dt class="field-odd">Release<span class="colon">:</span></dt>
-<dd class="field-odd"><p>0.6.0</p>
+<dd class="field-odd"><p>0.6.1</p>
 </dd>
 <dt class="field-even">Date<span class="colon">:</span></dt>
-<dd class="field-even"><p>May 11, 2025</p>
+<dd class="field-even"><p>May 19, 2025</p>
 </dd>
 </dl>
 <div class="sd-container-fluid sd-sphinx-override sd-mt-4 sd-mb-4 sd-ml-0 sd-mr-0 docutils">
diff --git a/objects.inv b/objects.inv
index 5bbbd5e1b311251b9eb12c3b826a377e05357465..9acbc50b8a3eb705773f299eeb65ff87fae297a1 100644
Binary files a/objects.inv and b/objects.inv differ
diff --git a/search.html b/search.html
index 394238eb2a1b86a013ef3ed8d6ffb89c4edf1b26..e74236366cc0600fc9bdf0cdb089cf0bcb1c94a8 100644
--- a/search.html
+++ b/search.html
@@ -67,7 +67,7 @@ window.addEventListener("load", () => mermaid.run());
     <link rel="search" title="Search" href="#" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/searchindex.js b/searchindex.js
index 63718642e2b11eef17ead0d037fb293ee3f29697..8e40a0d3cc0086660e7aeea713083d779d152f63 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"(Optional) Generate an input file for tests": [[19, "(Optional)-Generate-an-input-file-for-tests"]], "(if needed) Download the model": [[19, "(if-needed)-Download-the-model"], [26, "(if-needed)-Download-the-model"]], "API": [[14, null]], "Adapt to backend": [[10, "adapt-to-backend"]], "Add": [[9, "add"]], "Add extra files to complete the export": [[34, "add-extra-files-to-complete-the-export"]], "Advanced usage": [[23, "Advanced-usage"]], "Aggregate KPI from a subgraph": [[42, "aggregate-kpi-from-a-subgraph"]], "Aidge": [[0, null]], "Aidge 101": [[24, "aidge-101"]], "Aidge DNN fonctionnalities": [[24, "aidge-dnn-fonctionnalities"]], "Aidge Export TensorRT API": [[12, null]], "Aidge ONNX API": [[13, null]], "Aidge ONNX tutorial": [[20, null]], "Aidge backend CPU": [[1, null]], "Aidge backend OpenCV API": [[2, null]], "Aidge core API": [[8, null]], "Aidge database": [[25, "Aidge-database"]], "Aidge demonstration": [[19, null]], "Aidge tiling demonstration": [[28, null]], "Applying the PTQ to the model \u2026": [[26, "Applying-the-PTQ-to-the-model-..."]], "Average Pooling": [[9, "average-pooling"]], "Backend": [[3, null]], "Base Matching Rules": [[23, "Base-Matching-Rules"]], "BatchNorm": [[9, "batchnorm"]], "Benchmark neural network model": [[30, null]], "Build on Linux": [[16, "build-on-linux"]], "C++ Compilation": [[16, "c-compilation"]], "Cast": [[9, "cast"]], "Change topology (model isomorphism)": [[41, "change-topology-model-isomorphism"]], "Clone a graph": [[40, "clone-a-graph"]], "Compilation options": [[16, "compilation-options"]], "Compile the export": [[19, "Compile-the-export"]], "Compile the export and test it": [[22, "Compile-the-export-and-test-it"]], "Computational footprint": [[42, "computational-footprint"]], "Computational graph": [[40, null]], "Compute score metrics": [[30, "compute-score-metrics"]], "Computing output dimensions": [[20, "Computing-output-dimensions"]], "Computing the model accuracy \u2026": [[26, "Computing-the-model-accuracy-..."]], "Computing the quantized accuracy \u2026": [[26, "Computing-the-quantized-accuracy-..."]], "Concat": [[9, "concat"]], "Conditional nodes scheduling": [[27, "Conditional-nodes-scheduling"]], "Configure the model for inference": [[19, "Configure-the-model-for-inference"]], "Connector": [[6, "connector"]], "Constant folding": [[10, "constant-folding"]], "Conv": [[9, "conv"]], "ConvDepthWise": [[9, "convdepthwise"]], "Convert Conv to MatMul": [[10, "convert-conv-to-matmul"]], "Converters Aidge to ONNX": [[13, "converters-aidge-to-onnx"]], "Converters ONNX to Aidge": [[13, "converters-onnx-to-aidge"]], "Core": [[29, "core"]], "Core operator": [[40, "core-operator"]], "Create a dataflow pipelining": [[27, "Create-a-dataflow-pipelining"]], "Create a scheduler and run inference": [[19, "Create-a-scheduler-and-run-inference"]], "Create an input tensor": [[19, "Create-an-input-tensor"]], "Creating Aidge model": [[25, "Creating-Aidge-model"]], "Creating a MetaNode": [[20, "Creating-a-MetaNode"]], "DNN Optimization": [[24, "dnn-optimization"]], "DNN export": [[24, "dnn-export"]], "Data": [[4, null], [31, null]], "Data Structure": [[31, "data-structure"]], "Data partitioning": [[31, "data-partitioning"]], "DataProvider": [[4, "dataprovider"], [31, "dataprovider"]], "Database": [[4, "database"], [31, "database"]], "Database MNIST": [[21, null]], "Databases": [[2, "databases"]], "Default scheduler": [[33, "default-scheduler"]], "Define mermaid visualizer function": [[28, "Define-mermaid-visualizer-function"]], "Definition": [[40, "definition"]], "Describe graph patterns": [[43, "describe-graph-patterns"]], "Design and export the computation kernels": [[34, "design-and-export-the-computation-kernels"]], "Direct tensors produce whole data only once": [[27, "Direct-tensors-produce-whole-data-only-once"]], "Div": [[9, "div"]], "Doing the PTQ with AIDGE": [[26, "Doing-the-PTQ-with-AIDGE"]], "Download the model": [[22, "Download-the-model"]], "Draw your own number": [[22, "Draw-your-own-number"]], "Ensure robustness": [[32, null]], "Environment setup \u2026": [[26, "Environment-setup-..."]], "Erf": [[9, "erf"]], "Example of Operator": [[40, "example-of-operator"]], "Examples": [[6, "examples"]], "Expand meta operators": [[10, "expand-meta-operators"]], "Expand operator": [[43, "expand-operator"]], "Expansion": [[23, "Expansion"]], "Explicit Cast Move": [[10, "explicit-cast-move"]], "Explicit Transpose": [[10, "explicit-transpose"]], "Explicit syntax": [[40, "explicit-syntax"]], "Export": [[5, null], [13, "export"], [19, "Export"]], "Export a MNIST model to a CPP standalone project": [[22, null]], "Export function": [[12, "export-function"]], "Export implementation phase": [[34, "export-implementation-phase"]], "Export lib": [[5, "export-lib"]], "Export mapping phase": [[34, "export-mapping-phase"]], "Export node": [[5, "export-node"]], "Export scheduler": [[5, "export-scheduler"]], "Export strategy": [[34, "export-strategy"]], "Export the attributes of the nodes": [[34, "export-the-attributes-of-the-nodes"]], "Export the model": [[22, "Export-the-model"]], "Export the parameters of the model": [[34, "export-the-parameters-of-the-model"]], "Export the scheduling of the graph": [[34, "export-the-scheduling-of-the-graph"]], "Export to an integrated kernel library": [[34, "export-to-an-integrated-kernel-library"]], "FC": [[9, "fc"]], "Factorization": [[23, "Factorization"]], "Framework architecture": [[29, null]], "Functional syntax": [[40, "functional-syntax"]], "Fuse BatchNorm": [[10, "fuse-batchnorm"]], "Fuse MatMul & added": [[41, "fuse-matmul-added"]], "Fuse MatMul and Add to FC": [[10, "fuse-matmul-and-add-to-fc"]], "Fuse to meta operator": [[10, "fuse-to-meta-operator"]], "Gather": [[9, "gather"]], "Generate an export in C++": [[19, "Generate-an-export-in-C++"]], "Generate inputs for testing the model from your drawing": [[22, "Generate-inputs-for-testing-the-model-from-your-drawing"]], "Generate main file": [[19, "Generate-main-file"]], "Generic Operator": [[9, "generic-operator"]], "Generic hardware model and mapping heuristics": [[18, "generic-hardware-model-and-mapping-heuristics"]], "Generic operator": [[40, "generic-operator"]], "Generic, compiler-agnostic tiling methods": [[18, "generic-compiler-agnostic-tiling-methods"]], "Get Started": [[15, null]], "Get node KPI": [[42, "get-node-kpi"]], "Graph": [[6, null]], "Graph Matching": [[7, null], [43, "graph-matching"]], "Graph Regex": [[43, "graph-regex"]], "Graph Regex Lexer": [[43, "graph-regex-lexer"]], "Graph Regex Parser": [[43, "graph-regex-parser"]], "Graph View": [[40, "graph-view"]], "Graph functions": [[12, "graph-functions"]], "Graph helpers": [[6, "graph-helpers"]], "Graph manipulation": [[23, "Graph-manipulation"]], "Graph matching": [[23, "Graph-matching"]], "Graph matching and manipulation with Aidge": [[23, null]], "Graph transformation": [[19, "Graph-transformation"], [43, "graph-transformation"]], "GraphView": [[6, "graphview"]], "High level functionalities": [[35, "high-level-functionalities"]], "Identity": [[9, "identity"]], "Implementation of an operator": [[40, "implementation-of-an-operator"]], "Implementation selection": [[33, "implementation-selection"]], "Implementation specification": [[3, "implementation-specification"]], "Implementations & Backends": [[29, "implementations-backends"]], "Implementations and backends": [[33, "implementations-and-backends"]], "Import": [[13, "import"]], "Import Aidge": [[19, "Import-Aidge"]], "Importing an ONNX": [[20, "Importing-an-ONNX"]], "Importing the model in AIDGE \u2026": [[26, "Importing-the-model-in-AIDGE-..."]], "Inference": [[19, "Inference"]], "Input/Output specification": [[3, "input-output-specification"]], "Install": [[16, null]], "Install Python": [[16, "install-python"]], "Installation and Requirements": [[21, "Installation-and-Requirements"]], "Introduction": [[40, "introduction"]], "Keras Tensor interoperability": [[36, "keras-tensor-interoperability"]], "Keras interoperability": [[36, "keras-interoperability"]], "Keras model interoperability": [[36, "keras-model-interoperability"]], "LSTM": [[9, "lstm"]], "LeakyReLU": [[9, "leakyrelu"]], "Learn model": [[38, null]], "Learn on edge": [[37, null]], "License": [[0, "license"]], "Load and store model": [[39, null]], "Load model from ONNX": [[39, "load-model-from-onnx"]], "Load the model in Aidge and manipulate it": [[22, "Load-the-model-in-Aidge-and-manipulate-it"]], "MAKE Options": [[12, "make-options"]], "MNIST": [[2, "mnist"]], "Make a deep copy": [[40, "make-a-deep-copy"]], "Make a deep copy with shared parameters": [[40, "make-a-deep-copy-with-shared-parameters"]], "Master the C-P model": [[27, "Master-the-C-P-model"]], "MatMul": [[9, "matmul"]], "MatMul tiling": [[10, "matmul-tiling"]], "Match alternative blocks": [[23, "Match-alternative-blocks"]], "Match any node type": [[23, "Match-any-node-type"]], "Match node attributes with a lambda function": [[23, "Match-node-attributes-with-a-lambda-function"]], "Match parallel blocks": [[23, "Match-parallel-blocks"]], "Match solver": [[43, "match-solver"]], "Match the first / last node of some type": [[23, "Match-the-first-/-last-node-of-some-type"]], "Match \u201cno edge\u201d": [[23, "Match-%22no-edge%22"]], "Measure excution time": [[30, "measure-excution-time"]], "Memorize": [[9, "memorize"]], "Memory footprint": [[42, "memory-footprint"]], "Meta Operator": [[9, "meta-operator"]], "MetaNode": [[43, "metanode"]], "Model hardware & architecture rules": [[34, "model-hardware-architecture-rules"]], "Move": [[9, "move"]], "Mul": [[9, "mul"]], "Multi-layer spatial tiling": [[41, "multi-layer-spatial-tiling"]], "Node": [[6, "node"], [40, "node"]], "Node Regex": [[43, "node-regex"]], "Node Regex Interpreter": [[43, "node-regex-interpreter"]], "Node Regex Lexer": [[43, "node-regex-lexer"]], "Node Regex Parser": [[43, "node-regex-parser"]], "Note": [[6, "note"]], "Numpy interoperability": [[36, "numpy-interoperability"]], "ONNX": [[39, "onnx"]], "ONNX Import": [[19, "ONNX-Import"]], "Operator": [[40, "operator"]], "Operator base class": [[9, "operator-base-class"]], "OperatorTensor base class": [[9, "operatortensor-base-class"]], "Operators": [[9, null], [40, "operators"]], "Optimize graph": [[41, null]], "Optimize network": [[19, "Optimize-network"]], "Overview": [[30, "overview"], [42, "overview"], [43, "overview"]], "Pad": [[9, "pad"]], "PaddedAvgPooling": [[9, "paddedavgpooling"]], "PaddedConv": [[9, "paddedconv"]], "PaddedConvDepthWise": [[9, "paddedconvdepthwise"]], "PaddedMaxPooling": [[9, "paddedmaxpooling"]], "Parallel scheduler": [[11, "parallel-scheduler"]], "Parameters": [[6, "parameters"]], "Perform an evaluation of the LeNet-like on Aidge": [[21, "Perform-an-evaluation-of-the-LeNet-like-on-Aidge"]], "Perform an export": [[34, null]], "Plateform interoperability": [[36, null]], "Plugin Operator": [[40, "plugin-operator"]], "Plugin helper": [[12, "plugin-helper"]], "Plugins": [[29, "plugins"]], "Pop": [[9, "pop"]], "Post Training Quantization with AIDGE": [[26, null]], "Pow": [[9, "pow"]], "Powerful graph search & replace engine": [[18, "powerful-graph-search-replace-engine"]], "Predefined meta-operators": [[9, "predefined-meta-operators"]], "Predefined operators": [[9, "predefined-operators"]], "Producer": [[9, "producer"], [40, "producer"]], "Producers produce whole tensor data on demand": [[27, "Producers-produce-whole-tensor-data-on-demand"]], "Project constraints": [[34, "project-constraints"]], "Proposed implementation": [[41, "proposed-implementation"]], "Providing an implementation": [[20, "Providing-an-implementation"]], "PyTorch interoperability": [[36, "pytorch-interoperability"]], "PyTorch model interoperability": [[36, "pytorch-model-interoperability"]], "PyTorch tensor interoperability": [[36, "pytorch-tensor-interoperability"]], "Quantifiers": [[23, "Quantifiers"]], "Quantization dataset creation \u2026": [[26, "Quantization-dataset-creation-..."]], "Quick Start": [[17, null]], "ReLU": [[9, "relu"]], "Recipes": [[10, null]], "ReduceMean": [[9, "reducemean"]], "Register export functions": [[13, "register-export-functions"]], "Register import functions": [[13, "register-import-functions"]], "Registering new node import": [[20, "Registering-new-node-import"]], "Remove Dropout": [[10, "remove-dropout"]], "Remove Flatten": [[10, "remove-flatten"]], "Remove nodes": [[23, "Remove-nodes"]], "Remove operator": [[43, "remove-operator"]], "Replace nodes": [[23, "Replace-nodes"]], "Replace operator": [[43, "replace-operator"]], "Reset the C-P model": [[27, "Reset-the-C-P-model"]], "Reshape": [[9, "reshape"]], "Retrieve the onnx model": [[20, "Retrieve-the-onnx-model"]], "Returns": [[6, "returns"]], "Run the export": [[19, "Run-the-export"]], "Running some example inferences \u2026": [[26, "Running-some-example-inferences-..."]], "Running some quantized inferences \u2026": [[26, "Running-some-quantized-inferences-..."]], "Runtime graph execution": [[33, null]], "Scaling": [[9, "scaling"]], "Scheduler": [[11, null], [33, "scheduler"], [34, "scheduler"]], "Scheduler base class": [[11, "scheduler-base-class"]], "Seamless interoperability with ONNX, PyTorch and TensorFlow": [[18, "seamless-interoperability-with-onnx-pytorch-and-tensorflow"]], "Sequential scheduler": [[11, "sequential-scheduler"]], "Set up learning objects": [[25, "Set-up-learning-objects"]], "Setting up the AIDGE scheduler \u2026": [[26, "Setting-up-the-AIDGE-scheduler-..."]], "Setting up the notebook": [[19, "Setting-up-the-notebook"], [20, "Setting-up-the-notebook"]], "Sigmoid": [[9, "sigmoid"]], "Simple and effective code generation engine": [[18, "simple-and-effective-code-generation-engine"]], "Slice": [[9, "slice"]], "Softmax": [[9, "softmax"]], "Specifiyng Edges": [[23, "Specifiyng-Edges"]], "Sqrt": [[9, "sqrt"]], "State machine": [[43, "state-machine"]], "Static analysis": [[19, "Static-analysis"], [42, null]], "Stimuli": [[31, "stimuli"]], "Sub": [[9, "sub"]], "Syntax to create a computational graph": [[40, "syntax-to-create-a-computational-graph"]], "Tanh": [[9, "tanh"]], "Tensor": [[4, "tensor"], [31, "tensor"]], "The Quantization Pipeline": [[26, "The-Quantization-Pipeline"]], "Tiling": [[41, "tiling"]], "Training a simple Neural Network": [[25, null]], "Training loop": [[25, "Training-loop"]], "Transform graph": [[43, null]], "Transformation functions": [[43, "transformation-functions"]], "Transmitter": [[40, "transmitter"]], "Transpose": [[9, "transpose"]], "Tutorial on adding the C++ Aidge": [[24, "tutorial-on-adding-the-c-aidge"]], "Tutorials": [[24, null]], "UTILS": [[2, "utils"]], "Understanding Aidge\u2019s scheduling": [[27, null]], "Updating ONNX import": [[20, "Updating-ONNX-import"]], "User Guide": [[35, null]], "Well-characterized, state-of-the-art PTQ and QAT methods": [[18, "well-characterized-state-of-the-art-ptq-and-qat-methods"]], "Well-defined consumer-producer model and scheduling": [[18, "well-defined-consumer-producer-model-and-scheduling"]], "Well-defined dataflow graph IR model": [[18, "well-defined-dataflow-graph-ir-model"]], "What is Aidge?": [[0, "what-is-aidge"]], "What is Network Quantization ?": [[26, "What-is-Network-Quantization-?"]], "Why Aidge?": [[18, null]], "Work is done !": [[26, "Work-is-done-!"]], "Workflow overview": [[35, "workflow-overview"]], "Working with generic operator": [[20, "Working-with-generic-operator"]]}, "docnames": ["index", "source/API/BackendCPU/index", "source/API/BackendOPENCV/index", "source/API/Core/backend", "source/API/Core/data", "source/API/Core/export", "source/API/Core/graph", "source/API/Core/graphMatching", "source/API/Core/index", "source/API/Core/operator", "source/API/Core/recipes", "source/API/Core/scheduler", "source/API/ExportTensorRT/index", "source/API/Onnx/index", "source/API/index", "source/GetStarted/index", "source/GetStarted/install", "source/GetStarted/quickStart", "source/GetStarted/whyAidge", "source/Tutorial/101_first_step", "source/Tutorial/ONNX", "source/Tutorial/database", "source/Tutorial/export_cpp", "source/Tutorial/graph_matching", "source/Tutorial/index", "source/Tutorial/learning", "source/Tutorial/ptq", "source/Tutorial/scheduling", "source/Tutorial/tiling", "source/UserGuide/architecture", "source/UserGuide/benchmark", "source/UserGuide/data", "source/UserGuide/ensureRobustness", "source/UserGuide/executeGraph", "source/UserGuide/export", "source/UserGuide/index", "source/UserGuide/interoperability", "source/UserGuide/learnEdge", "source/UserGuide/learnModel", "source/UserGuide/loadStoreModel", "source/UserGuide/modelGraph", "source/UserGuide/optimizeGraph", "source/UserGuide/staticAnalysis", "source/UserGuide/transformGraph"], "envversion": {"nbsphinx": 4, "sphinx": 64, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.todo": 2, "sphinxcontrib.bibtex": 9}, "filenames": ["index.rst", "source/API/BackendCPU/index.rst", "source/API/BackendOPENCV/index.rst", "source/API/Core/backend.rst", "source/API/Core/data.rst", "source/API/Core/export.rst", "source/API/Core/graph.rst", "source/API/Core/graphMatching.rst", "source/API/Core/index.rst", "source/API/Core/operator.rst", "source/API/Core/recipes.rst", "source/API/Core/scheduler.rst", "source/API/ExportTensorRT/index.rst", "source/API/Onnx/index.rst", "source/API/index.rst", "source/GetStarted/index.rst", "source/GetStarted/install.rst", "source/GetStarted/quickStart.rst", "source/GetStarted/whyAidge.rst", "source/Tutorial/101_first_step.nblink", "source/Tutorial/ONNX.nblink", "source/Tutorial/database.nblink", "source/Tutorial/export_cpp.nblink", "source/Tutorial/graph_matching.nblink", "source/Tutorial/index.rst", "source/Tutorial/learning.nblink", "source/Tutorial/ptq.nblink", "source/Tutorial/scheduling.nblink", "source/Tutorial/tiling.nblink", "source/UserGuide/architecture.rst", "source/UserGuide/benchmark.rst", "source/UserGuide/data.rst", "source/UserGuide/ensureRobustness.rst", "source/UserGuide/executeGraph.rst", "source/UserGuide/export.rst", "source/UserGuide/index.rst", "source/UserGuide/interoperability.rst", "source/UserGuide/learnEdge.rst", "source/UserGuide/learnModel.rst", "source/UserGuide/loadStoreModel.rst", "source/UserGuide/modelGraph.rst", "source/UserGuide/optimizeGraph.rst", "source/UserGuide/staticAnalysis.rst", "source/UserGuide/transformGraph.rst"], "indexentries": {"__init__() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.__init__", false]], "__init__() (aidge_core.connector method)": [[6, "aidge_core.Connector.__init__", false]], "__init__() (aidge_core.dataprovider method)": [[4, "aidge_core.DataProvider.__init__", false]], "__init__() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.__init__", false]], "__init__() (aidge_core.export_utils.exportnode method)": [[5, "aidge_core.export_utils.ExportNode.__init__", false]], "__init__() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.__init__", false]], "__init__() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.__init__", false]], "__init__() (aidge_core.implspec method)": [[3, "aidge_core.ImplSpec.__init__", false]], "__init__() (aidge_core.iospec method)": [[3, "aidge_core.IOSpec.__init__", false]], "__init__() (aidge_core.node method)": [[6, "aidge_core.Node.__init__", false]], "__init__() (aidge_core.operator method)": [[9, "aidge_core.Operator.__init__", false]], "__init__() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.__init__", false]], "__init__() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.__init__", false]], "__init__() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.__init__", false]], "__init__() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.__init__", false]], "__init__() (aidge_core.singlepassgraphmatching method)": [[7, "aidge_core.SinglePassGraphMatching.__init__", false]], "__init__() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.__init__", false]], "abs() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.abs", false]], "adapt_to_backend() (in module aidge_core)": [[10, "aidge_core.adapt_to_backend", false]], "add() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.add", false]], "add() (in module aidge_core)": [[9, "aidge_core.Add", false]], "add_child() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.add_child", false]], "add_child() (aidge_core.node method)": [[6, "aidge_core.Node.add_child", false]], "add_kernel_to_copy() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.add_kernel_to_copy", false]], "add_node_lambda() (aidge_core.singlepassgraphmatching method)": [[7, "aidge_core.SinglePassGraphMatching.add_node_lambda", false]], "add_ordered_outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.add_ordered_outputs", false]], "aidge::adapttobackend (c++ function)": [[10, "_CPPv4N5Aidge14adaptToBackendENSt10shared_ptrI9GraphViewEE", false]], "aidge::add (c++ function)": [[9, "_CPPv4N5Aidge3AddERKNSt6stringE", false]], "aidge::avgpooling (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::batchnorm (c++ function)": [[9, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", false]], "aidge::cast (c++ function)": [[9, "_CPPv4N5Aidge4CastEK8DataTypeRKNSt6stringE", false]], "aidge::concat (c++ function)": [[9, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", false]], "aidge::connector (c++ class)": [[6, "_CPPv4N5Aidge9ConnectorE", false]], "aidge::connector::connector (c++ function)": [[6, "_CPPv4N5Aidge9Connector9ConnectorENSt10shared_ptrI4NodeEE", false], [6, "_CPPv4N5Aidge9Connector9ConnectorEv", false]], "aidge::connector::index (c++ function)": [[6, "_CPPv4NK5Aidge9Connector5indexEv", false]], "aidge::connector::node (c++ function)": [[6, "_CPPv4NK5Aidge9Connector4nodeEv", false]], "aidge::connector::operator[] (c++ function)": [[6, "_CPPv4NK5Aidge9ConnectorixE9IOIndex_t", false]], "aidge::connector::size (c++ function)": [[6, "_CPPv4NK5Aidge9Connector4sizeEv", false]], "aidge::connector::~connector (c++ function)": [[6, "_CPPv4N5Aidge9ConnectorD0Ev", false]], "aidge::constantfolding (c++ function)": [[10, "_CPPv4N5Aidge15constantFoldingENSt10shared_ptrI9GraphViewEEb", false]], "aidge::conv (c++ function)": [[9, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::convdepthwise (c++ function)": [[9, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::convtomatmul (c++ function)": [[10, "_CPPv4N5Aidge12convToMatMulENSt10shared_ptrI9GraphViewEE", false]], "aidge::database (c++ class)": [[4, "_CPPv4N5Aidge8DatabaseE", false]], "aidge::database::database (c++ function)": [[4, "_CPPv4N5Aidge8Database8DatabaseEv", false]], "aidge::database::getitem (c++ function)": [[4, "_CPPv4NK5Aidge8Database7getItemEKNSt6size_tE", false]], "aidge::database::getlen (c++ function)": [[4, "_CPPv4NK5Aidge8Database6getLenEv", false]], "aidge::database::getnbmodalities (c++ function)": [[4, "_CPPv4NK5Aidge8Database15getNbModalitiesEv", false]], "aidge::database::~database (c++ function)": [[4, "_CPPv4N5Aidge8DatabaseD0Ev", false]], "aidge::dataprovider (c++ class)": [[4, "_CPPv4N5Aidge12DataProviderE", false]], "aidge::dataprovider::dataprovider (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", false]], "aidge::dataprovider::done (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider4doneEv", false]], "aidge::dataprovider::getindexbatch (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider13getIndexBatchEv", false]], "aidge::dataprovider::getnbbatch (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider10getNbBatchEv", false]], "aidge::dataprovider::incrementindexbatch (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider19incrementIndexBatchEv", false]], "aidge::dataprovider::iter (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider4iterEv", false]], "aidge::dataprovider::next (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider4nextEv", false]], "aidge::dataprovider::readbatch (c++ function)": [[4, "_CPPv4NK5Aidge12DataProvider9readBatchEv", false]], "aidge::dataprovider::resetindexbatch (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider15resetIndexBatchEv", false]], "aidge::dataprovider::setbatches (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider10setBatchesEv", false]], "aidge::div (c++ function)": [[9, "_CPPv4N5Aidge3DivERKNSt6stringE", false]], "aidge::erf (c++ function)": [[9, "_CPPv4N5Aidge3ErfERKNSt6stringE", false]], "aidge::expandmetaops (c++ function)": [[10, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEb", false]], "aidge::explicitcastmove (c++ function)": [[10, "_CPPv4N5Aidge16explicitCastMoveENSt10shared_ptrI9GraphViewEE", false]], "aidge::explicittranspose (c++ function)": [[10, "_CPPv4N5Aidge17explicitTransposeENSt10shared_ptrI9GraphViewEE", false]], "aidge::fc (c++ function)": [[9, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", false]], "aidge::fusebatchnorm (c++ function)": [[10, "_CPPv4N5Aidge13fuseBatchNormENSt10shared_ptrI9GraphViewEE", false]], "aidge::fusetometaops (c++ function)": [[10, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", false]], "aidge::gather (c++ function)": [[9, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", false]], "aidge::generategraph (c++ function)": [[6, "_CPPv4N5Aidge13generateGraphERKNSt6vectorI9ConnectorEE", false]], "aidge::genericoperator (c++ function)": [[9, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", false], [9, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", false]], "aidge::getconnectedgraphview (c++ function)": [[6, "_CPPv4N5Aidge21getConnectedGraphViewENSt10shared_ptrI4NodeEE", false]], "aidge::graphview (c++ class)": [[6, "_CPPv4N5Aidge9GraphViewE", false]], "aidge::graphview::add (c++ function)": [[6, "_CPPv4N5Aidge9GraphView3addE7NodePtrb", false], [6, "_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb", false], [6, "_CPPv4N5Aidge9GraphView3addENSt3setI7NodePtrEEb", false], [6, "_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb", false]], "aidge::graphview::addchild (c++ function)": [[6, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", false], [6, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", false], [6, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", false]], "aidge::graphview::addorderedoutputs (c++ function)": [[6, "_CPPv4N5Aidge9GraphView17addOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEEi", false]], "aidge::graphview::clone (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView5cloneEv", false]], "aidge::graphview::clonecallback (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView13cloneCallbackEPF7NodePtr7NodePtrE", false]], "aidge::graphview::clonesharedoperators (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView20cloneSharedOperatorsEv", false]], "aidge::graphview::clonesharedproducers (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView20cloneSharedProducersEv", false]], "aidge::graphview::compile (c++ function)": [[6, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", false]], "aidge::graphview::datainputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10dataInputsEKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView10dataInputsEv", false]], "aidge::graphview::forwarddims (c++ function)": [[6, "_CPPv4N5Aidge9GraphView11forwardDimsERKNSt6vectorINSt6vectorI9DimSize_tEEEEb", false]], "aidge::graphview::forwarddtype (c++ function)": [[6, "_CPPv4N5Aidge9GraphView12forwardDTypeE8DataType", false], [6, "_CPPv4N5Aidge9GraphView12forwardDTypeERKNSt6vectorI8DataTypeEE", false]], "aidge::graphview::getchildren (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView11getChildrenEK7NodePtr", false], [6, "_CPPv4NK5Aidge9GraphView11getChildrenEKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView11getChildrenEv", false]], "aidge::graphview::getnbfreedatainputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView19getNbFreeDataInputsEv", false]], "aidge::graphview::getnode (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView7getNodeERKNSt6stringE", false]], "aidge::graphview::getnodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView8getNodesEv", false]], "aidge::graphview::getorderedinputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView16getOrderedInputsEv", false]], "aidge::graphview::getorderednodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView15getOrderedNodesEb", false]], "aidge::graphview::getorderedoutputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView17getOrderedOutputsEv", false]], "aidge::graphview::getorderedparents (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView17getOrderedParentsEv", false]], "aidge::graphview::getparents (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10getParentsEKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView10getParentsEv", false]], "aidge::graphview::getrankednodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView14getRankedNodesEv", false]], "aidge::graphview::getrankednodesname (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb", false]], "aidge::graphview::graphview (c++ function)": [[6, "_CPPv4N5Aidge9GraphView9GraphViewERKNSt6stringE", false]], "aidge::graphview::inputnodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10inputNodesE13InputCategory", false]], "aidge::graphview::inputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView6inputsERKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView6inputsEv", false]], "aidge::graphview::insertparent (c++ function)": [[6, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", false]], "aidge::graphview::inview (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView6inViewERK7NodePtr", false], [6, "_CPPv4NK5Aidge9GraphView6inViewERKNSt6stringE", false]], "aidge::graphview::isinputnode (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView11isInputNodeERK7NodePtr", false]], "aidge::graphview::isoutputnode (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView12isOutputNodeERK7NodePtr", false]], "aidge::graphview::link (c++ function)": [[6, "_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE", false]], "aidge::graphview::logoutputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10logOutputsERKNSt6stringE", false]], "aidge::graphview::name (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView4nameEv", false]], "aidge::graphview::operator() (c++ function)": [[6, "_CPPv4N5Aidge9GraphViewclEKNSt6vectorI9ConnectorEE", false]], "aidge::graphview::operator== (c++ function)": [[6, "_CPPv4NK5Aidge9GraphVieweqERK9GraphView", false]], "aidge::graphview::operator[] (c++ function)": [[6, "_CPPv4NK5Aidge9GraphViewixERKNSt6stringE", false]], "aidge::graphview::outputnodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView11outputNodesEv", false]], "aidge::graphview::outputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView7outputsERKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView7outputsEv", false]], "aidge::graphview::remove (c++ function)": [[6, "_CPPv4N5Aidge9GraphView6removeE7NodePtrb", false]], "aidge::graphview::replace (c++ function)": [[6, "_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE", false], [6, "_CPPv4N5Aidge9GraphView7replaceERKNSt3setI7NodePtrEERKNSt3setI7NodePtrEE", false]], "aidge::graphview::rootnode (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView8rootNodeEv", false]], "aidge::graphview::save (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", false]], "aidge::graphview::setbackend (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t", false]], "aidge::graphview::setdataformat (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView13setDataFormatERK10DataFormat", false]], "aidge::graphview::setdatatype (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView11setDataTypeERK8DataType", false]], "aidge::graphview::setinputid (c++ function)": [[6, "_CPPv4N5Aidge9GraphView10setInputIdE9IOIndex_t9IOIndex_t", false]], "aidge::graphview::setname (c++ function)": [[6, "_CPPv4N5Aidge9GraphView7setNameERKNSt6stringE", false]], "aidge::graphview::setnodesname (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView12setNodesNameEv", false]], "aidge::graphview::setorderedinputs (c++ function)": [[6, "_CPPv4N5Aidge9GraphView16setOrderedInputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", false]], "aidge::graphview::setorderedoutputs (c++ function)": [[6, "_CPPv4N5Aidge9GraphView17setOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", false]], "aidge::graphview::setrootnode (c++ function)": [[6, "_CPPv4N5Aidge9GraphView11setRootNodeE7NodePtr", false]], "aidge::graphview::swap (c++ function)": [[6, "_CPPv4N5Aidge9GraphView4swapER4NodeR4Node", false]], "aidge::graphview::updatenodename (c++ function)": [[6, "_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE", false]], "aidge::identity (c++ function)": [[9, "_CPPv4N5Aidge8IdentityERKNSt6stringE", false]], "aidge::implspec (c++ struct)": [[3, "_CPPv4N5Aidge8ImplSpecE", false]], "aidge::implspec::attrs (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec5attrsE", false]], "aidge::implspec::implspec (c++ function)": [[3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK17DynamicAttributes", false], [3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK17DynamicAttributes", false], [3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", false], [3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKN5Aidge8ImplSpecE", false], [3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", false]], "aidge::implspec::inputs (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec6inputsE", false]], "aidge::implspec::iospec (c++ struct)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpecE", false]], "aidge::implspec::iospec::dims (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpec4dimsE", false]], "aidge::implspec::iospec::format (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpec6formatE", false]], "aidge::implspec::iospec::iospec (c++ function)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", false]], "aidge::implspec::iospec::type (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpec4typeE", false]], "aidge::implspec::outputs (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec7outputsE", false]], "aidge::implspec::~implspec (c++ function)": [[3, "_CPPv4N5Aidge8ImplSpecD0Ev", false]], "aidge::leakyrelu (c++ function)": [[9, "_CPPv4N5Aidge9LeakyReLUEfRKNSt6stringE", false]], "aidge::lstm (c++ function)": [[9, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", false]], "aidge::matmul (c++ function)": [[9, "_CPPv4N5Aidge6MatMulERKNSt6stringE", false]], "aidge::matmultiling (c++ function)": [[10, "_CPPv4N5Aidge12matMulTilingE7NodePtrRKNSt6vectorI9DimSize_tEE", false]], "aidge::matmultofc (c++ function)": [[10, "_CPPv4N5Aidge10matMulToFCENSt10shared_ptrI9GraphViewEE", false]], "aidge::memorize (c++ function)": [[9, "_CPPv4N5Aidge8MemorizeEKNSt8uint32_tERKNSt6stringE", false]], "aidge::metaoperator (c++ function)": [[9, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", false]], "aidge::mnist (c++ class)": [[2, "_CPPv4N5Aidge5MNISTE", false]], "aidge::mnist::datatype (c++ enum)": [[2, "_CPPv4N5Aidge5MNIST8DataTypeE", false]], "aidge::mnist::datatype::double (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType6DoubleE", false]], "aidge::mnist::datatype::float (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType5FloatE", false]], "aidge::mnist::datatype::int (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType3IntE", false]], "aidge::mnist::datatype::short (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType5ShortE", false]], "aidge::mnist::datatype::signed (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType6SignedE", false]], "aidge::mnist::datatype::unsigned (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType8UnsignedE", false]], "aidge::mnist::getitem (c++ function)": [[2, "_CPPv4NK5Aidge5MNIST7getItemEKNSt6size_tE", false]], "aidge::mnist::getlen (c++ function)": [[2, "_CPPv4NK5Aidge5MNIST6getLenEv", false]], "aidge::mnist::getnbmodalities (c++ function)": [[2, "_CPPv4NK5Aidge5MNIST15getNbModalitiesEv", false]], "aidge::mnist::magicnumber (c++ union)": [[2, "_CPPv4N5Aidge5MNIST11MagicNumberE", false]], "aidge::mnist::magicnumber::byte (c++ member)": [[2, "_CPPv4N5Aidge5MNIST11MagicNumber4byteE", false]], "aidge::mnist::magicnumber::value (c++ member)": [[2, "_CPPv4N5Aidge5MNIST11MagicNumber5valueE", false]], "aidge::mnist::mnist (c++ function)": [[2, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", false]], "aidge::mnist::~mnist (c++ function)": [[2, "_CPPv4N5Aidge5MNISTD0Ev", false]], "aidge::move (c++ function)": [[9, "_CPPv4N5Aidge4MoveERKNSt6stringE", false]], "aidge::mul (c++ function)": [[9, "_CPPv4N5Aidge3MulERKNSt6stringE", false]], "aidge::node (c++ class)": [[6, "_CPPv4N5Aidge4NodeE", false]], "aidge::node::addafterbackward (c++ function)": [[6, "_CPPv4N5Aidge4Node16addAfterBackwardENSt8functionIFbvEEE", false]], "aidge::node::addafterforward (c++ function)": [[6, "_CPPv4N5Aidge4Node15addAfterForwardENSt8functionIFbvEEE", false]], "aidge::node::addbeforebackward (c++ function)": [[6, "_CPPv4N5Aidge4Node17addBeforeBackwardENSt8functionIFbvEEE", false]], "aidge::node::addbeforeforward (c++ function)": [[6, "_CPPv4N5Aidge4Node16addBeforeForwardENSt8functionIFbvEEE", false]], "aidge::node::addchild (c++ function)": [[6, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", false], [6, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", false]], "aidge::node::addview (c++ function)": [[6, "_CPPv4N5Aidge4Node7addViewERKNSt10shared_ptrI9GraphViewEE", false]], "aidge::node::attributes (c++ function)": [[6, "_CPPv4NK5Aidge4Node10attributesEv", false]], "aidge::node::backward (c++ function)": [[6, "_CPPv4N5Aidge4Node8backwardEv", false]], "aidge::node::clone (c++ function)": [[6, "_CPPv4N5Aidge4Node5cloneE7NodePtr", false], [6, "_CPPv4NK5Aidge4Node5cloneEv", false]], "aidge::node::clonesharedoperators (c++ function)": [[6, "_CPPv4N5Aidge4Node20cloneSharedOperatorsE7NodePtr", false], [6, "_CPPv4NK5Aidge4Node20cloneSharedOperatorsEv", false]], "aidge::node::clonesharedproducers (c++ function)": [[6, "_CPPv4N5Aidge4Node20cloneSharedProducersE7NodePtr", false], [6, "_CPPv4NK5Aidge4Node20cloneSharedProducersEv", false]], "aidge::node::createuniquename (c++ function)": [[6, "_CPPv4N5Aidge4Node16createUniqueNameENSt6stringE", false]], "aidge::node::datainputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node10dataInputsEv", false]], "aidge::node::forward (c++ function)": [[6, "_CPPv4N5Aidge4Node7forwardEv", false]], "aidge::node::getchildren (c++ function)": [[6, "_CPPv4NK5Aidge4Node11getChildrenEK9IOIndex_t", false], [6, "_CPPv4NK5Aidge4Node11getChildrenEv", false]], "aidge::node::getfirstfreedatainput (c++ function)": [[6, "_CPPv4NK5Aidge4Node21getFirstFreeDataInputEv", false]], "aidge::node::getnbfreedatainputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node19getNbFreeDataInputsEv", false]], "aidge::node::getoperator (c++ function)": [[6, "_CPPv4NK5Aidge4Node11getOperatorEv", false]], "aidge::node::getorderedchildren (c++ function)": [[6, "_CPPv4NK5Aidge4Node18getOrderedChildrenEv", false]], "aidge::node::getparent (c++ function)": [[6, "_CPPv4N5Aidge4Node9getParentEK9IOIndex_t", false]], "aidge::node::getparents (c++ function)": [[6, "_CPPv4NK5Aidge4Node10getParentsEv", false]], "aidge::node::input (c++ function)": [[6, "_CPPv4NK5Aidge4Node5inputEK9IOIndex_t", false]], "aidge::node::inputcategory (c++ function)": [[6, "_CPPv4NK5Aidge4Node13inputCategoryE9IOIndex_t", false]], "aidge::node::inputname (c++ function)": [[6, "_CPPv4N5Aidge4Node9inputNameEK9IOIndex_tRKNSt6stringE", false], [6, "_CPPv4NK5Aidge4Node9inputNameEK9IOIndex_t", false]], "aidge::node::inputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node6inputsEv", false]], "aidge::node::inputsnames (c++ function)": [[6, "_CPPv4NK5Aidge4Node11inputsNamesEv", false]], "aidge::node::name (c++ function)": [[6, "_CPPv4NK5Aidge4Node4nameEv", false]], "aidge::node::nbinputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node8nbInputsEv", false]], "aidge::node::nboutputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node9nbOutputsEv", false]], "aidge::node::nbvalidinputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node13nbValidInputsEv", false]], "aidge::node::nbvalidoutputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node14nbValidOutputsEv", false]], "aidge::node::node (c++ function)": [[6, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEENSt10shared_ptrI17DynamicAttributesEE", false], [6, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEERKNSt6stringE", false], [6, "_CPPv4N5Aidge4Node4NodeEv", false]], "aidge::node::operator() (c++ function)": [[6, "_CPPv4N5Aidge4NodeclERKNSt6vectorI9ConnectorEE", false]], "aidge::node::operator== (c++ function)": [[6, "_CPPv4N5Aidge4NodeeqERK4NodeRK4Node", false]], "aidge::node::output (c++ function)": [[6, "_CPPv4NK5Aidge4Node6outputE9IOIndex_t", false]], "aidge::node::outputname (c++ function)": [[6, "_CPPv4N5Aidge4Node10outputNameE9IOIndex_tRKNSt6stringE", false], [6, "_CPPv4NK5Aidge4Node10outputNameE9IOIndex_t", false]], "aidge::node::outputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node7outputsEv", false]], "aidge::node::outputsnames (c++ function)": [[6, "_CPPv4NK5Aidge4Node12outputsNamesEv", false]], "aidge::node::parentisbackedge (c++ function)": [[6, "_CPPv4NK5Aidge4Node16parentIsBackEdgeE9IOIndex_t", false]], "aidge::node::removechild (c++ function)": [[6, "_CPPv4N5Aidge4Node11removeChildEK7NodePtrK9IOIndex_t", false]], "aidge::node::removeview (c++ function)": [[6, "_CPPv4N5Aidge4Node10removeViewERKNSt10shared_ptrI9GraphViewEE", false]], "aidge::node::resetconnections (c++ function)": [[6, "_CPPv4N5Aidge4Node16resetConnectionsEb", false]], "aidge::node::setname (c++ function)": [[6, "_CPPv4N5Aidge4Node7setNameERKNSt6stringE", false]], "aidge::node::type (c++ function)": [[6, "_CPPv4NK5Aidge4Node4typeEv", false]], "aidge::node::valid (c++ function)": [[6, "_CPPv4NK5Aidge4Node5validEv", false]], "aidge::node::views (c++ function)": [[6, "_CPPv4NK5Aidge4Node5viewsEv", false]], "aidge::node::~node (c++ function)": [[6, "_CPPv4N5Aidge4NodeD0Ev", false]], "aidge::operator (c++ class)": [[9, "_CPPv4N5Aidge8OperatorE", false]], "aidge::operator::associateinput (c++ function)": [[9, "_CPPv4N5Aidge8Operator14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operator::attributes (c++ function)": [[9, "_CPPv4NK5Aidge8Operator10attributesEv", false]], "aidge::operator::backend (c++ function)": [[9, "_CPPv4NK5Aidge8Operator7backendEv", false]], "aidge::operator::backward (c++ function)": [[9, "_CPPv4N5Aidge8Operator8backwardEv", false]], "aidge::operator::clone (c++ function)": [[9, "_CPPv4NK5Aidge8Operator5cloneEv", false]], "aidge::operator::forward (c++ function)": [[9, "_CPPv4N5Aidge8Operator7forwardEv", false]], "aidge::operator::getavailablebackends (c++ function)": [[9, "_CPPv4NK5Aidge8Operator20getAvailableBackendsEv", false]], "aidge::operator::getimpl (c++ function)": [[9, "_CPPv4NK5Aidge8Operator7getImplEv", false]], "aidge::operator::getinputsname (c++ function)": [[9, "_CPPv4N5Aidge8Operator13getInputsNameEv", false]], "aidge::operator::getnbconsumeddata (c++ function)": [[9, "_CPPv4NK5Aidge8Operator17getNbConsumedDataEK9IOIndex_t", false]], "aidge::operator::getnbproduceddata (c++ function)": [[9, "_CPPv4NK5Aidge8Operator17getNbProducedDataEK9IOIndex_t", false]], "aidge::operator::getnbrequireddata (c++ function)": [[9, "_CPPv4NK5Aidge8Operator17getNbRequiredDataEK9IOIndex_t", false]], "aidge::operator::getnbrequiredprotected (c++ function)": [[9, "_CPPv4NK5Aidge8Operator22getNbRequiredProtectedEK9IOIndex_t", false]], "aidge::operator::getoutputsname (c++ function)": [[9, "_CPPv4N5Aidge8Operator14getOutputsNameEv", false]], "aidge::operator::getrawinput (c++ function)": [[9, "_CPPv4NK5Aidge8Operator11getRawInputEK9IOIndex_t", false]], "aidge::operator::getrawoutput (c++ function)": [[9, "_CPPv4NK5Aidge8Operator12getRawOutputEK9IOIndex_t", false]], "aidge::operator::getrequiredmemory (c++ function)": [[9, "_CPPv4NK5Aidge8Operator17getRequiredMemoryEK9IOIndex_tRKNSt6vectorI9DimSize_tEE", false]], "aidge::operator::inheritedattributes (c++ function)": [[9, "_CPPv4NK5Aidge8Operator19inheritedAttributesEv", false]], "aidge::operator::inputcategory (c++ function)": [[9, "_CPPv4NK5Aidge8Operator13inputCategoryE9IOIndex_t", false], [9, "_CPPv4NK5Aidge8Operator13inputCategoryEv", false]], "aidge::operator::isatomic (c++ function)": [[9, "_CPPv4NK5Aidge8Operator8isAtomicEv", false]], "aidge::operator::isbackedge (c++ function)": [[9, "_CPPv4NK5Aidge8Operator10isBackEdgeE9IOIndex_t", false]], "aidge::operator::isoptionalinput (c++ function)": [[9, "_CPPv4NK5Aidge8Operator15isOptionalInputENSt6size_tE", false]], "aidge::operator::nbinputs (c++ function)": [[9, "_CPPv4NK5Aidge8Operator8nbInputsEv", false]], "aidge::operator::nboutputs (c++ function)": [[9, "_CPPv4NK5Aidge8Operator9nbOutputsEv", false]], "aidge::operator::operator (c++ function)": [[9, "_CPPv4N5Aidge8Operator8OperatorERK8Operator", false], [9, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", false], [9, "_CPPv4N5Aidge8Operator8OperatorEv", false]], "aidge::operator::operatortype (c++ function)": [[9, "_CPPv4NK5Aidge8Operator12operatorTypeEv", false]], "aidge::operator::resetconsummerproducer (c++ function)": [[9, "_CPPv4N5Aidge8Operator22resetConsummerProducerEv", false]], "aidge::operator::resetinput (c++ function)": [[9, "_CPPv4N5Aidge8Operator10resetInputEK9IOIndex_t", false]], "aidge::operator::setbackedges (c++ function)": [[9, "_CPPv4N5Aidge8Operator12setBackEdgesERKNSt3setI9IOIndex_tEE", false]], "aidge::operator::setbackend (c++ function)": [[9, "_CPPv4N5Aidge8Operator10setBackendERKNSt6stringE11DeviceIdx_t", false], [9, "_CPPv4N5Aidge8Operator10setBackendERKNSt6vectorINSt4pairINSt6stringE11DeviceIdx_tEEEE", false]], "aidge::operator::setdataformat (c++ function)": [[9, "_CPPv4NK5Aidge8Operator13setDataFormatERK10DataFormat", false]], "aidge::operator::setdatatype (c++ function)": [[9, "_CPPv4NK5Aidge8Operator11setDataTypeERK8DataType", false]], "aidge::operator::setimpl (c++ function)": [[9, "_CPPv4N5Aidge8Operator7setImplENSt10shared_ptrI12OperatorImplEE", false]], "aidge::operator::setinheritedattrs (c++ function)": [[9, "_CPPv4N5Aidge8Operator17setInheritedAttrsERNSt10shared_ptrI17DynamicAttributesEE", false]], "aidge::operator::setinput (c++ function)": [[9, "_CPPv4N5Aidge8Operator8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operator::setoutput (c++ function)": [[9, "_CPPv4NK5Aidge8Operator9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operator::type (c++ function)": [[9, "_CPPv4NK5Aidge8Operator4typeEv", false]], "aidge::operator::updateconsummerproducer (c++ function)": [[9, "_CPPv4N5Aidge8Operator23updateConsummerProducerEv", false]], "aidge::operator::~operator (c++ function)": [[9, "_CPPv4N5Aidge8OperatorD0Ev", false]], "aidge::operatortensor (c++ class)": [[9, "_CPPv4N5Aidge14OperatorTensorE", false]], "aidge::operatortensor::associateinput (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operatortensor::computereceptivefield (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", false]], "aidge::operatortensor::dimsforwarded (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor13dimsForwardedEv", false]], "aidge::operatortensor::forward (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor7forwardEv", false]], "aidge::operatortensor::forwarddims (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor11forwardDimsEb", false]], "aidge::operatortensor::forwarddtype (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor12forwardDTypeEv", false]], "aidge::operatortensor::getinput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor8getInputEK9IOIndex_t", false]], "aidge::operatortensor::getinputs (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor9getInputsEv", false]], "aidge::operatortensor::getoutput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor9getOutputEK9IOIndex_t", false]], "aidge::operatortensor::getoutputs (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor10getOutputsEv", false]], "aidge::operatortensor::getrawinput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor11getRawInputEK9IOIndex_t", false]], "aidge::operatortensor::getrawoutput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor12getRawOutputEKN5Aidge9IOIndex_tE", false]], "aidge::operatortensor::operatortensor (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERK14OperatorTensor", false], [9, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", false], [9, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorEv", false]], "aidge::operatortensor::resetinput (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor10resetInputEK9IOIndex_t", false]], "aidge::operatortensor::setdataformat (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor13setDataFormatERK10DataFormat", false]], "aidge::operatortensor::setdatatype (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor11setDataTypeERK8DataType", false]], "aidge::operatortensor::setinput (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operatortensor::setoutput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operatortensor::~operatortensor (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensorD0Ev", false]], "aidge::pad (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", false]], "aidge::paddedavgpooling (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", false]], "aidge::paddedconv (c++ function)": [[9, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::paddedconvdepthwise (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::paddedmaxpooling (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", false]], "aidge::parallel (c++ function)": [[6, "_CPPv4N5Aidge8ParallelENSt6vectorI6OpArgsEENSt6stringE", false]], "aidge::parallelscheduler (c++ class)": [[11, "_CPPv4N5Aidge17ParallelSchedulerE", false]], "aidge::parallelscheduler::forward (c++ function)": [[11, "_CPPv4N5Aidge17ParallelScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", false]], "aidge::parallelscheduler::parallelscheduler (c++ function)": [[11, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", false]], "aidge::parallelscheduler::~parallelscheduler (c++ function)": [[11, "_CPPv4N5Aidge17ParallelSchedulerD0Ev", false]], "aidge::pop (c++ function)": [[9, "_CPPv4N5Aidge3PopERKNSt6stringE", false]], "aidge::pow (c++ function)": [[9, "_CPPv4N5Aidge3PowERKNSt6stringE", false]], "aidge::producer (c++ function)": [[9, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", false], [9, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", false]], "aidge::reducemean (c++ function)": [[9, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE", false]], "aidge::relu (c++ function)": [[9, "_CPPv4N5Aidge4ReLUERKNSt6stringE", false]], "aidge::removedropout (c++ function)": [[10, "_CPPv4N5Aidge13removeDropoutENSt10shared_ptrI9GraphViewEE", false]], "aidge::removeflatten (c++ function)": [[10, "_CPPv4N5Aidge13removeFlattenENSt10shared_ptrI9GraphViewEE", false]], "aidge::reshape (c++ function)": [[9, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", false]], "aidge::residual (c++ function)": [[6, "_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE", false]], "aidge::scaling (c++ function)": [[9, "_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE", false]], "aidge::scheduler (c++ class)": [[11, "_CPPv4N5Aidge9SchedulerE", false]], "aidge::scheduler::availabledatastatus (c++ enum)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatusE", false]], "aidge::scheduler::availabledatastatus::connected (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus9ConnectedE", false]], "aidge::scheduler::availabledatastatus::notconnected (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus12NotConnectedE", false]], "aidge::scheduler::availabledatastatus::uppernodeinputconnected (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus23UpperNodeInputConnectedE", false]], "aidge::scheduler::availabledatastatus::uppernodeinputfound (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus19UpperNodeInputFoundE", false]], "aidge::scheduler::availabledatastatus::validtensor (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus11ValidTensorE", false]], "aidge::scheduler::clearscheduling (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler15clearSchedulingEv", false]], "aidge::scheduler::connectinputs (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler13connectInputsERKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", false]], "aidge::scheduler::exectime (c++ class)": [[11, "_CPPv4N5Aidge9Scheduler8ExecTimeE", false]], "aidge::scheduler::exectime::get (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler8ExecTime3getEv", false]], "aidge::scheduler::exectime::update (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler8ExecTime6updateERKNSt6vectorI17SchedulingElementEE", false]], "aidge::scheduler::generatescheduling (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler18generateSchedulingEv", false]], "aidge::scheduler::getbackwardscheduling (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler21getBackwardSchedulingEv", false]], "aidge::scheduler::getforwardscheduling (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler20getForwardSchedulingEv", false]], "aidge::scheduler::getsequentialstaticscheduling (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler29getSequentialStaticSchedulingENSt6size_tE16SchedulingPolicy", false]], "aidge::scheduler::getstaticscheduling (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler19getStaticSchedulingENSt6size_tE", false]], "aidge::scheduler::graphview (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler9graphViewEv", false]], "aidge::scheduler::nodeexectime (c++ struct)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTimeE", false]], "aidge::scheduler::nodeexectime::mcount (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime6mCountE", false]], "aidge::scheduler::nodeexectime::mean (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler12NodeExecTime4meanEv", false]], "aidge::scheduler::nodeexectime::mm2 (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime3mM2E", false]], "aidge::scheduler::nodeexectime::mmean (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime5mMeanE", false]], "aidge::scheduler::nodeexectime::nodeexectime (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime12NodeExecTimeEv", false]], "aidge::scheduler::nodeexectime::stddev (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler12NodeExecTime6stdDevEv", false]], "aidge::scheduler::nodeexectime::update (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime6updateENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", false]], "aidge::scheduler::priorproducersconsumers (c++ struct)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumersE", false]], "aidge::scheduler::priorproducersconsumers::isprior (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers7isPriorE", false]], "aidge::scheduler::priorproducersconsumers::priorconsumers (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers14priorConsumersE", false]], "aidge::scheduler::priorproducersconsumers::priorproducersconsumers (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers23PriorProducersConsumersERK23PriorProducersConsumers", false], [11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers23PriorProducersConsumersEv", false]], "aidge::scheduler::priorproducersconsumers::requiredproducers (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers17requiredProducersE", false]], "aidge::scheduler::priorproducersconsumers::~priorproducersconsumers (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumersD0Ev", false]], "aidge::scheduler::resetscheduling (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler15resetSchedulingEv", false]], "aidge::scheduler::savefactorizedstaticschedulingdiagram (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", false]], "aidge::scheduler::saveschedulingdiagram (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler21saveSchedulingDiagramERKNSt6stringEb", false]], "aidge::scheduler::savestaticschedulingdiagram (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler27saveStaticSchedulingDiagramERKNSt6stringEb", false]], "aidge::scheduler::scheduler (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", false], [11, "_CPPv4N5Aidge9Scheduler9SchedulerEv", false]], "aidge::scheduler::schedulingelement (c++ struct)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElementE", false]], "aidge::scheduler::schedulingelement::end (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElement3endE", false]], "aidge::scheduler::schedulingelement::node (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElement4nodeE", false]], "aidge::scheduler::schedulingelement::schedulingelement (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", false]], "aidge::scheduler::schedulingelement::start (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElement5startE", false]], "aidge::scheduler::schedulingelement::~schedulingelement (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElementD0Ev", false]], "aidge::scheduler::schedulingpolicy (c++ enum)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicyE", false]], "aidge::scheduler::schedulingpolicy::aslateaspossible (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy16AsLateAsPossibleE", false]], "aidge::scheduler::schedulingpolicy::assoonaspossible (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy16AsSoonAsPossibleE", false]], "aidge::scheduler::schedulingpolicy::default (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy7DefaultE", false]], "aidge::scheduler::schedulingpolicy::longuestbranchfirst (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy19LonguestBranchFirstE", false]], "aidge::scheduler::schedulingpolicy::shortestbranchfirst (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy19ShortestBranchFirstE", false]], "aidge::scheduler::staticschedulingelement (c++ struct)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElementE", false]], "aidge::scheduler::staticschedulingelement::earlierthan (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement11earlierThanE", false]], "aidge::scheduler::staticschedulingelement::early (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement5earlyE", false]], "aidge::scheduler::staticschedulingelement::late (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement4lateE", false]], "aidge::scheduler::staticschedulingelement::laterthan (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement9laterThanE", false]], "aidge::scheduler::staticschedulingelement::node (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement4nodeE", false]], "aidge::scheduler::staticschedulingelement::staticschedulingelement (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", false]], "aidge::scheduler::tagconditionalnodes (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler19tagConditionalNodesEv", false]], "aidge::scheduler::tagforkbranches (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler15tagForkBranchesEv", false]], "aidge::scheduler::~scheduler (c++ function)": [[11, "_CPPv4N5Aidge9SchedulerD0Ev", false]], "aidge::sequential (c++ function)": [[6, "_CPPv4N5Aidge10SequentialENSt6vectorI6OpArgsEENSt6stringE", false]], "aidge::sequentialscheduler (c++ class)": [[11, "_CPPv4N5Aidge19SequentialSchedulerE", false]], "aidge::sequentialscheduler::backward (c++ function)": [[11, "_CPPv4N5Aidge19SequentialScheduler8backwardEv", false]], "aidge::sequentialscheduler::forward (c++ function)": [[11, "_CPPv4N5Aidge19SequentialScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", false]], "aidge::sequentialscheduler::generatememory (c++ function)": [[11, "_CPPv4NK5Aidge19SequentialScheduler14generateMemoryEbb", false]], "aidge::sequentialscheduler::generatememoryautoconcat (c++ function)": [[11, "_CPPv4NK5Aidge19SequentialScheduler24generateMemoryAutoConcatEbb", false]], "aidge::sequentialscheduler::getsequentialstaticscheduling (c++ function)": [[11, "_CPPv4NK5Aidge19SequentialScheduler29getSequentialStaticSchedulingENSt6size_tE", false]], "aidge::sequentialscheduler::sequentialscheduler (c++ function)": [[11, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", false]], "aidge::sequentialscheduler::setschedulingpolicy (c++ function)": [[11, "_CPPv4N5Aidge19SequentialScheduler19setSchedulingPolicyE16SchedulingPolicy", false]], "aidge::sequentialscheduler::~sequentialscheduler (c++ function)": [[11, "_CPPv4N5Aidge19SequentialSchedulerD0Ev", false]], "aidge::sigmoid (c++ function)": [[9, "_CPPv4N5Aidge7SigmoidERKNSt6stringE", false]], "aidge::singlepassgraphmatching (c++ class)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatchingE", false]], "aidge::singlepassgraphmatching::addnodelambda (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching13addNodeLambdaERKNSt6stringENSt8functionIFbRKNSt10shared_ptrI4NodeEEEEE", false]], "aidge::singlepassgraphmatching::context (c++ struct)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextE", false]], "aidge::singlepassgraphmatching::context::anchors (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7anchorsE", false]], "aidge::singlepassgraphmatching::context::context (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7ContextERK7Context", false], [7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7ContextEv", false]], "aidge::singlepassgraphmatching::context::depth (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context5depthE", false]], "aidge::singlepassgraphmatching::context::edgeleftidx (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context11edgeLeftIdxE", false]], "aidge::singlepassgraphmatching::context::edgerightidx (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12edgeRightIdxE", false]], "aidge::singlepassgraphmatching::context::firstnode (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context9firstNodeE", false]], "aidge::singlepassgraphmatching::context::firstsequence (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context13firstSequenceE", false]], "aidge::singlepassgraphmatching::context::insequence (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context10inSequenceE", false]], "aidge::singlepassgraphmatching::context::lookforchild (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12lookForChildE", false]], "aidge::singlepassgraphmatching::context::operator= (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextaSERK7Context", false]], "aidge::singlepassgraphmatching::context::query (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context5queryE", false]], "aidge::singlepassgraphmatching::context::singleoutput (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12singleOutputE", false]], "aidge::singlepassgraphmatching::context::startnode (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context9startNodeE", false]], "aidge::singlepassgraphmatching::context::~context (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextD0Ev", false]], "aidge::singlepassgraphmatching::filterlonguestdisjoint (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching22filterLonguestDisjointERKNSt3setI14MatchingResultEE", false]], "aidge::singlepassgraphmatching::match (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching5matchERKNSt6stringEb", false]], "aidge::singlepassgraphmatching::matchfrom (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching9matchFromENSt10shared_ptrI4NodeEERKNSt6stringE", false]], "aidge::singlepassgraphmatching::matchingresult (c++ struct)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultE", false]], "aidge::singlepassgraphmatching::matchingresult::anchors (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult7anchorsE", false]], "aidge::singlepassgraphmatching::matchingresult::graph (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult5graphE", false]], "aidge::singlepassgraphmatching::matchingresult::matchingresult (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultERK14MatchingResult", false], [7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultEv", false]], "aidge::singlepassgraphmatching::matchingresult::operator= (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultaSERK14MatchingResult", false]], "aidge::singlepassgraphmatching::matchingresult::startnode (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult9startNodeE", false]], "aidge::singlepassgraphmatching::matchingresult::~matchingresult (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultD0Ev", false]], "aidge::singlepassgraphmatching::operator= (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatchingaSERK23SinglePassGraphMatching", false]], "aidge::singlepassgraphmatching::singlepassgraphmatching (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingENSt10shared_ptrI9GraphViewEE", false], [7, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingERK23SinglePassGraphMatching", false], [7, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingEv", false]], "aidge::singlepassgraphmatching::~singlepassgraphmatching (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatchingD0Ev", false]], "aidge::slice (c++ function)": [[9, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", false]], "aidge::softmax (c++ function)": [[9, "_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE", false]], "aidge::sqrt (c++ function)": [[9, "_CPPv4N5Aidge4SqrtERKNSt6stringE", false]], "aidge::sub (c++ function)": [[9, "_CPPv4N5Aidge3SubERKNSt6stringE", false]], "aidge::tanh (c++ function)": [[9, "_CPPv4N5Aidge4TanhERKNSt6stringE", false]], "aidge::tensor (c++ class)": [[4, "_CPPv4N5Aidge6TensorE", false]], "aidge::tensor::abs (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor3absEv", false]], "aidge::tensor::backend (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7backendEv", false]], "aidge::tensor::capacity (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor8capacityEv", false]], "aidge::tensor::clip (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor4clipEff", false]], "aidge::tensor::clone (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor5cloneEv", false]], "aidge::tensor::copycast (c++ function)": [[4, "_CPPv4N5Aidge6Tensor8copyCastERK6Tensor", false]], "aidge::tensor::copycastfrom (c++ function)": [[4, "_CPPv4N5Aidge6Tensor12copyCastFromERK6Tensor", false], [4, "_CPPv4N5Aidge6Tensor12copyCastFromERK6TensorRNSt10shared_ptrI6TensorEE", false]], "aidge::tensor::copyfrom (c++ function)": [[4, "_CPPv4N5Aidge6Tensor8copyFromERK6Tensor", false]], "aidge::tensor::copytranspose (c++ function)": [[4, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRK19DataFormatTranspose", false], [4, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRKNSt6vectorI9DimSize_tEE", false]], "aidge::tensor::dataformat (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor10dataFormatEv", false]], "aidge::tensor::datatype (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor8dataTypeEv", false]], "aidge::tensor::device (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6deviceEv", false]], "aidge::tensor::dim (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor3dimE8DimIdx_t", false]], "aidge::tensor::dims (c++ function)": [[4, "_CPPv4I_8DimIdx_tENK5Aidge6Tensor4dimsENSt5arrayI9DimSize_t3DIMEEv", false], [4, "_CPPv4NK5Aidge6Tensor4dimsEv", false]], "aidge::tensor::empty (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor5emptyEv", false]], "aidge::tensor::extract (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEE", false], [4, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEERKNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::get (c++ function)": [[4, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6size_tE", false], [4, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::getavailablebackends (c++ function)": [[4, "_CPPv4N5Aidge6Tensor20getAvailableBackendsEv", false]], "aidge::tensor::getcoord (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor8getCoordENSt6size_tE", false]], "aidge::tensor::getidx (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6getIdxERKNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::getimpl (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7getImplEv", false]], "aidge::tensor::getimploffset (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor13getImplOffsetEv", false]], "aidge::tensor::getstorageidx (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor13getStorageIdxERKNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::grad (c++ function)": [[4, "_CPPv4N5Aidge6Tensor4gradEv", false]], "aidge::tensor::hasimpl (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7hasImplEv", false]], "aidge::tensor::iscontiguous (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor12isContiguousEv", false]], "aidge::tensor::isinbounds (c++ function)": [[4, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", false], [4, "_CPPv4N5Aidge6Tensor10isInBoundsERKNSt6vectorI9DimSize_tEEKNSt6size_tE", false]], "aidge::tensor::makecontiguous (c++ function)": [[4, "_CPPv4N5Aidge6Tensor14makeContiguousEv", false]], "aidge::tensor::mean (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor4meanEv", false]], "aidge::tensor::nbdims (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6nbDimsEv", false]], "aidge::tensor::operator* (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", false], [4, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", false], [4, "_CPPv4NK5Aidge6TensormlERK6Tensor", false]], "aidge::tensor::operator*= (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", false], [4, "_CPPv4N5Aidge6TensormLERK6Tensor", false]], "aidge::tensor::operator+ (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", false], [4, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", false], [4, "_CPPv4NK5Aidge6TensorplERK6Tensor", false]], "aidge::tensor::operator+= (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", false], [4, "_CPPv4N5Aidge6TensorpLERK6Tensor", false]], "aidge::tensor::operator- (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", false], [4, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", false], [4, "_CPPv4NK5Aidge6TensormiERK6Tensor", false]], "aidge::tensor::operator-= (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", false], [4, "_CPPv4N5Aidge6TensormIERK6Tensor", false]], "aidge::tensor::operator/ (c++ function)": [[4, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", false], [4, "_CPPv4NK5Aidge6TensordvERK6Tensor", false]], "aidge::tensor::operator/= (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", false], [4, "_CPPv4N5Aidge6TensordVERK6Tensor", false]], "aidge::tensor::operator= (c++ function)": [[4, "_CPPv4I0EN5Aidge6TensoraSER6TensorRR6VectorI1TE", false], [4, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", false], [4, "_CPPv4N5Aidge6TensoraSERK6Tensor", false], [4, "_CPPv4N5Aidge6TensoraSERR6Tensor", false]], "aidge::tensor::operator== (c++ function)": [[4, "_CPPv4NK5Aidge6TensoreqERK6Tensor", false]], "aidge::tensor::print (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor5printEv", false]], "aidge::tensor::ref (c++ function)": [[4, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", false], [4, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", false], [4, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", false], [4, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", false]], "aidge::tensor::refcast (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", false], [4, "_CPPv4NK5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", false]], "aidge::tensor::refcastfrom (c++ function)": [[4, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", false], [4, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", false], [4, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", false], [4, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", false]], "aidge::tensor::refcontiguous (c++ function)": [[4, "_CPPv4N5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", false], [4, "_CPPv4NK5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", false]], "aidge::tensor::reffrom (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", false], [4, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", false]], "aidge::tensor::repeat (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6repeatEi", false]], "aidge::tensor::resize (c++ function)": [[4, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge6Tensor6resizeEvRKNSt5arrayI9DimSize_t3DIMEE", false], [4, "_CPPv4N5Aidge6Tensor6resizeERKNSt6vectorI9DimSize_tEENSt6vectorI9DimSize_tEE", false]], "aidge::tensor::set (c++ function)": [[4, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", false], [4, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", false]], "aidge::tensor::setbackend (c++ function)": [[4, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", false]], "aidge::tensor::setdataformat (c++ function)": [[4, "_CPPv4N5Aidge6Tensor13setDataFormatEK10DataFormatb", false]], "aidge::tensor::setdatatype (c++ function)": [[4, "_CPPv4N5Aidge6Tensor11setDataTypeEK8DataTypeb", false]], "aidge::tensor::setgrad (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7setGradENSt10shared_ptrI6TensorEE", false]], "aidge::tensor::setimpl (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7setImplENSt10shared_ptrI10TensorImplEENSt6size_tE", false]], "aidge::tensor::size (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor4sizeEv", false]], "aidge::tensor::sqrt (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor4sqrtEv", false]], "aidge::tensor::stride (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6strideE8DimIdx_t", false]], "aidge::tensor::strides (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7stridesEv", false]], "aidge::tensor::tensor (c++ function)": [[4, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", false], [4, "_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE", false], [4, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", false], [4, "_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat", false], [4, "_CPPv4N5Aidge6Tensor6TensorERK6Tensor", false], [4, "_CPPv4N5Aidge6Tensor6TensorERKNSt6vectorI9DimSize_tEE", false], [4, "_CPPv4N5Aidge6Tensor6TensorERR6Tensor", false]], "aidge::tensor::tocoord (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE", false]], "aidge::tensor::toindex (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7toIndexERKNSt6vectorI9DimSize_tEERKNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::tostring (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor8toStringEiNSt6size_tE", false]], "aidge::tensor::type (c++ member)": [[4, "_CPPv4N5Aidge6Tensor4TypeE", false]], "aidge::tensor::undefined (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor9undefinedEv", false]], "aidge::tensor::zeros (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor5zerosEv", false]], "aidge::tensor::~tensor (c++ function)": [[4, "_CPPv4N5Aidge6TensorD0Ev", false]], "aidge::tensoropencv (c++ function)": [[2, "_CPPv4N5Aidge12tensorOpencvEN2cv3MatE", false]], "aidge::transpose (c++ function)": [[9, "_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE", false]], "aidge_onnx.node_import.onnx_node_converter_ (built-in variable)": [[13, "aidge_onnx.node_import.ONNX_NODE_CONVERTER_", false]], "associate_input() (aidge_core.operator method)": [[9, "aidge_core.Operator.associate_input", false]], "associate_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.associate_input", false]], "attributes() (aidge_core.node method)": [[6, "aidge_core.Node.attributes", false]], "auto_register_export() (in module aidge_onnx.node_export)": [[13, "aidge_onnx.node_export.auto_register_export", false]], "auto_register_import() (in module aidge_onnx.node_import)": [[13, "aidge_onnx.node_import.auto_register_import", false]], "avgpooling1d() (in module aidge_core)": [[9, "aidge_core.AvgPooling1D", false]], "avgpooling2d() (in module aidge_core)": [[9, "aidge_core.AvgPooling2D", false]], "avgpooling3d() (in module aidge_core)": [[9, "aidge_core.AvgPooling3D", false]], "backend() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.backend", false]], "backend() (aidge_core.operator method)": [[9, "aidge_core.Operator.backend", false]], "backend() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.backend", false]], "backend() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.backend", false]], "backward() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.backward", false]], "backward() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.backward", false]], "batchnorm2d() (in module aidge_core)": [[9, "aidge_core.BatchNorm2D", false]], "calibrate (c++ function)": [[12, "_CPPv49calibrate23calibration_folder_path15cache_file_path10batch_size", false]], "capacity() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.capacity", false]], "clear_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.clear_scheduling", false]], "clear_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.clear_scheduling", false]], "clear_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.clear_scheduling", false]], "clone() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.clone", false]], "clone() (aidge_core.node method)": [[6, "aidge_core.Node.clone", false]], "clone() (aidge_core.operator method)": [[9, "aidge_core.Operator.clone", false]], "clone() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.clone", false]], "clone() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.clone", false]], "compile() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.compile", false]], "concat() (in module aidge_core)": [[9, "aidge_core.Concat", false]], "connector (class in aidge_core)": [[6, "aidge_core.Connector", false]], "conv1d() (in module aidge_core)": [[9, "aidge_core.Conv1D", false]], "conv2d() (in module aidge_core)": [[9, "aidge_core.Conv2D", false]], "convdepthwise1d() (in module aidge_core)": [[9, "aidge_core.ConvDepthWise1D", false]], "convdepthwise2d() (in module aidge_core)": [[9, "aidge_core.ConvDepthWise2D", false]], "cpy_transpose() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.cpy_transpose", false]], "create_unique_name() (aidge_core.node method)": [[6, "aidge_core.Node.create_unique_name", false]], "dataprovider (class in aidge_core)": [[4, "aidge_core.DataProvider", false]], "device (c++ function)": [[12, "_CPPv46device2id", false]], "dformat() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.dformat", false]], "dims() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.dims", false]], "dims_forwarded() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.dims_forwarded", false]], "div() (in module aidge_core)": [[9, "aidge_core.Div", false]], "dtype() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.dtype", false]], "erf() (in module aidge_core)": [[9, "aidge_core.Erf", false]], "expand_metaops() (in module aidge_core)": [[10, "aidge_core.expand_metaops", false]], "export() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.export", false]], "export() (in module aidge_export_tensorrt)": [[12, "aidge_export_tensorrt.export", false]], "export_onnx() (in module aidge_onnx)": [[13, "aidge_onnx.export_onnx", false]], "exportlib (class in aidge_core.export_utils)": [[5, "aidge_core.export_utils.ExportLib", false]], "exportnode (class in aidge_core.export_utils)": [[5, "aidge_core.export_utils.ExportNode", false]], "exportnodecpp (class in aidge_core.export_utils)": [[5, "aidge_core.export_utils.ExportNodeCpp", false]], "fc() (in module aidge_core)": [[9, "aidge_core.FC", false]], "forward() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.forward", false]], "forward() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.forward", false]], "forward() (aidge_core.operator method)": [[9, "aidge_core.Operator.forward", false]], "forward() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.forward", false]], "forward() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.forward", false]], "forward() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.forward", false]], "forward_dims() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.forward_dims", false]], "forward_dims() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.forward_dims", false]], "forward_dtype() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.forward_dtype", false]], "forward_dtype() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.forward_dtype", false]], "fuse_batchnorm() (in module aidge_core)": [[10, "aidge_core.fuse_batchnorm", false]], "fuse_to_metaops() (in module aidge_core)": [[10, "aidge_core.fuse_to_metaops", false]], "gather() (in module aidge_core)": [[9, "aidge_core.Gather", false]], "generate_graph() (in module aidge_core)": [[6, "aidge_core.generate_graph", false]], "generate_memory() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.generate_memory", false]], "generate_memory_auto_concat() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.generate_memory_auto_concat", false]], "generate_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.generate_scheduling", false]], "generate_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.generate_scheduling", false]], "generate_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.generate_scheduling", false]], "generic_export() (in module aidge_onnx.node_export.generic_export)": [[13, "aidge_onnx.node_export.generic_export.generic_export", false]], "genericoperator() (in module aidge_core)": [[9, "aidge_core.GenericOperator", false]], "get_adaptation() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_adaptation", false]], "get_available_backends() (aidge_core.tensor static method)": [[4, "aidge_core.Tensor.get_available_backends", false]], "get_available_impl_specs() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_available_impl_specs", false]], "get_backward_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.get_backward_scheduling", false]], "get_backward_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.get_backward_scheduling", false]], "get_backward_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.get_backward_scheduling", false]], "get_best_adaptation() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_best_adaptation", false]], "get_best_match() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_best_match", false]], "get_children() (aidge_core.node method)": [[6, "aidge_core.Node.get_children", false]], "get_connected_graph_view() (in module aidge_core)": [[6, "aidge_core.get_connected_graph_view", false]], "get_coord() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.get_coord", false]], "get_export_node() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_export_node", false]], "get_forward_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.get_forward_scheduling", false]], "get_forward_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.get_forward_scheduling", false]], "get_forward_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.get_forward_scheduling", false]], "get_idx() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.get_idx", false]], "get_impl() (aidge_core.operator method)": [[9, "aidge_core.Operator.get_impl", false]], "get_impl() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_impl", false]], "get_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_input", false]], "get_input_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_input_nodes", false]], "get_inputs() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_inputs", false]], "get_item() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.get_item", false]], "get_len() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.get_len", false]], "get_nb_inputs() (aidge_core.node method)": [[6, "aidge_core.Node.get_nb_inputs", false]], "get_nb_modalities() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.get_nb_modalities", false]], "get_nb_outputs() (aidge_core.node method)": [[6, "aidge_core.Node.get_nb_outputs", false]], "get_node() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_node", false]], "get_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_nodes", false]], "get_operator() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_operator", false]], "get_operator() (aidge_core.node method)": [[6, "aidge_core.Node.get_operator", false]], "get_ordered_children() (aidge_core.node method)": [[6, "aidge_core.Node.get_ordered_children", false]], "get_ordered_inputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ordered_inputs", false]], "get_ordered_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ordered_nodes", false]], "get_ordered_outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ordered_outputs", false]], "get_output() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_output", false]], "get_output_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_output_nodes", false]], "get_outputs() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_outputs", false]], "get_parent() (aidge_core.node method)": [[6, "aidge_core.Node.get_parent", false]], "get_parents() (aidge_core.node method)": [[6, "aidge_core.Node.get_parents", false]], "get_prod_conso() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_prod_conso", false]], "get_ranked_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ranked_nodes", false]], "get_ranked_nodes_name() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ranked_nodes_name", false]], "get_raw_input() (aidge_core.operator method)": [[9, "aidge_core.Operator.get_raw_input", false]], "get_raw_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_raw_input", false]], "get_raw_output() (aidge_core.operator method)": [[9, "aidge_core.Operator.get_raw_output", false]], "get_raw_output() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_raw_output", false]], "get_required_spec() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_required_spec", false]], "get_sequential_static_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.get_sequential_static_scheduling", false]], "get_sequential_static_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.get_sequential_static_scheduling", false]], "get_sequential_static_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.get_sequential_static_scheduling", false]], "get_static_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.get_static_scheduling", false]], "get_static_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.get_static_scheduling", false]], "get_static_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.get_static_scheduling", false]], "grad() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.grad", false]], "graph_view() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.graph_view", false]], "graph_view() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.graph_view", false]], "graph_view() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.graph_view", false]], "graphview (class in aidge_core)": [[6, "aidge_core.GraphView", false]], "has_impl() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.has_impl", false]], "identity() (in module aidge_core)": [[9, "aidge_core.Identity", false]], "implspec (class in aidge_core)": [[3, "aidge_core.ImplSpec", false]], "import_generic() (in module aidge_onnx.node_import.generic)": [[13, "aidge_onnx.node_import.generic.import_generic", false]], "in_view() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.in_view", false]], "initialize (c++ function)": [[12, "_CPPv410initializev", false]], "input() (aidge_core.node method)": [[6, "aidge_core.Node.input", false]], "input_category() (aidge_core.node method)": [[6, "aidge_core.Node.input_category", false]], "input_category() (aidge_core.operator method)": [[9, "aidge_core.Operator.input_category", false]], "input_category() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.input_category", false]], "input_name() (aidge_core.node method)": [[6, "aidge_core.Node.input_name", false]], "inputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.inputs", false]], "inputs() (aidge_core.node method)": [[6, "aidge_core.Node.inputs", false]], "inputs_names() (aidge_core.node method)": [[6, "aidge_core.Node.inputs_names", false]], "insert_parent() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.insert_parent", false]], "iospec (class in aidge_core)": [[3, "aidge_core.IOSpec", false]], "is_atomic() (aidge_core.operator method)": [[9, "aidge_core.Operator.is_atomic", false]], "is_atomic() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.is_atomic", false]], "is_back_edge() (aidge_core.operator method)": [[9, "aidge_core.Operator.is_back_edge", false]], "is_back_edge() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.is_back_edge", false]], "is_optional_input() (aidge_core.operator method)": [[9, "aidge_core.Operator.is_optional_input", false]], "is_optional_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.is_optional_input", false]], "leakyrelu() (in module aidge_core)": [[9, "aidge_core.LeakyReLU", false]], "len() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.len", false]], "load (c++ function)": [[12, "_CPPv44load8filepath", false]], "load_onnx() (in module aidge_onnx)": [[13, "aidge_onnx.load_onnx", false]], "log_outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.log_outputs", false]], "lstm() (in module aidge_core)": [[9, "aidge_core.LSTM", false]], "match() (aidge_core.singlepassgraphmatching method)": [[7, "aidge_core.SinglePassGraphMatching.match", false]], "matmul() (in module aidge_core)": [[9, "aidge_core.MatMul", false]], "matmul_to_fc() (in module aidge_core)": [[10, "aidge_core.matmul_to_fc", false]], "mean() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.mean", false]], "meta_operator() (in module aidge_core)": [[9, "aidge_core.meta_operator", false]], "mnist (class in aidge_backend_opencv)": [[2, "aidge_backend_opencv.MNIST", false]], "mul() (in module aidge_core)": [[9, "aidge_core.Mul", false]], "name() (aidge_core.node method)": [[6, "aidge_core.Node.name", false]], "nb_inputs() (aidge_core.operator method)": [[9, "aidge_core.Operator.nb_inputs", false]], "nb_inputs() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.nb_inputs", false]], "nb_outputs() (aidge_core.operator method)": [[9, "aidge_core.Operator.nb_outputs", false]], "nb_outputs() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.nb_outputs", false]], "node (class in aidge_core)": [[6, "aidge_core.Node", false]], "operator (class in aidge_core)": [[9, "aidge_core.Operator", false]], "operatortensor (class in aidge_core)": [[9, "aidge_core.OperatorTensor", false]], "output() (aidge_core.node method)": [[6, "aidge_core.Node.output", false]], "output_name() (aidge_core.node method)": [[6, "aidge_core.Node.output_name", false]], "outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.outputs", false]], "outputs() (aidge_core.node method)": [[6, "aidge_core.Node.outputs", false]], "outputs_names() (aidge_core.node method)": [[6, "aidge_core.Node.outputs_names", false]], "paddedavgpooling2d() (in module aidge_core)": [[9, "aidge_core.PaddedAvgPooling2D", false]], "paddedconv1d() (in module aidge_core)": [[9, "aidge_core.PaddedConv1D", false]], "paddedconv2d() (in module aidge_core)": [[9, "aidge_core.PaddedConv2D", false]], "paddedconvdepthwise1d() (in module aidge_core)": [[9, "aidge_core.PaddedConvDepthWise1D", false]], "paddedconvdepthwise2d() (in module aidge_core)": [[9, "aidge_core.PaddedConvDepthWise2D", false]], "paddedmaxpooling2d() (in module aidge_core)": [[9, "aidge_core.PaddedMaxPooling2D", false]], "parallel() (in module aidge_core)": [[6, "aidge_core.parallel", false]], "parallelscheduler (class in aidge_core)": [[11, "aidge_core.ParallelScheduler", false]], "pop() (in module aidge_core)": [[9, "aidge_core.Pop", false]], "pow() (in module aidge_core)": [[9, "aidge_core.Pow", false]], "prod_conso() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.prod_conso", false]], "producer() (in module aidge_core)": [[9, "aidge_core.Producer", false]], "profile (c++ function)": [[12, "_CPPv47profile13nb_iterations4mode", false]], "reducemean() (in module aidge_core)": [[9, "aidge_core.ReduceMean", false]], "reformat_kernels_to_copy() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.reformat_kernels_to_copy", false]], "register() (aidge_core.export_utils.exportlib class method)": [[5, "aidge_core.export_utils.ExportLib.register", false]], "register_export() (in module aidge_onnx.node_export)": [[13, "aidge_onnx.node_export.register_export", false]], "register_generic() (aidge_core.export_utils.exportlib class method)": [[5, "aidge_core.export_utils.ExportLib.register_generic", false]], "register_import() (in module aidge_onnx.node_import)": [[13, "aidge_onnx.node_import.register_import", false]], "register_metaop() (aidge_core.export_utils.exportlib class method)": [[5, "aidge_core.export_utils.ExportLib.register_metaop", false]], "relu() (in module aidge_core)": [[9, "aidge_core.ReLU", false]], "remove_flatten() (in module aidge_core)": [[10, "aidge_core.remove_flatten", false]], "replace() (aidge_core.graphview static method)": [[6, "aidge_core.GraphView.replace", false]], "reset_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.reset_scheduling", false]], "reset_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.reset_scheduling", false]], "reset_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.reset_scheduling", false]], "reshape() (in module aidge_core)": [[9, "aidge_core.Reshape", false]], "residual() (in module aidge_core)": [[6, "aidge_core.residual", false]], "resize() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.resize", false]], "root_node() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.root_node", false]], "run_sync (c++ function)": [[12, "_CPPv48run_sync6inputs", false]], "save (c++ function)": [[12, "_CPPv44save8filepath", false]], "save() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.save", false]], "save_factorized_static_scheduling_diagram() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.save_factorized_static_scheduling_diagram", false]], "save_factorized_static_scheduling_diagram() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.save_factorized_static_scheduling_diagram", false]], "save_factorized_static_scheduling_diagram() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.save_factorized_static_scheduling_diagram", false]], "save_scheduling_diagram() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.save_scheduling_diagram", false]], "save_scheduling_diagram() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.save_scheduling_diagram", false]], "save_scheduling_diagram() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.save_scheduling_diagram", false]], "save_static_scheduling_diagram() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.save_static_scheduling_diagram", false]], "save_static_scheduling_diagram() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.save_static_scheduling_diagram", false]], "save_static_scheduling_diagram() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.save_static_scheduling_diagram", false]], "scheduler (class in aidge_core)": [[11, "aidge_core.Scheduler", false]], "scheduler_export() (in module aidge_core.export_utils)": [[5, "aidge_core.export_utils.scheduler_export", false]], "sequential() (in module aidge_core)": [[6, "aidge_core.sequential", false]], "sequentialscheduler (class in aidge_core)": [[11, "aidge_core.SequentialScheduler", false]], "set_back_edges() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_back_edges", false]], "set_back_edges() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_back_edges", false]], "set_backend() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_backend", false]], "set_backend() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_backend", false]], "set_backend() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_backend", false]], "set_backend() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.set_backend", false]], "set_data_format() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.set_data_format", false]], "set_dataformat() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_dataformat", false]], "set_dataformat() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_dataformat", false]], "set_dataformat() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_dataformat", false]], "set_datatype() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_datatype", false]], "set_datatype() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_datatype", false]], "set_datatype() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_datatype", false]], "set_datatype() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.set_datatype", false]], "set_grad() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.set_grad", false]], "set_impl() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_impl", false]], "set_impl() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_impl", false]], "set_input() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_input", false]], "set_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_input", false]], "set_name() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_name", false]], "set_name() (aidge_core.node method)": [[6, "aidge_core.Node.set_name", false]], "set_ordered_inputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_ordered_inputs", false]], "set_ordered_outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_ordered_outputs", false]], "set_output() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_output", false]], "set_output() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_output", false]], "set_root_node() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_root_node", false]], "set_scheduling_policy() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.set_scheduling_policy", false]], "sigmoid() (in module aidge_core)": [[9, "aidge_core.Sigmoid", false]], "singlepassgraphmatching (class in aidge_core)": [[7, "aidge_core.SinglePassGraphMatching", false]], "size() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.size", false]], "slice() (in module aidge_core)": [[9, "aidge_core.Slice", false]], "softmax() (in module aidge_core)": [[9, "aidge_core.Softmax", false]], "sqrt() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.sqrt", false]], "sqrt() (in module aidge_core)": [[9, "aidge_core.Sqrt", false]], "sub() (in module aidge_core)": [[9, "aidge_core.Sub", false]], "supported_operators() (in module aidge_onnx.node_export)": [[13, "aidge_onnx.node_export.supported_operators", false]], "supported_operators() (in module aidge_onnx.node_import)": [[13, "aidge_onnx.node_import.supported_operators", false]], "tag_conditional_nodes() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.tag_conditional_nodes", false]], "tag_conditional_nodes() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.tag_conditional_nodes", false]], "tag_conditional_nodes() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.tag_conditional_nodes", false]], "tanh() (in module aidge_core)": [[9, "aidge_core.Tanh", false]], "tensor (class in aidge_core)": [[4, "aidge_core.Tensor", false]], "transpose() (in module aidge_core)": [[9, "aidge_core.Transpose", false]], "type() (aidge_core.node method)": [[6, "aidge_core.Node.type", false]], "type() (aidge_core.operator method)": [[9, "aidge_core.Operator.type", false]], "type() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.type", false]], "undefined() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.undefined", false]], "zeros() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.zeros", false]]}, "objects": {"": [[9, 0, 1, "_CPPv4N5Aidge3AddERKNSt6stringE", "Aidge::Add"], [9, 1, 1, "_CPPv4N5Aidge3AddERKNSt6stringE", "Aidge::Add::name"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::AvgPooling"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::AvgPooling::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::AvgPooling::ceil_mode"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::AvgPooling::dilations"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::AvgPooling::kernel_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::AvgPooling::name"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::AvgPooling::stride_dims"], [9, 0, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm"], [9, 2, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::DIM"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::epsilon"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::momentum"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::name"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::nbFeatures"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::trainingMode"], [9, 0, 1, "_CPPv4N5Aidge4CastEK8DataTypeRKNSt6stringE", "Aidge::Cast"], [9, 1, 1, "_CPPv4N5Aidge4CastEK8DataTypeRKNSt6stringE", "Aidge::Cast::name"], [9, 1, 1, "_CPPv4N5Aidge4CastEK8DataTypeRKNSt6stringE", "Aidge::Cast::targetType"], [9, 0, 1, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", "Aidge::Concat"], [9, 1, 1, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", "Aidge::Concat::axis"], [9, 1, 1, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", "Aidge::Concat::name"], [9, 1, 1, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", "Aidge::Concat::nbIn"], [6, 3, 1, "_CPPv4N5Aidge9ConnectorE", "Aidge::Connector"], [6, 0, 1, "_CPPv4N5Aidge9Connector9ConnectorENSt10shared_ptrI4NodeEE", "Aidge::Connector::Connector"], [6, 0, 1, "_CPPv4N5Aidge9Connector9ConnectorEv", "Aidge::Connector::Connector"], [6, 1, 1, "_CPPv4N5Aidge9Connector9ConnectorENSt10shared_ptrI4NodeEE", "Aidge::Connector::Connector::node"], [6, 0, 1, "_CPPv4NK5Aidge9Connector5indexEv", "Aidge::Connector::index"], [6, 0, 1, "_CPPv4NK5Aidge9Connector4nodeEv", "Aidge::Connector::node"], [6, 0, 1, "_CPPv4NK5Aidge9ConnectorixE9IOIndex_t", "Aidge::Connector::operator[]"], [6, 1, 1, "_CPPv4NK5Aidge9ConnectorixE9IOIndex_t", "Aidge::Connector::operator[]::index"], [6, 0, 1, "_CPPv4NK5Aidge9Connector4sizeEv", "Aidge::Connector::size"], [6, 0, 1, "_CPPv4N5Aidge9ConnectorD0Ev", "Aidge::Connector::~Connector"], [9, 0, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv"], [9, 2, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::DIM"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::dilationDims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::inChannels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::kernelDims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::name"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::noBias"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::outChannels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::strideDims"], [9, 0, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise"], [9, 2, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::DIM"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::dilationDims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::kernelDims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::name"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::nbChannels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::noBias"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::strideDims"], [4, 3, 1, "_CPPv4N5Aidge12DataProviderE", "Aidge::DataProvider"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::backend"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::batchSize"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::database"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::dropLast"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::shuffle"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider4doneEv", "Aidge::DataProvider::done"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider13getIndexBatchEv", "Aidge::DataProvider::getIndexBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider10getNbBatchEv", "Aidge::DataProvider::getNbBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider19incrementIndexBatchEv", "Aidge::DataProvider::incrementIndexBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider4iterEv", "Aidge::DataProvider::iter"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider4nextEv", "Aidge::DataProvider::next"], [4, 0, 1, "_CPPv4NK5Aidge12DataProvider9readBatchEv", "Aidge::DataProvider::readBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider15resetIndexBatchEv", "Aidge::DataProvider::resetIndexBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider10setBatchesEv", "Aidge::DataProvider::setBatches"], [4, 3, 1, "_CPPv4N5Aidge8DatabaseE", "Aidge::Database"], [4, 0, 1, "_CPPv4N5Aidge8Database8DatabaseEv", "Aidge::Database::Database"], [4, 0, 1, "_CPPv4NK5Aidge8Database7getItemEKNSt6size_tE", "Aidge::Database::getItem"], [4, 1, 1, "_CPPv4NK5Aidge8Database7getItemEKNSt6size_tE", "Aidge::Database::getItem::index"], [4, 0, 1, "_CPPv4NK5Aidge8Database6getLenEv", "Aidge::Database::getLen"], [4, 0, 1, "_CPPv4NK5Aidge8Database15getNbModalitiesEv", "Aidge::Database::getNbModalities"], [4, 0, 1, "_CPPv4N5Aidge8DatabaseD0Ev", "Aidge::Database::~Database"], [9, 0, 1, "_CPPv4N5Aidge3DivERKNSt6stringE", "Aidge::Div"], [9, 1, 1, "_CPPv4N5Aidge3DivERKNSt6stringE", "Aidge::Div::name"], [9, 0, 1, "_CPPv4N5Aidge3ErfERKNSt6stringE", "Aidge::Erf"], [9, 1, 1, "_CPPv4N5Aidge3ErfERKNSt6stringE", "Aidge::Erf::name"], [9, 0, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC"], [9, 1, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC::inChannels"], [9, 1, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC::name"], [9, 1, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC::noBias"], [9, 1, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC::outChannels"], [9, 0, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather"], [9, 1, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather::axis"], [9, 1, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather::gatheredShape"], [9, 1, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather::indices"], [9, 1, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather::name"], [9, 0, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator"], [9, 0, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", "Aidge::GenericOperator"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::name"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", "Aidge::GenericOperator::name"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::nbData"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::nbOut"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::nbParam"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", "Aidge::GenericOperator::op"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::type"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", "Aidge::GenericOperator::type"], [6, 3, 1, "_CPPv4N5Aidge9GraphViewE", "Aidge::GraphView"], [6, 0, 1, "_CPPv4N5Aidge9GraphView9GraphViewERKNSt6stringE", "Aidge::GraphView::GraphView"], [6, 1, 1, "_CPPv4N5Aidge9GraphView9GraphViewERKNSt6stringE", "Aidge::GraphView::GraphView::name"], [6, 0, 1, "_CPPv4N5Aidge9GraphView3addE7NodePtrb", "Aidge::GraphView::add"], [6, 0, 1, "_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb", "Aidge::GraphView::add"], [6, 0, 1, "_CPPv4N5Aidge9GraphView3addENSt3setI7NodePtrEEb", "Aidge::GraphView::add"], [6, 0, 1, "_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb", "Aidge::GraphView::add"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addE7NodePtrb", "Aidge::GraphView::add::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb", "Aidge::GraphView::add::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt3setI7NodePtrEEb", "Aidge::GraphView::add::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb", "Aidge::GraphView::add::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb", "Aidge::GraphView::add::otherGraph"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addE7NodePtrb", "Aidge::GraphView::add::otherNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt3setI7NodePtrEEb", "Aidge::GraphView::add::otherNodes"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb", "Aidge::GraphView::add::otherNodes"], [6, 0, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild"], [6, 0, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild"], [6, 0, 1, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", "Aidge::GraphView::addChild"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::fromOutNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", "Aidge::GraphView::addChild::fromOutNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::fromOutNodeName"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::fromTensor"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::fromTensor"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", "Aidge::GraphView::addChild::toNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::toOtherNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::toOtherNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", "Aidge::GraphView::addChild::toOtherView"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::toTensor"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::toTensor"], [6, 0, 1, "_CPPv4N5Aidge9GraphView17addOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEEi", "Aidge::GraphView::addOrderedOutputs"], [6, 1, 1, "_CPPv4N5Aidge9GraphView17addOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEEi", "Aidge::GraphView::addOrderedOutputs::outputs"], [6, 1, 1, "_CPPv4N5Aidge9GraphView17addOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEEi", "Aidge::GraphView::addOrderedOutputs::pos"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView5cloneEv", "Aidge::GraphView::clone"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView13cloneCallbackEPF7NodePtr7NodePtrE", "Aidge::GraphView::cloneCallback"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView13cloneCallbackEPF7NodePtr7NodePtrE", "Aidge::GraphView::cloneCallback::cloneNode"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView20cloneSharedOperatorsEv", "Aidge::GraphView::cloneSharedOperators"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView20cloneSharedProducersEv", "Aidge::GraphView::cloneSharedProducers"], [6, 0, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile::backend"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile::datatype"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile::device"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile::dims"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10dataInputsEKNSt6stringE", "Aidge::GraphView::dataInputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10dataInputsEv", "Aidge::GraphView::dataInputs"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10dataInputsEKNSt6stringE", "Aidge::GraphView::dataInputs::name"], [6, 0, 1, "_CPPv4N5Aidge9GraphView12forwardDTypeE8DataType", "Aidge::GraphView::forwardDType"], [6, 0, 1, "_CPPv4N5Aidge9GraphView12forwardDTypeERKNSt6vectorI8DataTypeEE", "Aidge::GraphView::forwardDType"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12forwardDTypeE8DataType", "Aidge::GraphView::forwardDType::inputType"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12forwardDTypeERKNSt6vectorI8DataTypeEE", "Aidge::GraphView::forwardDType::inputTypes"], [6, 0, 1, "_CPPv4N5Aidge9GraphView11forwardDimsERKNSt6vectorINSt6vectorI9DimSize_tEEEEb", "Aidge::GraphView::forwardDims"], [6, 1, 1, "_CPPv4N5Aidge9GraphView11forwardDimsERKNSt6vectorINSt6vectorI9DimSize_tEEEEb", "Aidge::GraphView::forwardDims::allowDataDependency"], [6, 1, 1, "_CPPv4N5Aidge9GraphView11forwardDimsERKNSt6vectorINSt6vectorI9DimSize_tEEEEb", "Aidge::GraphView::forwardDims::dims"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEK7NodePtr", "Aidge::GraphView::getChildren"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEKNSt6stringE", "Aidge::GraphView::getChildren"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEv", "Aidge::GraphView::getChildren"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEKNSt6stringE", "Aidge::GraphView::getChildren::nodeName"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEK7NodePtr", "Aidge::GraphView::getChildren::otherNode"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView19getNbFreeDataInputsEv", "Aidge::GraphView::getNbFreeDataInputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView7getNodeERKNSt6stringE", "Aidge::GraphView::getNode"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView7getNodeERKNSt6stringE", "Aidge::GraphView::getNode::nodeName"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView8getNodesEv", "Aidge::GraphView::getNodes"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView16getOrderedInputsEv", "Aidge::GraphView::getOrderedInputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView15getOrderedNodesEb", "Aidge::GraphView::getOrderedNodes"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView15getOrderedNodesEb", "Aidge::GraphView::getOrderedNodes::reversed"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView17getOrderedOutputsEv", "Aidge::GraphView::getOrderedOutputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView17getOrderedParentsEv", "Aidge::GraphView::getOrderedParents"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10getParentsEKNSt6stringE", "Aidge::GraphView::getParents"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10getParentsEv", "Aidge::GraphView::getParents"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10getParentsEKNSt6stringE", "Aidge::GraphView::getParents::nodeName"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView14getRankedNodesEv", "Aidge::GraphView::getRankedNodes"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb", "Aidge::GraphView::getRankedNodesName"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb", "Aidge::GraphView::getRankedNodesName::format"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb", "Aidge::GraphView::getRankedNodesName::markNonUnicity"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView6inViewERK7NodePtr", "Aidge::GraphView::inView"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView6inViewERKNSt6stringE", "Aidge::GraphView::inView"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView6inViewERKNSt6stringE", "Aidge::GraphView::inView::nodeName"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView6inViewERK7NodePtr", "Aidge::GraphView::inView::nodePtr"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10inputNodesE13InputCategory", "Aidge::GraphView::inputNodes"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10inputNodesE13InputCategory", "Aidge::GraphView::inputNodes::filter"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView6inputsERKNSt6stringE", "Aidge::GraphView::inputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView6inputsEv", "Aidge::GraphView::inputs"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView6inputsERKNSt6stringE", "Aidge::GraphView::inputs::name"], [6, 0, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::childInputTensorIdx"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::childNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::newParentInputTensorIdx"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::newParentNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::newParentOutputTensorIdx"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11isInputNodeERK7NodePtr", "Aidge::GraphView::isInputNode"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView11isInputNodeERK7NodePtr", "Aidge::GraphView::isInputNode::nodePtr"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView12isOutputNodeERK7NodePtr", "Aidge::GraphView::isOutputNode"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView12isOutputNodeERK7NodePtr", "Aidge::GraphView::isOutputNode::nodePtr"], [6, 0, 1, "_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE", "Aidge::GraphView::link"], [6, 1, 1, "_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE", "Aidge::GraphView::link::name1_inID"], [6, 1, 1, "_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE", "Aidge::GraphView::link::name2_outID"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10logOutputsERKNSt6stringE", "Aidge::GraphView::logOutputs"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10logOutputsERKNSt6stringE", "Aidge::GraphView::logOutputs::dirName"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView4nameEv", "Aidge::GraphView::name"], [6, 0, 1, "_CPPv4N5Aidge9GraphViewclEKNSt6vectorI9ConnectorEE", "Aidge::GraphView::operator()"], [6, 1, 1, "_CPPv4N5Aidge9GraphViewclEKNSt6vectorI9ConnectorEE", "Aidge::GraphView::operator()::ctors"], [6, 0, 1, "_CPPv4NK5Aidge9GraphVieweqERK9GraphView", "Aidge::GraphView::operator=="], [6, 1, 1, "_CPPv4NK5Aidge9GraphVieweqERK9GraphView", "Aidge::GraphView::operator==::gv"], [6, 0, 1, "_CPPv4NK5Aidge9GraphViewixERKNSt6stringE", "Aidge::GraphView::operator[]"], [6, 1, 1, "_CPPv4NK5Aidge9GraphViewixERKNSt6stringE", "Aidge::GraphView::operator[]::nodeName"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11outputNodesEv", "Aidge::GraphView::outputNodes"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView7outputsERKNSt6stringE", "Aidge::GraphView::outputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView7outputsEv", "Aidge::GraphView::outputs"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView7outputsERKNSt6stringE", "Aidge::GraphView::outputs::nodeName"], [6, 0, 1, "_CPPv4N5Aidge9GraphView6removeE7NodePtrb", "Aidge::GraphView::remove"], [6, 1, 1, "_CPPv4N5Aidge9GraphView6removeE7NodePtrb", "Aidge::GraphView::remove::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView6removeE7NodePtrb", "Aidge::GraphView::remove::nodePtr"], [6, 0, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE", "Aidge::GraphView::replace"], [6, 0, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt3setI7NodePtrEERKNSt3setI7NodePtrEE", "Aidge::GraphView::replace"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE", "Aidge::GraphView::replace::newG"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt3setI7NodePtrEERKNSt3setI7NodePtrEE", "Aidge::GraphView::replace::newNodes"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE", "Aidge::GraphView::replace::oldG"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt3setI7NodePtrEERKNSt3setI7NodePtrEE", "Aidge::GraphView::replace::oldNodes"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView8rootNodeEv", "Aidge::GraphView::rootNode"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", "Aidge::GraphView::save"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", "Aidge::GraphView::save::path"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", "Aidge::GraphView::save::showProducers"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", "Aidge::GraphView::save::verbose"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t", "Aidge::GraphView::setBackend"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t", "Aidge::GraphView::setBackend::backend"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t", "Aidge::GraphView::setBackend::device"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView13setDataFormatERK10DataFormat", "Aidge::GraphView::setDataFormat"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView13setDataFormatERK10DataFormat", "Aidge::GraphView::setDataFormat::dataformat"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11setDataTypeERK8DataType", "Aidge::GraphView::setDataType"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView11setDataTypeERK8DataType", "Aidge::GraphView::setDataType::datatype"], [6, 0, 1, "_CPPv4N5Aidge9GraphView10setInputIdE9IOIndex_t9IOIndex_t", "Aidge::GraphView::setInputId"], [6, 1, 1, "_CPPv4N5Aidge9GraphView10setInputIdE9IOIndex_t9IOIndex_t", "Aidge::GraphView::setInputId::inID"], [6, 1, 1, "_CPPv4N5Aidge9GraphView10setInputIdE9IOIndex_t9IOIndex_t", "Aidge::GraphView::setInputId::newNodeOutID"], [6, 0, 1, "_CPPv4N5Aidge9GraphView7setNameERKNSt6stringE", "Aidge::GraphView::setName"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7setNameERKNSt6stringE", "Aidge::GraphView::setName::name"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView12setNodesNameEv", "Aidge::GraphView::setNodesName"], [6, 0, 1, "_CPPv4N5Aidge9GraphView16setOrderedInputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", "Aidge::GraphView::setOrderedInputs"], [6, 1, 1, "_CPPv4N5Aidge9GraphView16setOrderedInputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", "Aidge::GraphView::setOrderedInputs::inputs"], [6, 0, 1, "_CPPv4N5Aidge9GraphView17setOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", "Aidge::GraphView::setOrderedOutputs"], [6, 1, 1, "_CPPv4N5Aidge9GraphView17setOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", "Aidge::GraphView::setOrderedOutputs::outputs"], [6, 0, 1, "_CPPv4N5Aidge9GraphView11setRootNodeE7NodePtr", "Aidge::GraphView::setRootNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView11setRootNodeE7NodePtr", "Aidge::GraphView::setRootNode::node"], [6, 0, 1, "_CPPv4N5Aidge9GraphView4swapER4NodeR4Node", "Aidge::GraphView::swap"], [6, 1, 1, "_CPPv4N5Aidge9GraphView4swapER4NodeR4Node", "Aidge::GraphView::swap::node"], [6, 1, 1, "_CPPv4N5Aidge9GraphView4swapER4NodeR4Node", "Aidge::GraphView::swap::otherNode"], [6, 0, 1, "_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::GraphView::updateNodeName"], [6, 1, 1, "_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::GraphView::updateNodeName::newName"], [6, 1, 1, "_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::GraphView::updateNodeName::node"], [9, 0, 1, "_CPPv4N5Aidge8IdentityERKNSt6stringE", "Aidge::Identity"], [9, 1, 1, "_CPPv4N5Aidge8IdentityERKNSt6stringE", "Aidge::Identity::name"], [3, 3, 1, "_CPPv4N5Aidge8ImplSpecE", "Aidge::ImplSpec"], [3, 3, 1, "_CPPv4N5Aidge8ImplSpec6IOSpecE", "Aidge::ImplSpec::IOSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", "Aidge::ImplSpec::IOSpec::IOSpec"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", "Aidge::ImplSpec::IOSpec::IOSpec::dims_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", "Aidge::ImplSpec::IOSpec::IOSpec::format_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", "Aidge::ImplSpec::IOSpec::IOSpec::type_"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec4dimsE", "Aidge::ImplSpec::IOSpec::dims"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6formatE", "Aidge::ImplSpec::IOSpec::format"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec4typeE", "Aidge::ImplSpec::IOSpec::type"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKN5Aidge8ImplSpecE", "Aidge::ImplSpec::ImplSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::attrs_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::attrs_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::attrs_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::attrs_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::i"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::i"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::io"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::o"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::o"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec5attrsE", "Aidge::ImplSpec::attrs"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec6inputsE", "Aidge::ImplSpec::inputs"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec7outputsE", "Aidge::ImplSpec::outputs"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpecD0Ev", "Aidge::ImplSpec::~ImplSpec"], [9, 0, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::hidden_channels"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::in_channels"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::name"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::noBias"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::seq_length"], [9, 0, 1, "_CPPv4N5Aidge9LeakyReLUEfRKNSt6stringE", "Aidge::LeakyReLU"], [9, 1, 1, "_CPPv4N5Aidge9LeakyReLUEfRKNSt6stringE", "Aidge::LeakyReLU::name"], [9, 1, 1, "_CPPv4N5Aidge9LeakyReLUEfRKNSt6stringE", "Aidge::LeakyReLU::negativeSlope"], [2, 3, 1, "_CPPv4N5Aidge5MNISTE", "Aidge::MNIST"], [2, 5, 1, "_CPPv4N5Aidge5MNIST8DataTypeE", "Aidge::MNIST::DataType"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType6DoubleE", "Aidge::MNIST::DataType::Double"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType5FloatE", "Aidge::MNIST::DataType::Float"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType3IntE", "Aidge::MNIST::DataType::Int"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType5ShortE", "Aidge::MNIST::DataType::Short"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType6SignedE", "Aidge::MNIST::DataType::Signed"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType8UnsignedE", "Aidge::MNIST::DataType::Unsigned"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType6DoubleE", "Aidge::MNIST::Double"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType5FloatE", "Aidge::MNIST::Float"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType3IntE", "Aidge::MNIST::Int"], [2, 0, 1, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", "Aidge::MNIST::MNIST"], [2, 1, 1, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", "Aidge::MNIST::MNIST::dataPath"], [2, 1, 1, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", "Aidge::MNIST::MNIST::loadDataInMemory"], [2, 1, 1, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", "Aidge::MNIST::MNIST::train"], [2, 7, 1, "_CPPv4N5Aidge5MNIST11MagicNumberE", "Aidge::MNIST::MagicNumber"], [2, 4, 1, "_CPPv4N5Aidge5MNIST11MagicNumber4byteE", "Aidge::MNIST::MagicNumber::byte"], [2, 4, 1, "_CPPv4N5Aidge5MNIST11MagicNumber5valueE", "Aidge::MNIST::MagicNumber::value"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType5ShortE", "Aidge::MNIST::Short"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType6SignedE", "Aidge::MNIST::Signed"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType8UnsignedE", "Aidge::MNIST::Unsigned"], [2, 0, 1, "_CPPv4NK5Aidge5MNIST7getItemEKNSt6size_tE", "Aidge::MNIST::getItem"], [2, 1, 1, "_CPPv4NK5Aidge5MNIST7getItemEKNSt6size_tE", "Aidge::MNIST::getItem::index"], [2, 0, 1, "_CPPv4NK5Aidge5MNIST6getLenEv", "Aidge::MNIST::getLen"], [2, 0, 1, "_CPPv4NK5Aidge5MNIST15getNbModalitiesEv", "Aidge::MNIST::getNbModalities"], [2, 0, 1, "_CPPv4N5Aidge5MNISTD0Ev", "Aidge::MNIST::~MNIST"], [9, 0, 1, "_CPPv4N5Aidge6MatMulERKNSt6stringE", "Aidge::MatMul"], [9, 1, 1, "_CPPv4N5Aidge6MatMulERKNSt6stringE", "Aidge::MatMul::name"], [9, 0, 1, "_CPPv4N5Aidge8MemorizeEKNSt8uint32_tERKNSt6stringE", "Aidge::Memorize"], [9, 1, 1, "_CPPv4N5Aidge8MemorizeEKNSt8uint32_tERKNSt6stringE", "Aidge::Memorize::endStep"], [9, 1, 1, "_CPPv4N5Aidge8MemorizeEKNSt8uint32_tERKNSt6stringE", "Aidge::Memorize::name"], [9, 0, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator"], [9, 1, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator::forcedInputsCategory"], [9, 1, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator::graph"], [9, 1, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator::name"], [9, 1, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator::type"], [9, 0, 1, "_CPPv4N5Aidge4MoveERKNSt6stringE", "Aidge::Move"], [9, 1, 1, "_CPPv4N5Aidge4MoveERKNSt6stringE", "Aidge::Move::name"], [9, 0, 1, "_CPPv4N5Aidge3MulERKNSt6stringE", "Aidge::Mul"], [9, 1, 1, "_CPPv4N5Aidge3MulERKNSt6stringE", "Aidge::Mul::name"], [6, 3, 1, "_CPPv4N5Aidge4NodeE", "Aidge::Node"], [6, 0, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEENSt10shared_ptrI17DynamicAttributesEE", "Aidge::Node::Node"], [6, 0, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEERKNSt6stringE", "Aidge::Node::Node"], [6, 0, 1, "_CPPv4N5Aidge4Node4NodeEv", "Aidge::Node::Node"], [6, 1, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEENSt10shared_ptrI17DynamicAttributesEE", "Aidge::Node::Node::attrs"], [6, 1, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEERKNSt6stringE", "Aidge::Node::Node::name"], [6, 1, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEENSt10shared_ptrI17DynamicAttributesEE", "Aidge::Node::Node::op"], [6, 1, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEERKNSt6stringE", "Aidge::Node::Node::op"], [6, 0, 1, "_CPPv4N5Aidge4Node16addAfterBackwardENSt8functionIFbvEEE", "Aidge::Node::addAfterBackward"], [6, 1, 1, "_CPPv4N5Aidge4Node16addAfterBackwardENSt8functionIFbvEEE", "Aidge::Node::addAfterBackward::func"], [6, 0, 1, "_CPPv4N5Aidge4Node15addAfterForwardENSt8functionIFbvEEE", "Aidge::Node::addAfterForward"], [6, 1, 1, "_CPPv4N5Aidge4Node15addAfterForwardENSt8functionIFbvEEE", "Aidge::Node::addAfterForward::func"], [6, 0, 1, "_CPPv4N5Aidge4Node17addBeforeBackwardENSt8functionIFbvEEE", "Aidge::Node::addBeforeBackward"], [6, 1, 1, "_CPPv4N5Aidge4Node17addBeforeBackwardENSt8functionIFbvEEE", "Aidge::Node::addBeforeBackward::func"], [6, 0, 1, "_CPPv4N5Aidge4Node16addBeforeForwardENSt8functionIFbvEEE", "Aidge::Node::addBeforeForward"], [6, 1, 1, "_CPPv4N5Aidge4Node16addBeforeForwardENSt8functionIFbvEEE", "Aidge::Node::addBeforeForward::func"], [6, 0, 1, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", "Aidge::Node::addChild"], [6, 0, 1, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::Node::addChild"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", "Aidge::Node::addChild::otherInId"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::Node::addChild::otherInId"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::Node::addChild::otherNode"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", "Aidge::Node::addChild::otherView"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", "Aidge::Node::addChild::outId"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::Node::addChild::outId"], [6, 0, 1, "_CPPv4N5Aidge4Node7addViewERKNSt10shared_ptrI9GraphViewEE", "Aidge::Node::addView"], [6, 1, 1, "_CPPv4N5Aidge4Node7addViewERKNSt10shared_ptrI9GraphViewEE", "Aidge::Node::addView::graphPtr"], [6, 0, 1, "_CPPv4NK5Aidge4Node10attributesEv", "Aidge::Node::attributes"], [6, 0, 1, "_CPPv4N5Aidge4Node8backwardEv", "Aidge::Node::backward"], [6, 0, 1, "_CPPv4N5Aidge4Node5cloneE7NodePtr", "Aidge::Node::clone"], [6, 0, 1, "_CPPv4NK5Aidge4Node5cloneEv", "Aidge::Node::clone"], [6, 1, 1, "_CPPv4N5Aidge4Node5cloneE7NodePtr", "Aidge::Node::clone::node"], [6, 0, 1, "_CPPv4N5Aidge4Node20cloneSharedOperatorsE7NodePtr", "Aidge::Node::cloneSharedOperators"], [6, 0, 1, "_CPPv4NK5Aidge4Node20cloneSharedOperatorsEv", "Aidge::Node::cloneSharedOperators"], [6, 1, 1, "_CPPv4N5Aidge4Node20cloneSharedOperatorsE7NodePtr", "Aidge::Node::cloneSharedOperators::node"], [6, 0, 1, "_CPPv4N5Aidge4Node20cloneSharedProducersE7NodePtr", "Aidge::Node::cloneSharedProducers"], [6, 0, 1, "_CPPv4NK5Aidge4Node20cloneSharedProducersEv", "Aidge::Node::cloneSharedProducers"], [6, 1, 1, "_CPPv4N5Aidge4Node20cloneSharedProducersE7NodePtr", "Aidge::Node::cloneSharedProducers::node"], [6, 0, 1, "_CPPv4N5Aidge4Node16createUniqueNameENSt6stringE", "Aidge::Node::createUniqueName"], [6, 1, 1, "_CPPv4N5Aidge4Node16createUniqueNameENSt6stringE", "Aidge::Node::createUniqueName::name"], [6, 0, 1, "_CPPv4NK5Aidge4Node10dataInputsEv", "Aidge::Node::dataInputs"], [6, 0, 1, "_CPPv4N5Aidge4Node7forwardEv", "Aidge::Node::forward"], [6, 0, 1, "_CPPv4NK5Aidge4Node11getChildrenEK9IOIndex_t", "Aidge::Node::getChildren"], [6, 0, 1, "_CPPv4NK5Aidge4Node11getChildrenEv", "Aidge::Node::getChildren"], [6, 1, 1, "_CPPv4NK5Aidge4Node11getChildrenEK9IOIndex_t", "Aidge::Node::getChildren::outId"], [6, 0, 1, "_CPPv4NK5Aidge4Node21getFirstFreeDataInputEv", "Aidge::Node::getFirstFreeDataInput"], [6, 0, 1, "_CPPv4NK5Aidge4Node19getNbFreeDataInputsEv", "Aidge::Node::getNbFreeDataInputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node11getOperatorEv", "Aidge::Node::getOperator"], [6, 0, 1, "_CPPv4NK5Aidge4Node18getOrderedChildrenEv", "Aidge::Node::getOrderedChildren"], [6, 0, 1, "_CPPv4N5Aidge4Node9getParentEK9IOIndex_t", "Aidge::Node::getParent"], [6, 1, 1, "_CPPv4N5Aidge4Node9getParentEK9IOIndex_t", "Aidge::Node::getParent::inId"], [6, 0, 1, "_CPPv4NK5Aidge4Node10getParentsEv", "Aidge::Node::getParents"], [6, 0, 1, "_CPPv4NK5Aidge4Node5inputEK9IOIndex_t", "Aidge::Node::input"], [6, 1, 1, "_CPPv4NK5Aidge4Node5inputEK9IOIndex_t", "Aidge::Node::input::inID"], [6, 0, 1, "_CPPv4NK5Aidge4Node13inputCategoryE9IOIndex_t", "Aidge::Node::inputCategory"], [6, 1, 1, "_CPPv4NK5Aidge4Node13inputCategoryE9IOIndex_t", "Aidge::Node::inputCategory::idx"], [6, 0, 1, "_CPPv4N5Aidge4Node9inputNameEK9IOIndex_tRKNSt6stringE", "Aidge::Node::inputName"], [6, 0, 1, "_CPPv4NK5Aidge4Node9inputNameEK9IOIndex_t", "Aidge::Node::inputName"], [6, 1, 1, "_CPPv4N5Aidge4Node9inputNameEK9IOIndex_tRKNSt6stringE", "Aidge::Node::inputName::inID"], [6, 1, 1, "_CPPv4NK5Aidge4Node9inputNameEK9IOIndex_t", "Aidge::Node::inputName::inID"], [6, 1, 1, "_CPPv4N5Aidge4Node9inputNameEK9IOIndex_tRKNSt6stringE", "Aidge::Node::inputName::newName"], [6, 0, 1, "_CPPv4NK5Aidge4Node6inputsEv", "Aidge::Node::inputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node11inputsNamesEv", "Aidge::Node::inputsNames"], [6, 0, 1, "_CPPv4NK5Aidge4Node4nameEv", "Aidge::Node::name"], [6, 0, 1, "_CPPv4NK5Aidge4Node8nbInputsEv", "Aidge::Node::nbInputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node9nbOutputsEv", "Aidge::Node::nbOutputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node13nbValidInputsEv", "Aidge::Node::nbValidInputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node14nbValidOutputsEv", "Aidge::Node::nbValidOutputs"], [6, 0, 1, "_CPPv4N5Aidge4NodeclERKNSt6vectorI9ConnectorEE", "Aidge::Node::operator()"], [6, 1, 1, "_CPPv4N5Aidge4NodeclERKNSt6vectorI9ConnectorEE", "Aidge::Node::operator()::ctors"], [6, 0, 1, "_CPPv4N5Aidge4NodeeqERK4NodeRK4Node", "Aidge::Node::operator=="], [6, 1, 1, "_CPPv4N5Aidge4NodeeqERK4NodeRK4Node", "Aidge::Node::operator==::lhs"], [6, 1, 1, "_CPPv4N5Aidge4NodeeqERK4NodeRK4Node", "Aidge::Node::operator==::rhs"], [6, 0, 1, "_CPPv4NK5Aidge4Node6outputE9IOIndex_t", "Aidge::Node::output"], [6, 1, 1, "_CPPv4NK5Aidge4Node6outputE9IOIndex_t", "Aidge::Node::output::outId"], [6, 0, 1, "_CPPv4N5Aidge4Node10outputNameE9IOIndex_tRKNSt6stringE", "Aidge::Node::outputName"], [6, 0, 1, "_CPPv4NK5Aidge4Node10outputNameE9IOIndex_t", "Aidge::Node::outputName"], [6, 1, 1, "_CPPv4N5Aidge4Node10outputNameE9IOIndex_tRKNSt6stringE", "Aidge::Node::outputName::newName"], [6, 1, 1, "_CPPv4N5Aidge4Node10outputNameE9IOIndex_tRKNSt6stringE", "Aidge::Node::outputName::outId"], [6, 1, 1, "_CPPv4NK5Aidge4Node10outputNameE9IOIndex_t", "Aidge::Node::outputName::outId"], [6, 0, 1, "_CPPv4NK5Aidge4Node7outputsEv", "Aidge::Node::outputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node12outputsNamesEv", "Aidge::Node::outputsNames"], [6, 0, 1, "_CPPv4NK5Aidge4Node16parentIsBackEdgeE9IOIndex_t", "Aidge::Node::parentIsBackEdge"], [6, 1, 1, "_CPPv4NK5Aidge4Node16parentIsBackEdgeE9IOIndex_t", "Aidge::Node::parentIsBackEdge::idx"], [6, 0, 1, "_CPPv4N5Aidge4Node11removeChildEK7NodePtrK9IOIndex_t", "Aidge::Node::removeChild"], [6, 1, 1, "_CPPv4N5Aidge4Node11removeChildEK7NodePtrK9IOIndex_t", "Aidge::Node::removeChild::nodePtr"], [6, 1, 1, "_CPPv4N5Aidge4Node11removeChildEK7NodePtrK9IOIndex_t", "Aidge::Node::removeChild::outId"], [6, 0, 1, "_CPPv4N5Aidge4Node10removeViewERKNSt10shared_ptrI9GraphViewEE", "Aidge::Node::removeView"], [6, 1, 1, "_CPPv4N5Aidge4Node10removeViewERKNSt10shared_ptrI9GraphViewEE", "Aidge::Node::removeView::graphPtr"], [6, 0, 1, "_CPPv4N5Aidge4Node16resetConnectionsEb", "Aidge::Node::resetConnections"], [6, 1, 1, "_CPPv4N5Aidge4Node16resetConnectionsEb", "Aidge::Node::resetConnections::includeLearnableParam"], [6, 0, 1, "_CPPv4N5Aidge4Node7setNameERKNSt6stringE", "Aidge::Node::setName"], [6, 1, 1, "_CPPv4N5Aidge4Node7setNameERKNSt6stringE", "Aidge::Node::setName::name"], [6, 0, 1, "_CPPv4NK5Aidge4Node4typeEv", "Aidge::Node::type"], [6, 0, 1, "_CPPv4NK5Aidge4Node5validEv", "Aidge::Node::valid"], [6, 0, 1, "_CPPv4NK5Aidge4Node5viewsEv", "Aidge::Node::views"], [6, 0, 1, "_CPPv4N5Aidge4NodeD0Ev", "Aidge::Node::~Node"], [9, 3, 1, "_CPPv4N5Aidge8OperatorE", "Aidge::Operator"], [9, 0, 1, "_CPPv4N5Aidge8Operator8OperatorERK8Operator", "Aidge::Operator::Operator"], [9, 0, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator"], [9, 0, 1, "_CPPv4N5Aidge8Operator8OperatorEv", "Aidge::Operator::Operator"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator::inputsCategory"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator::nbOut"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERK8Operator", "Aidge::Operator::Operator::op"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator::operatorType"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator::type"], [9, 0, 1, "_CPPv4N5Aidge8Operator14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::associateInput"], [9, 1, 1, "_CPPv4N5Aidge8Operator14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::associateInput::data"], [9, 1, 1, "_CPPv4N5Aidge8Operator14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::associateInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator10attributesEv", "Aidge::Operator::attributes"], [9, 0, 1, "_CPPv4NK5Aidge8Operator7backendEv", "Aidge::Operator::backend"], [9, 0, 1, "_CPPv4N5Aidge8Operator8backwardEv", "Aidge::Operator::backward"], [9, 0, 1, "_CPPv4NK5Aidge8Operator5cloneEv", "Aidge::Operator::clone"], [9, 0, 1, "_CPPv4N5Aidge8Operator7forwardEv", "Aidge::Operator::forward"], [9, 0, 1, "_CPPv4NK5Aidge8Operator20getAvailableBackendsEv", "Aidge::Operator::getAvailableBackends"], [9, 0, 1, "_CPPv4NK5Aidge8Operator7getImplEv", "Aidge::Operator::getImpl"], [9, 0, 1, "_CPPv4N5Aidge8Operator13getInputsNameEv", "Aidge::Operator::getInputsName"], [9, 0, 1, "_CPPv4NK5Aidge8Operator17getNbConsumedDataEK9IOIndex_t", "Aidge::Operator::getNbConsumedData"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getNbConsumedDataEK9IOIndex_t", "Aidge::Operator::getNbConsumedData::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator17getNbProducedDataEK9IOIndex_t", "Aidge::Operator::getNbProducedData"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getNbProducedDataEK9IOIndex_t", "Aidge::Operator::getNbProducedData::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator17getNbRequiredDataEK9IOIndex_t", "Aidge::Operator::getNbRequiredData"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getNbRequiredDataEK9IOIndex_t", "Aidge::Operator::getNbRequiredData::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator22getNbRequiredProtectedEK9IOIndex_t", "Aidge::Operator::getNbRequiredProtected"], [9, 1, 1, "_CPPv4NK5Aidge8Operator22getNbRequiredProtectedEK9IOIndex_t", "Aidge::Operator::getNbRequiredProtected::inputIdx"], [9, 0, 1, "_CPPv4N5Aidge8Operator14getOutputsNameEv", "Aidge::Operator::getOutputsName"], [9, 0, 1, "_CPPv4NK5Aidge8Operator11getRawInputEK9IOIndex_t", "Aidge::Operator::getRawInput"], [9, 1, 1, "_CPPv4NK5Aidge8Operator11getRawInputEK9IOIndex_t", "Aidge::Operator::getRawInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator12getRawOutputEK9IOIndex_t", "Aidge::Operator::getRawOutput"], [9, 1, 1, "_CPPv4NK5Aidge8Operator12getRawOutputEK9IOIndex_t", "Aidge::Operator::getRawOutput::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator17getRequiredMemoryEK9IOIndex_tRKNSt6vectorI9DimSize_tEE", "Aidge::Operator::getRequiredMemory"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getRequiredMemoryEK9IOIndex_tRKNSt6vectorI9DimSize_tEE", "Aidge::Operator::getRequiredMemory::inputsSize"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getRequiredMemoryEK9IOIndex_tRKNSt6vectorI9DimSize_tEE", "Aidge::Operator::getRequiredMemory::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator19inheritedAttributesEv", "Aidge::Operator::inheritedAttributes"], [9, 0, 1, "_CPPv4NK5Aidge8Operator13inputCategoryE9IOIndex_t", "Aidge::Operator::inputCategory"], [9, 0, 1, "_CPPv4NK5Aidge8Operator13inputCategoryEv", "Aidge::Operator::inputCategory"], [9, 1, 1, "_CPPv4NK5Aidge8Operator13inputCategoryE9IOIndex_t", "Aidge::Operator::inputCategory::idx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator8isAtomicEv", "Aidge::Operator::isAtomic"], [9, 0, 1, "_CPPv4NK5Aidge8Operator10isBackEdgeE9IOIndex_t", "Aidge::Operator::isBackEdge"], [9, 1, 1, "_CPPv4NK5Aidge8Operator10isBackEdgeE9IOIndex_t", "Aidge::Operator::isBackEdge::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator15isOptionalInputENSt6size_tE", "Aidge::Operator::isOptionalInput"], [9, 1, 1, "_CPPv4NK5Aidge8Operator15isOptionalInputENSt6size_tE", "Aidge::Operator::isOptionalInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator8nbInputsEv", "Aidge::Operator::nbInputs"], [9, 0, 1, "_CPPv4NK5Aidge8Operator9nbOutputsEv", "Aidge::Operator::nbOutputs"], [9, 0, 1, "_CPPv4NK5Aidge8Operator12operatorTypeEv", "Aidge::Operator::operatorType"], [9, 0, 1, "_CPPv4N5Aidge8Operator22resetConsummerProducerEv", "Aidge::Operator::resetConsummerProducer"], [9, 0, 1, "_CPPv4N5Aidge8Operator10resetInputEK9IOIndex_t", "Aidge::Operator::resetInput"], [9, 1, 1, "_CPPv4N5Aidge8Operator10resetInputEK9IOIndex_t", "Aidge::Operator::resetInput::inputIdx"], [9, 0, 1, "_CPPv4N5Aidge8Operator12setBackEdgesERKNSt3setI9IOIndex_tEE", "Aidge::Operator::setBackEdges"], [9, 1, 1, "_CPPv4N5Aidge8Operator12setBackEdgesERKNSt3setI9IOIndex_tEE", "Aidge::Operator::setBackEdges::backEdges"], [9, 0, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6stringE11DeviceIdx_t", "Aidge::Operator::setBackend"], [9, 0, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6vectorINSt4pairINSt6stringE11DeviceIdx_tEEEE", "Aidge::Operator::setBackend"], [9, 1, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6vectorINSt4pairINSt6stringE11DeviceIdx_tEEEE", "Aidge::Operator::setBackend::backends"], [9, 1, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6stringE11DeviceIdx_t", "Aidge::Operator::setBackend::device"], [9, 1, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6stringE11DeviceIdx_t", "Aidge::Operator::setBackend::name"], [9, 0, 1, "_CPPv4NK5Aidge8Operator13setDataFormatERK10DataFormat", "Aidge::Operator::setDataFormat"], [9, 1, 1, "_CPPv4NK5Aidge8Operator13setDataFormatERK10DataFormat", "Aidge::Operator::setDataFormat::dataFormat"], [9, 0, 1, "_CPPv4NK5Aidge8Operator11setDataTypeERK8DataType", "Aidge::Operator::setDataType"], [9, 1, 1, "_CPPv4NK5Aidge8Operator11setDataTypeERK8DataType", "Aidge::Operator::setDataType::dataType"], [9, 0, 1, "_CPPv4N5Aidge8Operator7setImplENSt10shared_ptrI12OperatorImplEE", "Aidge::Operator::setImpl"], [9, 1, 1, "_CPPv4N5Aidge8Operator7setImplENSt10shared_ptrI12OperatorImplEE", "Aidge::Operator::setImpl::impl"], [9, 0, 1, "_CPPv4N5Aidge8Operator17setInheritedAttrsERNSt10shared_ptrI17DynamicAttributesEE", "Aidge::Operator::setInheritedAttrs"], [9, 1, 1, "_CPPv4N5Aidge8Operator17setInheritedAttrsERNSt10shared_ptrI17DynamicAttributesEE", "Aidge::Operator::setInheritedAttrs::attr"], [9, 0, 1, "_CPPv4N5Aidge8Operator8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setInput"], [9, 1, 1, "_CPPv4N5Aidge8Operator8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setInput::data"], [9, 1, 1, "_CPPv4N5Aidge8Operator8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setOutput"], [9, 1, 1, "_CPPv4NK5Aidge8Operator9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setOutput::data"], [9, 1, 1, "_CPPv4NK5Aidge8Operator9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setOutput::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator4typeEv", "Aidge::Operator::type"], [9, 0, 1, "_CPPv4N5Aidge8Operator23updateConsummerProducerEv", "Aidge::Operator::updateConsummerProducer"], [9, 0, 1, "_CPPv4N5Aidge8OperatorD0Ev", "Aidge::Operator::~Operator"], [9, 3, 1, "_CPPv4N5Aidge14OperatorTensorE", "Aidge::OperatorTensor"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERK14OperatorTensor", "Aidge::OperatorTensor::OperatorTensor"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", "Aidge::OperatorTensor::OperatorTensor"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorEv", "Aidge::OperatorTensor::OperatorTensor"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", "Aidge::OperatorTensor::OperatorTensor::inputsCategory"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", "Aidge::OperatorTensor::OperatorTensor::nbOut"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERK14OperatorTensor", "Aidge::OperatorTensor::OperatorTensor::other"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", "Aidge::OperatorTensor::OperatorTensor::type"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::associateInput"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::associateInput::data"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::associateInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", "Aidge::OperatorTensor::computeReceptiveField"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", "Aidge::OperatorTensor::computeReceptiveField::firstEltDims"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", "Aidge::OperatorTensor::computeReceptiveField::outputDims"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", "Aidge::OperatorTensor::computeReceptiveField::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor13dimsForwardedEv", "Aidge::OperatorTensor::dimsForwarded"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor7forwardEv", "Aidge::OperatorTensor::forward"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor12forwardDTypeEv", "Aidge::OperatorTensor::forwardDType"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor11forwardDimsEb", "Aidge::OperatorTensor::forwardDims"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor11forwardDimsEb", "Aidge::OperatorTensor::forwardDims::allowDataDependency"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor8getInputEK9IOIndex_t", "Aidge::OperatorTensor::getInput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor8getInputEK9IOIndex_t", "Aidge::OperatorTensor::getInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor9getInputsEv", "Aidge::OperatorTensor::getInputs"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor9getOutputEK9IOIndex_t", "Aidge::OperatorTensor::getOutput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor9getOutputEK9IOIndex_t", "Aidge::OperatorTensor::getOutput::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor10getOutputsEv", "Aidge::OperatorTensor::getOutputs"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor11getRawInputEK9IOIndex_t", "Aidge::OperatorTensor::getRawInput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor11getRawInputEK9IOIndex_t", "Aidge::OperatorTensor::getRawInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor12getRawOutputEKN5Aidge9IOIndex_tE", "Aidge::OperatorTensor::getRawOutput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor12getRawOutputEKN5Aidge9IOIndex_tE", "Aidge::OperatorTensor::getRawOutput::outputIdx"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor10resetInputEK9IOIndex_t", "Aidge::OperatorTensor::resetInput"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor10resetInputEK9IOIndex_t", "Aidge::OperatorTensor::resetInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor13setDataFormatERK10DataFormat", "Aidge::OperatorTensor::setDataFormat"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor13setDataFormatERK10DataFormat", "Aidge::OperatorTensor::setDataFormat::dataFormat"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor11setDataTypeERK8DataType", "Aidge::OperatorTensor::setDataType"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor11setDataTypeERK8DataType", "Aidge::OperatorTensor::setDataType::dataType"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setInput"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setInput::data"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setOutput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setOutput::data"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setOutput::outputIdx"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensorD0Ev", "Aidge::OperatorTensor::~OperatorTensor"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::beginEndTuples"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::borderType"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::borderValue"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::name"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::ceil_mode"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::dilations"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::kernel_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::name"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::padding_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::stride_dims"], [9, 0, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv"], [9, 2, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::DIM"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::dilation_dims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::in_channels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::kernel_dims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::name"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::no_bias"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::out_channels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::padding_dims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::stride_dims"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::dilation_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::kernel_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::name"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::nb_channels"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::no_bias"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::padding_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::stride_dims"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::ceil_mode"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::dilations"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::kernel_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::name"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::padding_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::stride_dims"], [6, 0, 1, "_CPPv4N5Aidge8ParallelENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Parallel"], [6, 1, 1, "_CPPv4N5Aidge8ParallelENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Parallel::inputs"], [6, 1, 1, "_CPPv4N5Aidge8ParallelENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Parallel::name"], [11, 3, 1, "_CPPv4N5Aidge17ParallelSchedulerE", "Aidge::ParallelScheduler"], [11, 0, 1, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::ParallelScheduler::ParallelScheduler"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::ParallelScheduler::ParallelScheduler::graphView"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::ParallelScheduler::ParallelScheduler::resetCPModel"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::ParallelScheduler::ParallelScheduler::upperNode"], [11, 0, 1, "_CPPv4N5Aidge17ParallelScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::ParallelScheduler::forward"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::ParallelScheduler::forward::data"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::ParallelScheduler::forward::forwardDims"], [11, 0, 1, "_CPPv4N5Aidge17ParallelSchedulerD0Ev", "Aidge::ParallelScheduler::~ParallelScheduler"], [9, 0, 1, "_CPPv4N5Aidge3PopERKNSt6stringE", "Aidge::Pop"], [9, 1, 1, "_CPPv4N5Aidge3PopERKNSt6stringE", "Aidge::Pop::name"], [9, 0, 1, "_CPPv4N5Aidge3PowERKNSt6stringE", "Aidge::Pow"], [9, 1, 1, "_CPPv4N5Aidge3PowERKNSt6stringE", "Aidge::Pow::name"], [9, 0, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer"], [9, 0, 1, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", "Aidge::Producer"], [9, 2, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer::DIM"], [9, 1, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer::constant"], [9, 1, 1, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", "Aidge::Producer::constant"], [9, 1, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer::dims"], [9, 1, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer::name"], [9, 1, 1, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", "Aidge::Producer::name"], [9, 1, 1, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", "Aidge::Producer::tensor"], [9, 0, 1, "_CPPv4N5Aidge4ReLUERKNSt6stringE", "Aidge::ReLU"], [9, 1, 1, "_CPPv4N5Aidge4ReLUERKNSt6stringE", "Aidge::ReLU::name"], [9, 0, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE", "Aidge::ReduceMean"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE", "Aidge::ReduceMean::axes"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE", "Aidge::ReduceMean::keep_dims"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE", "Aidge::ReduceMean::name"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE", "Aidge::ReduceMean::noop_with_empty_axes"], [9, 0, 1, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", "Aidge::Reshape"], [9, 1, 1, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", "Aidge::Reshape::allowzero"], [9, 1, 1, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", "Aidge::Reshape::name"], [9, 1, 1, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", "Aidge::Reshape::shape"], [6, 0, 1, "_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Residual"], [6, 1, 1, "_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Residual::inputs"], [6, 1, 1, "_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Residual::name"], [9, 0, 1, "_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE", "Aidge::Scaling"], [9, 1, 1, "_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE", "Aidge::Scaling::isOutputUnsigned"], [9, 1, 1, "_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE", "Aidge::Scaling::name"], [9, 1, 1, "_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE", "Aidge::Scaling::quantizedNbBits"], [9, 1, 1, "_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE", "Aidge::Scaling::scalingFactor"], [11, 3, 1, "_CPPv4N5Aidge9SchedulerE", "Aidge::Scheduler"], [11, 5, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatusE", "Aidge::Scheduler::AvailableDataStatus"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus9ConnectedE", "Aidge::Scheduler::AvailableDataStatus::Connected"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus12NotConnectedE", "Aidge::Scheduler::AvailableDataStatus::NotConnected"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus23UpperNodeInputConnectedE", "Aidge::Scheduler::AvailableDataStatus::UpperNodeInputConnected"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus19UpperNodeInputFoundE", "Aidge::Scheduler::AvailableDataStatus::UpperNodeInputFound"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus11ValidTensorE", "Aidge::Scheduler::AvailableDataStatus::ValidTensor"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler8ExecTimeE", "Aidge::Scheduler::ExecTime"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler8ExecTime3getEv", "Aidge::Scheduler::ExecTime::get"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler8ExecTime6updateERKNSt6vectorI17SchedulingElementEE", "Aidge::Scheduler::ExecTime::update"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler8ExecTime6updateERKNSt6vectorI17SchedulingElementEE", "Aidge::Scheduler::ExecTime::update::scheduling"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTimeE", "Aidge::Scheduler::NodeExecTime"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime12NodeExecTimeEv", "Aidge::Scheduler::NodeExecTime::NodeExecTime"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime6mCountE", "Aidge::Scheduler::NodeExecTime::mCount"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime3mM2E", "Aidge::Scheduler::NodeExecTime::mM2"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime5mMeanE", "Aidge::Scheduler::NodeExecTime::mMean"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler12NodeExecTime4meanEv", "Aidge::Scheduler::NodeExecTime::mean"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler12NodeExecTime6stdDevEv", "Aidge::Scheduler::NodeExecTime::stdDev"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime6updateENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::NodeExecTime::update"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime6updateENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::NodeExecTime::update::end"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime6updateENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::NodeExecTime::update::start"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumersE", "Aidge::Scheduler::PriorProducersConsumers"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers23PriorProducersConsumersERK23PriorProducersConsumers", "Aidge::Scheduler::PriorProducersConsumers::PriorProducersConsumers"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers23PriorProducersConsumersEv", "Aidge::Scheduler::PriorProducersConsumers::PriorProducersConsumers"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers7isPriorE", "Aidge::Scheduler::PriorProducersConsumers::isPrior"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers14priorConsumersE", "Aidge::Scheduler::PriorProducersConsumers::priorConsumers"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers17requiredProducersE", "Aidge::Scheduler::PriorProducersConsumers::requiredProducers"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumersD0Ev", "Aidge::Scheduler::PriorProducersConsumers::~PriorProducersConsumers"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::Scheduler::Scheduler"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler9SchedulerEv", "Aidge::Scheduler::Scheduler"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::Scheduler::Scheduler::graphView"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::Scheduler::Scheduler::resetCPModel"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::Scheduler::Scheduler::upperNode"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElementE", "Aidge::Scheduler::SchedulingElement"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::SchedulingElement::SchedulingElement"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::SchedulingElement::SchedulingElement::end_"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::SchedulingElement::SchedulingElement::node_"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::SchedulingElement::SchedulingElement::start_"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement3endE", "Aidge::Scheduler::SchedulingElement::end"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement4nodeE", "Aidge::Scheduler::SchedulingElement::node"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement5startE", "Aidge::Scheduler::SchedulingElement::start"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElementD0Ev", "Aidge::Scheduler::SchedulingElement::~SchedulingElement"], [11, 5, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicyE", "Aidge::Scheduler::SchedulingPolicy"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy16AsLateAsPossibleE", "Aidge::Scheduler::SchedulingPolicy::AsLateAsPossible"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy16AsSoonAsPossibleE", "Aidge::Scheduler::SchedulingPolicy::AsSoonAsPossible"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy7DefaultE", "Aidge::Scheduler::SchedulingPolicy::Default"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy19LonguestBranchFirstE", "Aidge::Scheduler::SchedulingPolicy::LonguestBranchFirst"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy19ShortestBranchFirstE", "Aidge::Scheduler::SchedulingPolicy::ShortestBranchFirst"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElementE", "Aidge::Scheduler::StaticSchedulingElement"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", "Aidge::Scheduler::StaticSchedulingElement::StaticSchedulingElement"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", "Aidge::Scheduler::StaticSchedulingElement::StaticSchedulingElement::early_"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", "Aidge::Scheduler::StaticSchedulingElement::StaticSchedulingElement::late_"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", "Aidge::Scheduler::StaticSchedulingElement::StaticSchedulingElement::node_"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement11earlierThanE", "Aidge::Scheduler::StaticSchedulingElement::earlierThan"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement5earlyE", "Aidge::Scheduler::StaticSchedulingElement::early"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement4lateE", "Aidge::Scheduler::StaticSchedulingElement::late"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement9laterThanE", "Aidge::Scheduler::StaticSchedulingElement::laterThan"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement4nodeE", "Aidge::Scheduler::StaticSchedulingElement::node"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler15clearSchedulingEv", "Aidge::Scheduler::clearScheduling"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler13connectInputsERKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::Scheduler::connectInputs"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler13connectInputsERKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::Scheduler::connectInputs::data"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler18generateSchedulingEv", "Aidge::Scheduler::generateScheduling"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler21getBackwardSchedulingEv", "Aidge::Scheduler::getBackwardScheduling"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler20getForwardSchedulingEv", "Aidge::Scheduler::getForwardScheduling"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler29getSequentialStaticSchedulingENSt6size_tE16SchedulingPolicy", "Aidge::Scheduler::getSequentialStaticScheduling"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler29getSequentialStaticSchedulingENSt6size_tE16SchedulingPolicy", "Aidge::Scheduler::getSequentialStaticScheduling::policy"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler29getSequentialStaticSchedulingENSt6size_tE16SchedulingPolicy", "Aidge::Scheduler::getSequentialStaticScheduling::step"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler19getStaticSchedulingENSt6size_tE", "Aidge::Scheduler::getStaticScheduling"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler19getStaticSchedulingENSt6size_tE", "Aidge::Scheduler::getStaticScheduling::step"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler9graphViewEv", "Aidge::Scheduler::graphView"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler15resetSchedulingEv", "Aidge::Scheduler::resetScheduling"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", "Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", "Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram::fileName"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", "Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram::ignoreProducers"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", "Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram::minRepeat"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler21saveSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveSchedulingDiagram"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler21saveSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveSchedulingDiagram::fileName"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler21saveSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveSchedulingDiagram::ignoreProducers"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler27saveStaticSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveStaticSchedulingDiagram"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler27saveStaticSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveStaticSchedulingDiagram::fileName"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler27saveStaticSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveStaticSchedulingDiagram::ignoreProducers"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler19tagConditionalNodesEv", "Aidge::Scheduler::tagConditionalNodes"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler15tagForkBranchesEv", "Aidge::Scheduler::tagForkBranches"], [11, 0, 1, "_CPPv4N5Aidge9SchedulerD0Ev", "Aidge::Scheduler::~Scheduler"], [6, 0, 1, "_CPPv4N5Aidge10SequentialENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Sequential"], [6, 1, 1, "_CPPv4N5Aidge10SequentialENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Sequential::inputs"], [6, 1, 1, "_CPPv4N5Aidge10SequentialENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Sequential::name"], [11, 3, 1, "_CPPv4N5Aidge19SequentialSchedulerE", "Aidge::SequentialScheduler"], [11, 0, 1, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::SequentialScheduler::SequentialScheduler"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::SequentialScheduler::SequentialScheduler::graphView"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::SequentialScheduler::SequentialScheduler::resetCPModel"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::SequentialScheduler::SequentialScheduler::upperNode"], [11, 0, 1, "_CPPv4N5Aidge19SequentialScheduler8backwardEv", "Aidge::SequentialScheduler::backward"], [11, 0, 1, "_CPPv4N5Aidge19SequentialScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::SequentialScheduler::forward"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::SequentialScheduler::forward::data"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::SequentialScheduler::forward::forwardDims"], [11, 0, 1, "_CPPv4NK5Aidge19SequentialScheduler14generateMemoryEbb", "Aidge::SequentialScheduler::generateMemory"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler14generateMemoryEbb", "Aidge::SequentialScheduler::generateMemory::incProducers"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler14generateMemoryEbb", "Aidge::SequentialScheduler::generateMemory::wrapAroundBuffer"], [11, 0, 1, "_CPPv4NK5Aidge19SequentialScheduler24generateMemoryAutoConcatEbb", "Aidge::SequentialScheduler::generateMemoryAutoConcat"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler24generateMemoryAutoConcatEbb", "Aidge::SequentialScheduler::generateMemoryAutoConcat::incProducers"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler24generateMemoryAutoConcatEbb", "Aidge::SequentialScheduler::generateMemoryAutoConcat::wrapAroundBuffer"], [11, 0, 1, "_CPPv4NK5Aidge19SequentialScheduler29getSequentialStaticSchedulingENSt6size_tE", "Aidge::SequentialScheduler::getSequentialStaticScheduling"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler29getSequentialStaticSchedulingENSt6size_tE", "Aidge::SequentialScheduler::getSequentialStaticScheduling::step"], [11, 0, 1, "_CPPv4N5Aidge19SequentialScheduler19setSchedulingPolicyE16SchedulingPolicy", "Aidge::SequentialScheduler::setSchedulingPolicy"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler19setSchedulingPolicyE16SchedulingPolicy", "Aidge::SequentialScheduler::setSchedulingPolicy::policy"], [11, 0, 1, "_CPPv4N5Aidge19SequentialSchedulerD0Ev", "Aidge::SequentialScheduler::~SequentialScheduler"], [9, 0, 1, "_CPPv4N5Aidge7SigmoidERKNSt6stringE", "Aidge::Sigmoid"], [9, 1, 1, "_CPPv4N5Aidge7SigmoidERKNSt6stringE", "Aidge::Sigmoid::name"], [7, 3, 1, "_CPPv4N5Aidge23SinglePassGraphMatchingE", "Aidge::SinglePassGraphMatching"], [7, 3, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextE", "Aidge::SinglePassGraphMatching::Context"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7ContextERK7Context", "Aidge::SinglePassGraphMatching::Context::Context"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7ContextEv", "Aidge::SinglePassGraphMatching::Context::Context"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7anchorsE", "Aidge::SinglePassGraphMatching::Context::anchors"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context5depthE", "Aidge::SinglePassGraphMatching::Context::depth"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context11edgeLeftIdxE", "Aidge::SinglePassGraphMatching::Context::edgeLeftIdx"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12edgeRightIdxE", "Aidge::SinglePassGraphMatching::Context::edgeRightIdx"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context9firstNodeE", "Aidge::SinglePassGraphMatching::Context::firstNode"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context13firstSequenceE", "Aidge::SinglePassGraphMatching::Context::firstSequence"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context10inSequenceE", "Aidge::SinglePassGraphMatching::Context::inSequence"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12lookForChildE", "Aidge::SinglePassGraphMatching::Context::lookForChild"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextaSERK7Context", "Aidge::SinglePassGraphMatching::Context::operator="], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context5queryE", "Aidge::SinglePassGraphMatching::Context::query"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12singleOutputE", "Aidge::SinglePassGraphMatching::Context::singleOutput"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context9startNodeE", "Aidge::SinglePassGraphMatching::Context::startNode"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextD0Ev", "Aidge::SinglePassGraphMatching::Context::~Context"], [7, 3, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultE", "Aidge::SinglePassGraphMatching::MatchingResult"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultERK14MatchingResult", "Aidge::SinglePassGraphMatching::MatchingResult::MatchingResult"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultEv", "Aidge::SinglePassGraphMatching::MatchingResult::MatchingResult"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultERK14MatchingResult", "Aidge::SinglePassGraphMatching::MatchingResult::MatchingResult::other"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult7anchorsE", "Aidge::SinglePassGraphMatching::MatchingResult::anchors"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult5graphE", "Aidge::SinglePassGraphMatching::MatchingResult::graph"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultaSERK14MatchingResult", "Aidge::SinglePassGraphMatching::MatchingResult::operator="], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultaSERK14MatchingResult", "Aidge::SinglePassGraphMatching::MatchingResult::operator=::other"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult9startNodeE", "Aidge::SinglePassGraphMatching::MatchingResult::startNode"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultD0Ev", "Aidge::SinglePassGraphMatching::MatchingResult::~MatchingResult"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingENSt10shared_ptrI9GraphViewEE", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingERK23SinglePassGraphMatching", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingEv", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingENSt10shared_ptrI9GraphViewEE", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching::graph"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingERK23SinglePassGraphMatching", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching::other"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching13addNodeLambdaERKNSt6stringENSt8functionIFbRKNSt10shared_ptrI4NodeEEEEE", "Aidge::SinglePassGraphMatching::addNodeLambda"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching13addNodeLambdaERKNSt6stringENSt8functionIFbRKNSt10shared_ptrI4NodeEEEEE", "Aidge::SinglePassGraphMatching::addNodeLambda::func"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching13addNodeLambdaERKNSt6stringENSt8functionIFbRKNSt10shared_ptrI4NodeEEEEE", "Aidge::SinglePassGraphMatching::addNodeLambda::name"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching22filterLonguestDisjointERKNSt3setI14MatchingResultEE", "Aidge::SinglePassGraphMatching::filterLonguestDisjoint"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching22filterLonguestDisjointERKNSt3setI14MatchingResultEE", "Aidge::SinglePassGraphMatching::filterLonguestDisjoint::matches"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching5matchERKNSt6stringEb", "Aidge::SinglePassGraphMatching::match"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching5matchERKNSt6stringEb", "Aidge::SinglePassGraphMatching::match::disjoint"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching5matchERKNSt6stringEb", "Aidge::SinglePassGraphMatching::match::query"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching9matchFromENSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::SinglePassGraphMatching::matchFrom"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching9matchFromENSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::SinglePassGraphMatching::matchFrom::query"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching9matchFromENSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::SinglePassGraphMatching::matchFrom::startNode"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatchingaSERK23SinglePassGraphMatching", "Aidge::SinglePassGraphMatching::operator="], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatchingaSERK23SinglePassGraphMatching", "Aidge::SinglePassGraphMatching::operator=::other"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatchingD0Ev", "Aidge::SinglePassGraphMatching::~SinglePassGraphMatching"], [9, 0, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::axes"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::ends"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::name"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::starts"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::steps"], [9, 0, 1, "_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE", "Aidge::Softmax"], [9, 1, 1, "_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE", "Aidge::Softmax::axis"], [9, 1, 1, "_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE", "Aidge::Softmax::name"], [9, 0, 1, "_CPPv4N5Aidge4SqrtERKNSt6stringE", "Aidge::Sqrt"], [9, 1, 1, "_CPPv4N5Aidge4SqrtERKNSt6stringE", "Aidge::Sqrt::name"], [9, 0, 1, "_CPPv4N5Aidge3SubERKNSt6stringE", "Aidge::Sub"], [9, 1, 1, "_CPPv4N5Aidge3SubERKNSt6stringE", "Aidge::Sub::name"], [9, 0, 1, "_CPPv4N5Aidge4TanhERKNSt6stringE", "Aidge::Tanh"], [9, 1, 1, "_CPPv4N5Aidge4TanhERKNSt6stringE", "Aidge::Tanh::name"], [4, 3, 1, "_CPPv4N5Aidge6TensorE", "Aidge::Tensor"], [4, 0, 1, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6TensorERK6Tensor", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6TensorERKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6TensorERR6Tensor", "Aidge::Tensor::Tensor"], [4, 2, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::SIZE_3"], [4, 2, 1, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", "Aidge::Tensor::Tensor::VT"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat", "Aidge::Tensor::Tensor::dformat"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorERKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::Tensor::dims"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat", "Aidge::Tensor::Tensor::dtype"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorERK6Tensor", "Aidge::Tensor::Tensor::other"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorERR6Tensor", "Aidge::Tensor::Tensor::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", "Aidge::Tensor::Tensor::val"], [4, 4, 1, "_CPPv4N5Aidge6Tensor4TypeE", "Aidge::Tensor::Type"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor3absEv", "Aidge::Tensor::abs"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7backendEv", "Aidge::Tensor::backend"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor8capacityEv", "Aidge::Tensor::capacity"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4clipEff", "Aidge::Tensor::clip"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor4clipEff", "Aidge::Tensor::clip::max"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor4clipEff", "Aidge::Tensor::clip::min"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor5cloneEv", "Aidge::Tensor::clone"], [4, 0, 1, "_CPPv4N5Aidge6Tensor8copyCastERK6Tensor", "Aidge::Tensor::copyCast"], [4, 1, 1, "_CPPv4N5Aidge6Tensor8copyCastERK6Tensor", "Aidge::Tensor::copyCast::src"], [4, 0, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6Tensor", "Aidge::Tensor::copyCastFrom"], [4, 0, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6TensorRNSt10shared_ptrI6TensorEE", "Aidge::Tensor::copyCastFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6TensorRNSt10shared_ptrI6TensorEE", "Aidge::Tensor::copyCastFrom::movedSrc"], [4, 1, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6Tensor", "Aidge::Tensor::copyCastFrom::src"], [4, 1, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6TensorRNSt10shared_ptrI6TensorEE", "Aidge::Tensor::copyCastFrom::src"], [4, 0, 1, "_CPPv4N5Aidge6Tensor8copyFromERK6Tensor", "Aidge::Tensor::copyFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor8copyFromERK6Tensor", "Aidge::Tensor::copyFrom::src"], [4, 0, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRK19DataFormatTranspose", "Aidge::Tensor::copyTranspose"], [4, 0, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::copyTranspose"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRK19DataFormatTranspose", "Aidge::Tensor::copyTranspose::src"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::copyTranspose::src"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRK19DataFormatTranspose", "Aidge::Tensor::copyTranspose::transpose"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::copyTranspose::transpose"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor10dataFormatEv", "Aidge::Tensor::dataFormat"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor8dataTypeEv", "Aidge::Tensor::dataType"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6deviceEv", "Aidge::Tensor::device"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor3dimE8DimIdx_t", "Aidge::Tensor::dim"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3dimE8DimIdx_t", "Aidge::Tensor::dim::idx"], [4, 0, 1, "_CPPv4I_8DimIdx_tENK5Aidge6Tensor4dimsENSt5arrayI9DimSize_t3DIMEEv", "Aidge::Tensor::dims"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4dimsEv", "Aidge::Tensor::dims"], [4, 2, 1, "_CPPv4I_8DimIdx_tENK5Aidge6Tensor4dimsENSt5arrayI9DimSize_t3DIMEEv", "Aidge::Tensor::dims::DIM"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor5emptyEv", "Aidge::Tensor::empty"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract::coordIdx"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract::coordIdx"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract::dims"], [4, 0, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6size_tE", "Aidge::Tensor::get"], [4, 0, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6vectorINSt6size_tEEE", "Aidge::Tensor::get"], [4, 1, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6vectorINSt6size_tEEE", "Aidge::Tensor::get::coordIdx"], [4, 2, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6size_tE", "Aidge::Tensor::get::expectedType"], [4, 2, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6vectorINSt6size_tEEE", "Aidge::Tensor::get::expectedType"], [4, 1, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6size_tE", "Aidge::Tensor::get::idx"], [4, 0, 1, "_CPPv4N5Aidge6Tensor20getAvailableBackendsEv", "Aidge::Tensor::getAvailableBackends"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor8getCoordENSt6size_tE", "Aidge::Tensor::getCoord"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor8getCoordENSt6size_tE", "Aidge::Tensor::getCoord::index"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6getIdxERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::getIdx"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor6getIdxERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::getIdx::coords"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7getImplEv", "Aidge::Tensor::getImpl"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor13getImplOffsetEv", "Aidge::Tensor::getImplOffset"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor13getStorageIdxERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::getStorageIdx"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor13getStorageIdxERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::getStorageIdx::coordIdx"], [4, 0, 1, "_CPPv4N5Aidge6Tensor4gradEv", "Aidge::Tensor::grad"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7hasImplEv", "Aidge::Tensor::hasImpl"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor12isContiguousEv", "Aidge::Tensor::isContiguous"], [4, 0, 1, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", "Aidge::Tensor::isInBounds"], [4, 0, 1, "_CPPv4N5Aidge6Tensor10isInBoundsERKNSt6vectorI9DimSize_tEEKNSt6size_tE", "Aidge::Tensor::isInBounds"], [4, 2, 1, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", "Aidge::Tensor::isInBounds::T"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", "Aidge::Tensor::isInBounds::coords"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", "Aidge::Tensor::isInBounds::dimensions"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10isInBoundsERKNSt6vectorI9DimSize_tEEKNSt6size_tE", "Aidge::Tensor::isInBounds::dimensions"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10isInBoundsERKNSt6vectorI9DimSize_tEEKNSt6size_tE", "Aidge::Tensor::isInBounds::index"], [4, 0, 1, "_CPPv4N5Aidge6Tensor14makeContiguousEv", "Aidge::Tensor::makeContiguous"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4meanEv", "Aidge::Tensor::mean"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6nbDimsEv", "Aidge::Tensor::nbDims"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*"], [4, 0, 1, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", "Aidge::Tensor::operator*"], [4, 0, 1, "_CPPv4NK5Aidge6TensormlERK6Tensor", "Aidge::Tensor::operator*"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*::T"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", "Aidge::Tensor::operator*::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*::VT"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", "Aidge::Tensor::operator*::VT"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*::other"], [4, 1, 1, "_CPPv4NK5Aidge6TensormlERK6Tensor", "Aidge::Tensor::operator*::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*::val"], [4, 1, 1, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", "Aidge::Tensor::operator*::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", "Aidge::Tensor::operator*="], [4, 0, 1, "_CPPv4N5Aidge6TensormLERK6Tensor", "Aidge::Tensor::operator*="], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", "Aidge::Tensor::operator*=::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", "Aidge::Tensor::operator*=::VT"], [4, 1, 1, "_CPPv4N5Aidge6TensormLERK6Tensor", "Aidge::Tensor::operator*=::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", "Aidge::Tensor::operator*=::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+"], [4, 0, 1, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", "Aidge::Tensor::operator+"], [4, 0, 1, "_CPPv4NK5Aidge6TensorplERK6Tensor", "Aidge::Tensor::operator+"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+::T"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", "Aidge::Tensor::operator+::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+::VT"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", "Aidge::Tensor::operator+::VT"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+::other"], [4, 1, 1, "_CPPv4NK5Aidge6TensorplERK6Tensor", "Aidge::Tensor::operator+::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+::val"], [4, 1, 1, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", "Aidge::Tensor::operator+::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", "Aidge::Tensor::operator+="], [4, 0, 1, "_CPPv4N5Aidge6TensorpLERK6Tensor", "Aidge::Tensor::operator+="], [4, 2, 1, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", "Aidge::Tensor::operator+=::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", "Aidge::Tensor::operator+=::VT"], [4, 1, 1, "_CPPv4N5Aidge6TensorpLERK6Tensor", "Aidge::Tensor::operator+=::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", "Aidge::Tensor::operator+=::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-"], [4, 0, 1, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", "Aidge::Tensor::operator-"], [4, 0, 1, "_CPPv4NK5Aidge6TensormiERK6Tensor", "Aidge::Tensor::operator-"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-::T"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", "Aidge::Tensor::operator-::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-::VT"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", "Aidge::Tensor::operator-::VT"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-::other"], [4, 1, 1, "_CPPv4NK5Aidge6TensormiERK6Tensor", "Aidge::Tensor::operator-::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-::val"], [4, 1, 1, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", "Aidge::Tensor::operator-::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", "Aidge::Tensor::operator-="], [4, 0, 1, "_CPPv4N5Aidge6TensormIERK6Tensor", "Aidge::Tensor::operator-="], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", "Aidge::Tensor::operator-=::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", "Aidge::Tensor::operator-=::VT"], [4, 1, 1, "_CPPv4N5Aidge6TensormIERK6Tensor", "Aidge::Tensor::operator-=::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", "Aidge::Tensor::operator-=::val"], [4, 0, 1, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", "Aidge::Tensor::operator/"], [4, 0, 1, "_CPPv4NK5Aidge6TensordvERK6Tensor", "Aidge::Tensor::operator/"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", "Aidge::Tensor::operator/::T"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", "Aidge::Tensor::operator/::VT"], [4, 1, 1, "_CPPv4NK5Aidge6TensordvERK6Tensor", "Aidge::Tensor::operator/::other"], [4, 1, 1, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", "Aidge::Tensor::operator/::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", "Aidge::Tensor::operator/="], [4, 0, 1, "_CPPv4N5Aidge6TensordVERK6Tensor", "Aidge::Tensor::operator/="], [4, 2, 1, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", "Aidge::Tensor::operator/=::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", "Aidge::Tensor::operator/=::VT"], [4, 1, 1, "_CPPv4N5Aidge6TensordVERK6Tensor", "Aidge::Tensor::operator/=::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", "Aidge::Tensor::operator/=::val"], [4, 0, 1, "_CPPv4I0EN5Aidge6TensoraSER6TensorRR6VectorI1TE", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4N5Aidge6TensoraSERK6Tensor", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4N5Aidge6TensoraSERR6Tensor", "Aidge::Tensor::operator="], [4, 2, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", "Aidge::Tensor::operator=::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator=::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator=::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::SIZE_3"], [4, 2, 1, "_CPPv4I0EN5Aidge6TensoraSER6TensorRR6VectorI1TE", "Aidge::Tensor::operator=::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", "Aidge::Tensor::operator=::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator=::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::T"], [4, 1, 1, "_CPPv4I0EN5Aidge6TensoraSER6TensorRR6VectorI1TE", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4N5Aidge6TensoraSERK6Tensor", "Aidge::Tensor::operator=::other"], [4, 1, 1, "_CPPv4N5Aidge6TensoraSERR6Tensor", "Aidge::Tensor::operator=::other"], [4, 0, 1, "_CPPv4NK5Aidge6TensoreqERK6Tensor", "Aidge::Tensor::operator=="], [4, 1, 1, "_CPPv4NK5Aidge6TensoreqERK6Tensor", "Aidge::Tensor::operator==::otherTensor"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor5printEv", "Aidge::Tensor::print"], [4, 0, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref"], [4, 0, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::backend"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::backend"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::device"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::device"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::dt"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::dt"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref::fallback"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::fallback"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref::targetReqs"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref::targetReqs"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast::dt"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast::dt"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast::fallback"], [4, 0, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom"], [4, 0, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::backend"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::backend"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::device"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::device"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::dt"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::dt"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom::fallback"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::fallback"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom::targetReqs"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom::targetReqs"], [4, 0, 1, "_CPPv4N5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", "Aidge::Tensor::refContiguous"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", "Aidge::Tensor::refContiguous"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", "Aidge::Tensor::refContiguous::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", "Aidge::Tensor::refContiguous::fallback"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::backend"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::backend"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::device"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::device"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::fallback"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6repeatEi", "Aidge::Tensor::repeat"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor6repeatEi", "Aidge::Tensor::repeat::times"], [4, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge6Tensor6resizeEvRKNSt5arrayI9DimSize_t3DIMEE", "Aidge::Tensor::resize"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6resizeERKNSt6vectorI9DimSize_tEENSt6vectorI9DimSize_tEE", "Aidge::Tensor::resize"], [4, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge6Tensor6resizeEvRKNSt5arrayI9DimSize_t3DIMEE", "Aidge::Tensor::resize::DIM"], [4, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge6Tensor6resizeEvRKNSt5arrayI9DimSize_t3DIMEE", "Aidge::Tensor::resize::dims"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6resizeERKNSt6vectorI9DimSize_tEENSt6vectorI9DimSize_tEE", "Aidge::Tensor::resize::dims"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6resizeERKNSt6vectorI9DimSize_tEENSt6vectorI9DimSize_tEE", "Aidge::Tensor::resize::strides"], [4, 0, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", "Aidge::Tensor::set"], [4, 0, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", "Aidge::Tensor::set"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", "Aidge::Tensor::set::coordIdx"], [4, 2, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", "Aidge::Tensor::set::expectedType"], [4, 2, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", "Aidge::Tensor::set::expectedType"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", "Aidge::Tensor::set::idx"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", "Aidge::Tensor::set::value"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", "Aidge::Tensor::set::value"], [4, 0, 1, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", "Aidge::Tensor::setBackend"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", "Aidge::Tensor::setBackend::copyFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", "Aidge::Tensor::setBackend::device"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", "Aidge::Tensor::setBackend::name"], [4, 0, 1, "_CPPv4N5Aidge6Tensor13setDataFormatEK10DataFormatb", "Aidge::Tensor::setDataFormat"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13setDataFormatEK10DataFormatb", "Aidge::Tensor::setDataFormat::copyTrans"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13setDataFormatEK10DataFormatb", "Aidge::Tensor::setDataFormat::df"], [4, 0, 1, "_CPPv4N5Aidge6Tensor11setDataTypeEK8DataTypeb", "Aidge::Tensor::setDataType"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11setDataTypeEK8DataTypeb", "Aidge::Tensor::setDataType::copyCast"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11setDataTypeEK8DataTypeb", "Aidge::Tensor::setDataType::dt"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7setGradENSt10shared_ptrI6TensorEE", "Aidge::Tensor::setGrad"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7setGradENSt10shared_ptrI6TensorEE", "Aidge::Tensor::setGrad::newGrad"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7setImplENSt10shared_ptrI10TensorImplEENSt6size_tE", "Aidge::Tensor::setImpl"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7setImplENSt10shared_ptrI10TensorImplEENSt6size_tE", "Aidge::Tensor::setImpl::impl"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7setImplENSt10shared_ptrI10TensorImplEENSt6size_tE", "Aidge::Tensor::setImpl::implOffset"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4sizeEv", "Aidge::Tensor::size"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4sqrtEv", "Aidge::Tensor::sqrt"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6strideE8DimIdx_t", "Aidge::Tensor::stride"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor6strideE8DimIdx_t", "Aidge::Tensor::stride::idx"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7stridesEv", "Aidge::Tensor::strides"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE", "Aidge::Tensor::toCoord"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE", "Aidge::Tensor::toCoord::dimensions"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE", "Aidge::Tensor::toCoord::index"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7toIndexERKNSt6vectorI9DimSize_tEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::toIndex"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7toIndexERKNSt6vectorI9DimSize_tEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::toIndex::coords"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7toIndexERKNSt6vectorI9DimSize_tEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::toIndex::dimensions"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor8toStringEiNSt6size_tE", "Aidge::Tensor::toString"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor8toStringEiNSt6size_tE", "Aidge::Tensor::toString::offset"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor8toStringEiNSt6size_tE", "Aidge::Tensor::toString::precision"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor9undefinedEv", "Aidge::Tensor::undefined"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor5zerosEv", "Aidge::Tensor::zeros"], [4, 0, 1, "_CPPv4N5Aidge6TensorD0Ev", "Aidge::Tensor::~Tensor"], [9, 0, 1, "_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Transpose"], [9, 1, 1, "_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Transpose::name"], [9, 1, 1, "_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Transpose::outputDimsOrder"], [10, 0, 1, "_CPPv4N5Aidge14adaptToBackendENSt10shared_ptrI9GraphViewEE", "Aidge::adaptToBackend"], [10, 1, 1, "_CPPv4N5Aidge14adaptToBackendENSt10shared_ptrI9GraphViewEE", "Aidge::adaptToBackend::graph"], [10, 0, 1, "_CPPv4N5Aidge15constantFoldingENSt10shared_ptrI9GraphViewEEb", "Aidge::constantFolding"], [10, 1, 1, "_CPPv4N5Aidge15constantFoldingENSt10shared_ptrI9GraphViewEEb", "Aidge::constantFolding::constantShape"], [10, 1, 1, "_CPPv4N5Aidge15constantFoldingENSt10shared_ptrI9GraphViewEEb", "Aidge::constantFolding::graph"], [10, 0, 1, "_CPPv4N5Aidge12convToMatMulENSt10shared_ptrI9GraphViewEE", "Aidge::convToMatMul"], [10, 1, 1, "_CPPv4N5Aidge12convToMatMulENSt10shared_ptrI9GraphViewEE", "Aidge::convToMatMul::graph"], [10, 0, 1, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEb", "Aidge::expandMetaOps"], [10, 1, 1, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEb", "Aidge::expandMetaOps::graph"], [10, 1, 1, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEb", "Aidge::expandMetaOps::recursive"], [10, 0, 1, "_CPPv4N5Aidge16explicitCastMoveENSt10shared_ptrI9GraphViewEE", "Aidge::explicitCastMove"], [10, 1, 1, "_CPPv4N5Aidge16explicitCastMoveENSt10shared_ptrI9GraphViewEE", "Aidge::explicitCastMove::graphView"], [10, 0, 1, "_CPPv4N5Aidge17explicitTransposeENSt10shared_ptrI9GraphViewEE", "Aidge::explicitTranspose"], [10, 1, 1, "_CPPv4N5Aidge17explicitTransposeENSt10shared_ptrI9GraphViewEE", "Aidge::explicitTranspose::graphView"], [10, 0, 1, "_CPPv4N5Aidge13fuseBatchNormENSt10shared_ptrI9GraphViewEE", "Aidge::fuseBatchNorm"], [10, 1, 1, "_CPPv4N5Aidge13fuseBatchNormENSt10shared_ptrI9GraphViewEE", "Aidge::fuseBatchNorm::graphView"], [10, 0, 1, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", "Aidge::fuseToMetaOps"], [10, 1, 1, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", "Aidge::fuseToMetaOps::gm"], [10, 1, 1, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", "Aidge::fuseToMetaOps::query"], [10, 1, 1, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", "Aidge::fuseToMetaOps::type"], [6, 0, 1, "_CPPv4N5Aidge13generateGraphERKNSt6vectorI9ConnectorEE", "Aidge::generateGraph"], [6, 1, 1, "_CPPv4N5Aidge13generateGraphERKNSt6vectorI9ConnectorEE", "Aidge::generateGraph::ctors"], [6, 0, 1, "_CPPv4N5Aidge21getConnectedGraphViewENSt10shared_ptrI4NodeEE", "Aidge::getConnectedGraphView"], [6, 1, 1, "_CPPv4N5Aidge21getConnectedGraphViewENSt10shared_ptrI4NodeEE", "Aidge::getConnectedGraphView::node"], [10, 0, 1, "_CPPv4N5Aidge12matMulTilingE7NodePtrRKNSt6vectorI9DimSize_tEE", "Aidge::matMulTiling"], [10, 1, 1, "_CPPv4N5Aidge12matMulTilingE7NodePtrRKNSt6vectorI9DimSize_tEE", "Aidge::matMulTiling::matMul"], [10, 1, 1, "_CPPv4N5Aidge12matMulTilingE7NodePtrRKNSt6vectorI9DimSize_tEE", "Aidge::matMulTiling::maxDims"], [10, 0, 1, "_CPPv4N5Aidge10matMulToFCENSt10shared_ptrI9GraphViewEE", "Aidge::matMulToFC"], [10, 1, 1, "_CPPv4N5Aidge10matMulToFCENSt10shared_ptrI9GraphViewEE", "Aidge::matMulToFC::graphView"], [10, 0, 1, "_CPPv4N5Aidge13removeDropoutENSt10shared_ptrI9GraphViewEE", "Aidge::removeDropout"], [10, 1, 1, "_CPPv4N5Aidge13removeDropoutENSt10shared_ptrI9GraphViewEE", "Aidge::removeDropout::graphView"], [10, 0, 1, "_CPPv4N5Aidge13removeFlattenENSt10shared_ptrI9GraphViewEE", "Aidge::removeFlatten"], [10, 1, 1, "_CPPv4N5Aidge13removeFlattenENSt10shared_ptrI9GraphViewEE", "Aidge::removeFlatten::graphView"], [2, 0, 1, "_CPPv4N5Aidge12tensorOpencvEN2cv3MatE", "Aidge::tensorOpencv"], [2, 1, 1, "_CPPv4N5Aidge12tensorOpencvEN2cv3MatE", "Aidge::tensorOpencv::mat"], [12, 0, 1, "_CPPv49calibrate23calibration_folder_path15cache_file_path10batch_size", "calibrate"], [12, 0, 1, "_CPPv46device2id", "device"], [12, 0, 1, "_CPPv410initializev", "initialize"], [12, 0, 1, "_CPPv44load8filepath", "load"], [12, 0, 1, "_CPPv47profile13nb_iterations4mode", "profile"], [12, 0, 1, "_CPPv48run_sync6inputs", "run_sync"], [12, 0, 1, "_CPPv44save8filepath", "save"]], "aidge_backend_opencv": [[2, 8, 1, "", "MNIST"]], "aidge_backend_opencv.MNIST": [[2, 9, 1, "", "__init__"], [2, 9, 1, "", "get_item"], [2, 9, 1, "", "get_len"], [2, 9, 1, "", "get_nb_modalities"], [2, 9, 1, "", "len"]], "aidge_core": [[9, 10, 1, "", "Add"], [9, 10, 1, "", "AvgPooling1D"], [9, 10, 1, "", "AvgPooling2D"], [9, 10, 1, "", "AvgPooling3D"], [9, 10, 1, "", "BatchNorm2D"], [9, 10, 1, "", "Concat"], [6, 8, 1, "", "Connector"], [9, 10, 1, "", "Conv1D"], [9, 10, 1, "", "Conv2D"], [9, 10, 1, "", "ConvDepthWise1D"], [9, 10, 1, "", "ConvDepthWise2D"], [4, 8, 1, "", "DataProvider"], [9, 10, 1, "", "Div"], [9, 10, 1, "", "Erf"], [9, 10, 1, "", "FC"], [9, 10, 1, "", "Gather"], [9, 10, 1, "", "GenericOperator"], [6, 8, 1, "", "GraphView"], [3, 8, 1, "", "IOSpec"], [9, 10, 1, "", "Identity"], [3, 8, 1, "", "ImplSpec"], [9, 10, 1, "", "LSTM"], [9, 10, 1, "", "LeakyReLU"], [9, 10, 1, "", "MatMul"], [9, 10, 1, "", "Mul"], [6, 8, 1, "", "Node"], [9, 8, 1, "", "Operator"], [9, 8, 1, "", "OperatorTensor"], [9, 10, 1, "", "PaddedAvgPooling2D"], [9, 10, 1, "", "PaddedConv1D"], [9, 10, 1, "", "PaddedConv2D"], [9, 10, 1, "", "PaddedConvDepthWise1D"], [9, 10, 1, "", "PaddedConvDepthWise2D"], [9, 10, 1, "", "PaddedMaxPooling2D"], [11, 8, 1, "", "ParallelScheduler"], [9, 10, 1, "", "Pop"], [9, 10, 1, "", "Pow"], [9, 10, 1, "", "Producer"], [9, 10, 1, "", "ReLU"], [9, 10, 1, "", "ReduceMean"], [9, 10, 1, "", "Reshape"], [11, 8, 1, "", "Scheduler"], [11, 8, 1, "", "SequentialScheduler"], [9, 10, 1, "", "Sigmoid"], [7, 8, 1, "", "SinglePassGraphMatching"], [9, 10, 1, "", "Slice"], [9, 10, 1, "", "Softmax"], [9, 10, 1, "", "Sqrt"], [9, 10, 1, "", "Sub"], [9, 10, 1, "", "Tanh"], [4, 8, 1, "", "Tensor"], [9, 10, 1, "", "Transpose"], [10, 10, 1, "", "adapt_to_backend"], [10, 10, 1, "", "expand_metaops"], [10, 10, 1, "", "fuse_batchnorm"], [10, 10, 1, "", "fuse_to_metaops"], [6, 10, 1, "", "generate_graph"], [6, 10, 1, "", "get_connected_graph_view"], [10, 10, 1, "", "matmul_to_fc"], [9, 10, 1, "", "meta_operator"], [6, 10, 1, "", "parallel"], [10, 10, 1, "", "remove_flatten"], [6, 10, 1, "", "residual"], [6, 10, 1, "", "sequential"]], "aidge_core.Connector": [[6, 9, 1, "", "__init__"]], "aidge_core.DataProvider": [[4, 9, 1, "", "__init__"]], "aidge_core.GraphView": [[6, 9, 1, "", "__init__"], [6, 9, 1, "", "add"], [6, 9, 1, "", "add_child"], [6, 9, 1, "", "add_ordered_outputs"], [6, 9, 1, "", "clone"], [6, 9, 1, "", "compile"], [6, 9, 1, "", "forward_dims"], [6, 9, 1, "", "forward_dtype"], [6, 9, 1, "", "get_input_nodes"], [6, 9, 1, "", "get_node"], [6, 9, 1, "", "get_nodes"], [6, 9, 1, "", "get_ordered_inputs"], [6, 9, 1, "", "get_ordered_nodes"], [6, 9, 1, "", "get_ordered_outputs"], [6, 9, 1, "", "get_output_nodes"], [6, 9, 1, "", "get_ranked_nodes"], [6, 9, 1, "", "get_ranked_nodes_name"], [6, 9, 1, "", "in_view"], [6, 9, 1, "", "inputs"], [6, 9, 1, "", "insert_parent"], [6, 9, 1, "", "log_outputs"], [6, 9, 1, "", "outputs"], [6, 9, 1, "", "replace"], [6, 9, 1, "", "root_node"], [6, 9, 1, "", "save"], [6, 9, 1, "", "set_backend"], [6, 9, 1, "", "set_dataformat"], [6, 9, 1, "", "set_datatype"], [6, 9, 1, "", "set_name"], [6, 9, 1, "", "set_ordered_inputs"], [6, 9, 1, "", "set_ordered_outputs"], [6, 9, 1, "", "set_root_node"]], "aidge_core.IOSpec": [[3, 9, 1, "", "__init__"]], "aidge_core.ImplSpec": [[3, 9, 1, "", "__init__"]], "aidge_core.Node": [[6, 9, 1, "", "__init__"], [6, 9, 1, "", "add_child"], [6, 9, 1, "", "attributes"], [6, 9, 1, "", "clone"], [6, 9, 1, "", "create_unique_name"], [6, 9, 1, "", "get_children"], [6, 9, 1, "", "get_nb_inputs"], [6, 9, 1, "", "get_nb_outputs"], [6, 9, 1, "", "get_operator"], [6, 9, 1, "", "get_ordered_children"], [6, 9, 1, "", "get_parent"], [6, 9, 1, "", "get_parents"], [6, 9, 1, "", "input"], [6, 9, 1, "", "input_category"], [6, 9, 1, "", "input_name"], [6, 9, 1, "", "inputs"], [6, 9, 1, "", "inputs_names"], [6, 9, 1, "", "name"], [6, 9, 1, "", "output"], [6, 9, 1, "", "output_name"], [6, 9, 1, "", "outputs"], [6, 9, 1, "", "outputs_names"], [6, 9, 1, "", "set_name"], [6, 9, 1, "", "type"]], "aidge_core.Operator": [[9, 9, 1, "", "__init__"], [9, 9, 1, "", "associate_input"], [9, 9, 1, "", "backend"], [9, 9, 1, "", "clone"], [9, 9, 1, "", "forward"], [9, 9, 1, "", "get_impl"], [9, 9, 1, "", "get_raw_input"], [9, 9, 1, "", "get_raw_output"], [9, 9, 1, "", "input_category"], [9, 9, 1, "", "is_atomic"], [9, 9, 1, "", "is_back_edge"], [9, 9, 1, "", "is_optional_input"], [9, 9, 1, "", "nb_inputs"], [9, 9, 1, "", "nb_outputs"], [9, 9, 1, "", "set_back_edges"], [9, 9, 1, "", "set_backend"], [9, 9, 1, "", "set_dataformat"], [9, 9, 1, "", "set_datatype"], [9, 9, 1, "", "set_impl"], [9, 9, 1, "", "set_input"], [9, 9, 1, "", "set_output"], [9, 9, 1, "", "type"]], "aidge_core.OperatorTensor": [[9, 9, 1, "", "__init__"], [9, 9, 1, "", "associate_input"], [9, 9, 1, "", "backend"], [9, 9, 1, "", "clone"], [9, 9, 1, "", "dims_forwarded"], [9, 9, 1, "", "forward"], [9, 9, 1, "", "forward_dims"], [9, 9, 1, "", "forward_dtype"], [9, 9, 1, "", "get_impl"], [9, 9, 1, "", "get_input"], [9, 9, 1, "", "get_inputs"], [9, 9, 1, "", "get_output"], [9, 9, 1, "", "get_outputs"], [9, 9, 1, "", "get_raw_input"], [9, 9, 1, "", "get_raw_output"], [9, 9, 1, "", "input_category"], [9, 9, 1, "", "is_atomic"], [9, 9, 1, "", "is_back_edge"], [9, 9, 1, "", "is_optional_input"], [9, 9, 1, "", "nb_inputs"], [9, 9, 1, "", "nb_outputs"], [9, 9, 1, "", "set_back_edges"], [9, 9, 1, "", "set_backend"], [9, 9, 1, "", "set_dataformat"], [9, 9, 1, "", "set_datatype"], [9, 9, 1, "", "set_impl"], [9, 9, 1, "", "set_input"], [9, 9, 1, "", "set_output"], [9, 9, 1, "", "type"]], "aidge_core.ParallelScheduler": [[11, 9, 1, "", "__init__"], [11, 9, 1, "", "clear_scheduling"], [11, 9, 1, "", "forward"], [11, 9, 1, "", "generate_scheduling"], [11, 9, 1, "", "get_backward_scheduling"], [11, 9, 1, "", "get_forward_scheduling"], [11, 9, 1, "", "get_sequential_static_scheduling"], [11, 9, 1, "", "get_static_scheduling"], [11, 9, 1, "", "graph_view"], [11, 9, 1, "", "reset_scheduling"], [11, 9, 1, "", "save_factorized_static_scheduling_diagram"], [11, 9, 1, "", "save_scheduling_diagram"], [11, 9, 1, "", "save_static_scheduling_diagram"], [11, 9, 1, "", "tag_conditional_nodes"]], "aidge_core.Scheduler": [[11, 9, 1, "", "__init__"], [11, 9, 1, "", "clear_scheduling"], [11, 9, 1, "", "generate_scheduling"], [11, 9, 1, "", "get_backward_scheduling"], [11, 9, 1, "", "get_forward_scheduling"], [11, 9, 1, "", "get_sequential_static_scheduling"], [11, 9, 1, "", "get_static_scheduling"], [11, 9, 1, "", "graph_view"], [11, 9, 1, "", "reset_scheduling"], [11, 9, 1, "", "save_factorized_static_scheduling_diagram"], [11, 9, 1, "", "save_scheduling_diagram"], [11, 9, 1, "", "save_static_scheduling_diagram"], [11, 9, 1, "", "tag_conditional_nodes"]], "aidge_core.SequentialScheduler": [[11, 9, 1, "", "__init__"], [11, 9, 1, "", "backward"], [11, 9, 1, "", "clear_scheduling"], [11, 9, 1, "", "forward"], [11, 9, 1, "", "generate_memory"], [11, 9, 1, "", "generate_memory_auto_concat"], [11, 9, 1, "", "generate_scheduling"], [11, 9, 1, "", "get_backward_scheduling"], [11, 9, 1, "", "get_forward_scheduling"], [11, 9, 1, "", "get_sequential_static_scheduling"], [11, 9, 1, "", "get_static_scheduling"], [11, 9, 1, "", "graph_view"], [11, 9, 1, "", "reset_scheduling"], [11, 9, 1, "", "save_factorized_static_scheduling_diagram"], [11, 9, 1, "", "save_scheduling_diagram"], [11, 9, 1, "", "save_static_scheduling_diagram"], [11, 9, 1, "", "set_scheduling_policy"], [11, 9, 1, "", "tag_conditional_nodes"]], "aidge_core.SinglePassGraphMatching": [[7, 9, 1, "", "__init__"], [7, 9, 1, "", "add_node_lambda"], [7, 9, 1, "", "match"]], "aidge_core.Tensor": [[4, 9, 1, "", "__init__"], [4, 9, 1, "", "abs"], [4, 9, 1, "", "backend"], [4, 9, 1, "", "capacity"], [4, 9, 1, "", "clone"], [4, 9, 1, "", "cpy_transpose"], [4, 9, 1, "", "dformat"], [4, 9, 1, "", "dims"], [4, 9, 1, "", "dtype"], [4, 9, 1, "", "get_available_backends"], [4, 9, 1, "", "get_coord"], [4, 9, 1, "", "get_idx"], [4, 9, 1, "", "grad"], [4, 9, 1, "", "has_impl"], [4, 9, 1, "", "mean"], [4, 9, 1, "", "resize"], [4, 9, 1, "", "set_backend"], [4, 9, 1, "", "set_data_format"], [4, 9, 1, "", "set_datatype"], [4, 9, 1, "", "set_grad"], [4, 9, 1, "", "size"], [4, 9, 1, "", "sqrt"], [4, 9, 1, "", "undefined"], [4, 9, 1, "", "zeros"]], "aidge_core.export_utils": [[5, 8, 1, "", "ExportLib"], [5, 8, 1, "", "ExportNode"], [5, 8, 1, "", "ExportNodeCpp"], [5, 10, 1, "", "scheduler_export"]], "aidge_core.export_utils.ExportLib": [[5, 9, 1, "", "__init__"], [5, 9, 1, "", "backend"], [5, 9, 1, "", "backward"], [5, 9, 1, "", "forward"], [5, 9, 1, "", "get_adaptation"], [5, 9, 1, "", "get_available_impl_specs"], [5, 9, 1, "", "get_best_adaptation"], [5, 9, 1, "", "get_best_match"], [5, 9, 1, "", "get_export_node"], [5, 9, 1, "", "get_operator"], [5, 9, 1, "", "get_prod_conso"], [5, 9, 1, "", "get_required_spec"], [5, 9, 1, "", "prod_conso"], [5, 9, 1, "", "register"], [5, 9, 1, "", "register_generic"], [5, 9, 1, "", "register_metaop"]], "aidge_core.export_utils.ExportNode": [[5, 9, 1, "", "__init__"]], "aidge_core.export_utils.ExportNodeCpp": [[5, 9, 1, "", "__init__"], [5, 9, 1, "", "add_kernel_to_copy"], [5, 9, 1, "", "export"], [5, 9, 1, "", "forward"], [5, 9, 1, "", "reformat_kernels_to_copy"]], "aidge_export_tensorrt": [[12, 10, 1, "", "export"]], "aidge_onnx": [[13, 10, 1, "", "export_onnx"], [13, 10, 1, "", "load_onnx"]], "aidge_onnx.node_export": [[13, 10, 1, "", "auto_register_export"], [13, 10, 1, "", "register_export"], [13, 10, 1, "", "supported_operators"]], "aidge_onnx.node_export.generic_export": [[13, 10, 1, "", "generic_export"]], "aidge_onnx.node_import": [[13, 11, 1, "", "ONNX_NODE_CONVERTER_"], [13, 10, 1, "", "auto_register_import"], [13, 10, 1, "", "register_import"], [13, 10, 1, "", "supported_operators"]], "aidge_onnx.node_import.generic": [[13, 10, 1, "", "import_generic"]]}, "objnames": {"0": ["cpp", "function", "C++ function"], "1": ["cpp", "functionParam", "C++ function parameter"], "2": ["cpp", "templateParam", "C++ template parameter"], "3": ["cpp", "class", "C++ class"], "4": ["cpp", "member", "C++ member"], "5": ["cpp", "enum", "C++ enum"], "6": ["cpp", "enumerator", "C++ enumerator"], "7": ["cpp", "union", "C++ union"], "8": ["py", "class", "Python class"], "9": ["py", "method", "Python method"], "10": ["py", "function", "Python function"], "11": ["py", "data", "Python data"]}, "objtypes": {"0": "cpp:function", "1": "cpp:functionParam", "2": "cpp:templateParam", "3": "cpp:class", "4": "cpp:member", "5": "cpp:enum", "6": "cpp:enumerator", "7": "cpp:union", "8": "py:class", "9": "py:method", "10": "py:function", "11": "py:data"}, "terms": {"": [0, 4, 5, 6, 9, 10, 11, 12, 17, 18, 19, 20, 22, 23, 25, 26, 28, 29, 35, 39, 41], "0": [0, 4, 5, 6, 7, 9, 11, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 40, 43], "00": [22, 25], "000": 26, "000000": 22, "002580789616331458": 22, "00258567463606596": 22, "0027241543911787e": 22, "0031717130479807e": 22, "0032389953266829252": 22, "0078125": 22, "0089348943138683e": 22, "01": [25, 26], "010498046875": 22, "0108239825872136e": 22, "011490303617355e": 22, "013943285681307316": 22, "016549466813845e": 22, "0166547672625598e": 22, "0167133981823246e": 22, "02": 26, "0205078125": 22, "0262524359993083e": 22, "03": 26, "03125": 22, "031376270124142e": 22, "0344099969329157e": 22, "034411737786096e": 22, "04": [19, 26], "041059153969684e": 22, "0443442": 20, "044944005260339e": 22, "048128113421378e": 22, "05": 26, "0572354386536535e": 22, "06": [9, 26], "0625": 22, "07": [22, 26], "072873986560081e": 22, "078125": 22, "0798422895040858e": 22, "08": [22, 26], "081010990195864e": 22, "082763671875": 22, "09": 26, "0979603668382307e": 22, "098312206172895e": 22, "0983123537468476e": 22, "0995075551888714e": 22, "0996337309183355e": 22, "0996679": 20, "099668": 20, "0e": 9, "0f": 9, "1": [3, 4, 5, 6, 7, 9, 11, 12, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 31, 43], "10": [4, 6, 19, 20, 22, 25, 26, 27, 28], "100": [19, 25, 26], "10000000149011612": 9, "101367854591673e": 22, "101_first_step": [19, 21], "10248": 22, "10250": 22, "104": 26, "10844001811131e": 22, "1089319967361296e": 22, "1093918953717347e": 22, "11": [0, 19, 22, 25, 26, 28], "112": 6, "1122966": 20, "12": [19, 22, 25, 26, 28], "122052594949249e": 22, "124677042253836e": 22, "125": [22, 25], "12548828125": 22, "12691": 22, "128": 25, "12884": 22, "129242279331095e": 22, "13": [19, 22, 25, 26, 28], "13579765": 20, "139": 22, "13954135": 20, "14": [19, 20, 22, 25, 26, 29], "140625": 22, "141845703125": 22, "14249442304": 22, "14250483384320": 22, "14250512744448": 22, "14250522181632": 22, "14289": 22, "143087144854013e": 22, "14316288868352": 22, "1431658257577701e": 22, "1443279863152655e": 22, "14512632832": 22, "14586049724416": 22, "14634063": 22, "147": 19, "148": 19, "149": 19, "14985280512": 22, "15": [19, 20, 22, 26], "150": 19, "151": 19, "1528322667931175e": 22, "1550": 22, "1551": 22, "156120728699916e": 22, "1578380784113246e": 22, "16": [19, 20, 22, 23, 25, 26, 27, 31], "160": 22, "1651153564453": 22, "16668505088": 22, "1692376319256628e": 22, "16bit": [33, 40], "16x16": 10, "17": [19, 20, 22, 25, 26], "1702369695032034e": 22, "170369706142124e": 22, "170370223130007e": 22, "1703712571057726e": 22, "1703721618345676e": 22, "170372808069421e": 22, "170740716611165e": 22, "1708629125823588e": 22, "1709669563937815e": 22, "172": 19, "173": 19, "174": 19, "174648137343064e": 22, "175": 19, "176": 19, "18": [6, 19, 20, 22], "18512852": 20, "1875": 22, "1876": 22, "19": [19, 20, 22, 26], "191": 19, "192": [19, 25], "193": 19, "194": 19, "194960498660583e": 22, "195": 19, "196": 19, "197": 19, "198": 19, "199": 25, "1d": [4, 40], "1e": 19, "1f": 9, "2": [0, 4, 5, 6, 7, 9, 11, 19, 20, 21, 22, 23, 25, 26, 27, 28, 31, 43], "20": [19, 22, 26], "200": [20, 21, 22, 26], "2017": [22, 25], "2025": [0, 22, 25], "202659104": 22, "20392664": 20, "204069": 22, "2069": 22, "2074": 22, "2090808306983485e": 22, "209082181778237e": 22, "21": [19, 22, 25], "210": 19, "211": 19, "211834470400": 22, "212": 19, "214": 19, "215": 19, "216": 22, "217361": 22, "21875": 22, "22": [5, 19, 22], "223": 22, "224": 6, "2248365825721957e": 22, "227982950400": 22, "228689": 22, "229060395008": 22, "23": [5, 19, 22], "231253737472": 22, "234038768": 22, "239651504128": 22, "239664087040": 22, "24": [5, 19, 25], "2406125": 20, "24236728": 20, "245527325179904": 22, "245553296310272": 22, "2459246970308416e": 22, "24839124": 20, "25": [5, 10, 19, 22], "255": 22, "2557983398438": 22, "256": 25, "25900268554688": 22, "26": [19, 22, 25], "265625": 22, "2686448208222805e": 22, "2689649": 20, "27": [19, 22], "2708969032439562e": 22, "2737084302582354e": 22, "273960316190692e": 22, "2754205139829522e": 22, "276196193364292e": 22, "28": [19, 22, 26], "28125": 22, "2815946638584137": 25, "2853067727841001e": 22, "285310291221309e": 22, "2865900695323944": 25, "29": [5, 19, 22], "29059635245651e": 22, "29305139116332e": 22, "2931915210097526e": 22, "294526177008102e": 22, "294921875": 22, "297171039297452e": 22, "297350302185953e": 22, "298119516301772e": 22, "298307595397904e": 22, "299606999793923e": 22, "2bcpu": 25, "2d": [18, 31, 40], "3": [4, 6, 9, 16, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 31, 43], "30": [5, 19, 22], "300px": 22, "3035673499107361": 25, "30495578050613403": 25, "30561584": 20, "30862377825769e": 22, "31": [5, 22], "310586": 20, "3140": 22, "31530556082725525": 25, "31620560934271e": 22, "3170": 22, "3173": 22, "32": [5, 22, 25, 27, 28, 31], "320": 25, "3220": 22, "3233649744613663e": 22, "3253": 22, "328125": 22, "329620361328125": 22, "329680442810059": 22, "32bit": [33, 40], "33": 22, "330078125": 22, "3301": 22, "3320303058944": 22, "3320363614208": 22, "332599639892578": 22, "3330078125": 22, "3365": 22, "3377742080": 22, "3380": 22, "339e": 22, "34": [19, 27], "3428": 22, "3478149120": 22, "3479292": 20, "3492807700068108e": 22, "3495444736": 22, "35": 22, "3515625": 22, "3544372215808": 22, "3555848803216089e": 22, "355589274718613e": 22, "3555912134231737e": 22, "3563127992606555e": 22, "3563156426940112e": 22, "36": [19, 22], "3631340322816": 22, "3631347662848": 22, "3664638640128": 22, "3664702865408": 22, "3677763001830605e": 22, "37": 22, "37109375": 22, "3744489216": 22, "3745664512": 22, "3746320128": 22, "3746578688": 22, "3746909184": 22, "38": 19, "3835896004608": 22, "384": 25, "3849740544": 22, "39": [19, 20, 22, 23, 26], "39208984375": 22, "392822265625": 22, "393": 22, "3947506": 20, "3985453": 20, "3d": [27, 40], "3f": 26, "3rd": 6, "3x3": [23, 27, 43], "4": [2, 4, 6, 9, 19, 20, 21, 22, 23, 25, 26, 27, 28, 31], "40": 19, "400123274514609e": 22, "405445396900177": 25, "406419809684859e": 22, "41": 22, "4167034451460096e": 22, "42": 22, "420287501791034e": 22, "4218520432050438e": 22, "425184075619792e": 22, "425190160342673e": 22, "4254777929264924e": 22, "4294967295": 6, "43": 22, "4328903369374592e": 22, "4361496526079918e": 22, "44": 22, "449": 19, "450": 19, "451": 19, "451841121074237e": 22, "452": 19, "454": 19, "458333333333332": 25, "460281": 20, "4722072568316035e": 22, "4864516498717671e": 22, "4923961": 20, "4939362661438726e": 22, "4d": 40, "5": [6, 9, 10, 19, 20, 21, 22, 23, 25, 26, 27, 28, 31], "50": 6, "506409142732924e": 22, "50662732": 22, "51": 22, "51150976": 22, "512": [23, 25, 27], "51215688": 22, "515159678570673e": 22, "51525": 22, "51722568": 22, "51726716": 22, "519796": 20, "520268162362513e": 22, "5249792": 20, "52762752": 22, "52809": 22, "53": 22, "5300222170479722e": 22, "530022326999135e": 22, "5369735494610977e": 22, "54345024": 22, "543967113057844e": 22, "55340934627328": 22, "5554267943085343e": 22, "5673828125": 22, "568359375": 22, "57139": 22, "5748036475435896e": 22, "58251953125": 22, "59": 26, "59309768676758": 22, "5d": 40, "5f": 9, "6": [0, 9, 12, 19, 20, 21, 22, 25, 26, 28, 31], "62": [25, 26], "63": 27, "6382758": 20, "64": [6, 25, 31], "6447895466691317e": 22, "6448006297463397e": 22, "646346445936972e": 22, "64x64": 31, "653328882380856e": 22, "6533405824890962e": 22, "65535": 6, "655616688261144e": 22, "66": 28, "6624670822171524e": 22, "6676381918920442e": 22, "67": 26, "6773143": 20, "6773148": 20, "6815581571897805e": 22, "6862891561106743e": 22, "6875": 25, "69": 26, "69952342700103e": 22, "7": [16, 19, 20, 21, 22, 25, 26, 27, 28, 31], "7036957961156559e": 22, "71": 23, "7108441610124788e": 22, "71598424": 20, "7233275": 20, "7253615828306965e": 22, "725370027079998e": 22, "73": 23, "737577596819939e": 22, "7385771295049327e": 22, "74": 23, "7409431772977156e": 22, "7418032899659543e": 22, "744": 22, "7466482178547253e": 22, "75": [22, 23, 25, 26], "752398330985541e": 22, "7561026317510457e": 22, "76": 23, "7603642276376897e": 22, "765625": 25, "766387939453125": 22, "766414642333984": 22, "766448020935059": 22, "77": 23, "7728632692125496e": 22, "773": 22, "774188493311372e": 22, "7751997780891114e": 22, "77811750222512e": 22, "7782809489959315e": 22, "78": [23, 25], "780176153220437e": 22, "785": 22, "785687041624186e": 22, "7859880630426323e": 22, "7884540591926476e": 22, "79": 23, "792110083058292e": 22, "793872341592482e": 22, "7994000597751165e": 22, "8": [9, 12, 16, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 31], "80": 23, "8039985697919656e": 22, "8045502118573262e": 22, "808069": 22, "80x80": 10, "81": 23, "81001099": 20, "812181": 22, "8125": 25, "8130715755729514e": 22, "82": 23, "83": 23, "830208147456": 22, "8310546875": 22, "83574104309082": 22, "836852": 22, "8394614727878753e": 22, "84": 23, "84033203125": 22, "840936087877394e": 22, "8427734375": 22, "8468486248933722e": 22, "85": [23, 26], "850152201912320": 22, "8523600588218255e": 22, "8572841821150455e": 22, "86": [23, 25], "861509": 22, "8617293357346353e": 22, "865096192": 22, "865588": 22, "87": 23, "873816070105814e": 22, "8739378": 20, "88": 23, "882164": 22, "882165": 22, "884746434516879e": 22, "88671875": 22, "888750195959472e": 22, "888753277821998e": 22, "89": [23, 26], "890428097281278e": 22, "8917654862266218e": 22, "895038568559888e": 22, "8982372": 20, "8bit": [33, 40], "9": [9, 19, 20, 21, 22, 25, 26, 28, 43], "90": 26, "907333599232": 22, "91": 26, "911964372992": 22, "913330078125": 22, "913581536950412e": 22, "914624536135793e": 22, "915711152663501e": 22, "9162642855201935e": 22, "9171690175937894e": 22, "9282594100907423e": 22, "93": 26, "9368016799321393e": 22, "9375": [22, 25], "94": 26, "942726775082116e": 22, "946637941505923e": 22, "948017145358971e": 22, "949462890625": 22, "95": 26, "9501953125": 22, "9515305130566762e": 22, "954345703125": 22, "9560546875": 22, "956130027770996": 22, "958251953125": 22, "958324432373047": 22, "958589239296": 22, "959124144128": 22, "96230666": 20, "9634000000000001": 21, "97": 26, "98370683": 20, "9848806511142385e": 22, "99": 26, "99051021": 20, "999999747378752e": 9, "A": [4, 5, 6, 7, 9, 11, 12, 13, 18, 23, 27, 29, 31, 40, 43], "AND": [4, 43], "And": [19, 20, 23], "As": [6, 9, 18, 19, 20, 23, 26, 27, 33, 40], "At": [19, 27], "But": 26, "By": [7, 16, 23, 27], "For": [0, 4, 9, 10, 11, 16, 18, 19, 20, 23, 24, 25, 27, 29, 30, 31, 33, 34, 35, 40, 43], "IN": 6, "If": [4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 19, 20, 24, 26, 27, 34, 39, 43], "In": [4, 6, 7, 11, 18, 19, 20, 22, 23, 25, 26, 27, 29, 33, 34, 43], "It": [4, 5, 6, 7, 9, 11, 13, 18, 19, 23, 27, 34, 40, 43], "Its": 18, "NOT": 43, "No": [4, 6, 18, 19, 20, 25, 26], "Not": [6, 9, 40], "ON": 16, "OR": 43, "Of": 27, "One": [6, 7, 19, 23, 27, 43], "Such": 40, "That": [6, 26, 29, 33], "The": [0, 4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 19, 20, 23, 24, 25, 27, 28, 29, 30, 31, 33, 34, 35, 39, 40, 43], "Then": [6, 16, 20, 26], "There": [6, 27, 35], "These": [19, 34, 35, 40, 41], "To": [6, 7, 16, 19, 23, 24, 25, 26, 27, 31, 40, 43], "With": [6, 19, 27, 34], "_": 20, "__": 27, "__getitem__": 25, "__init__": [2, 3, 4, 5, 6, 7, 9, 11, 19, 20, 25, 27], "_add": 20, "_div": 20, "_get_file_path": 19, "_get_seri": 19, "_in": 6, "_input": 20, "_input_": 5, "_load_byt": 19, "_load_onnx2graphview": 19, "_maxpool": 9, "_mul": 20, "_name": 5, "_npyio_impl": 19, "_output_": 5, "_pad": 9, "_pow": 20, "_supportedformat": 19, "a002": 19, "aa": 43, "aaa": 43, "ab": 4, "abil": 29, "abl": [6, 19, 25, 30, 34, 40, 43], "about": [26, 34], "abov": [7, 20, 27, 43], "abs_op": 9, "absenc": 23, "abspath": [19, 23, 27], "abstract": [0, 4, 5, 9, 19, 31, 43], "acc": [25, 26], "acceler": [10, 18], "accept": [4, 9], "access": [4, 5, 19, 28, 29, 30, 36], "accessor": 6, "accesss": 19, "accord": [4, 6, 26, 29, 31, 33, 34, 35, 40], "account": [6, 34, 41], "accross": 23, "accumul": 42, "accuraci": [21, 25, 30, 35], "achiev": [27, 31, 34, 36], "across": 9, "act": [19, 27], "action": [5, 34], "activ": [9, 13, 16, 26, 40], "actual": [4, 6, 10, 11, 18, 27, 33], "acycl": [6, 11, 18], "ad": [0, 5, 6, 9, 19, 27, 31, 35, 39, 43], "adapt": [5, 19, 29, 34], "adapt_to_backend": [10, 19], "adapttobackend": 10, "add": [5, 6, 7, 11, 13, 18, 19, 20, 23, 24, 29, 40, 41], "add1": 6, "add2": 23, "add_child": [6, 20, 23], "add_kernel_to_copi": 5, "add_node_lambda": [7, 18, 23], "add_op": [9, 20], "add_ordered_output": 6, "addafterbackward": 6, "addafterforward": 6, "addbeforebackward": 6, "addbeforeforward": 6, "addchild": 6, "addit": [4, 5, 7, 9, 23, 29, 43], "addition": [6, 12], "additionn": [6, 23], "addnodelambda": 7, "addop": 9, "addorderedoutput": 6, "address": [9, 26], "addview": 6, "advanc": [18, 24], "advantag": 27, "affect": [6, 26], "after": [0, 4, 6, 9, 10, 11, 26, 34, 35, 40, 41], "again": [7, 20, 23, 26, 27], "against": 29, "aggress": 26, "agnost": [15, 33, 34, 40], "agreg": 42, "ai": 27, "aidg": [3, 4, 5, 6, 7, 9, 10, 11, 14, 15, 16, 17, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43], "aidge_backend_cpu": [16, 19, 20, 21, 22, 23, 25, 26, 27, 28], "aidge_backend_cuda": 25, "aidge_backend_opencv": [2, 21], "aidge_cifar10": 25, "aidge_cor": [2, 3, 4, 5, 6, 7, 9, 10, 11, 13, 16, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28], "aidge_databas": 25, "aidge_dataprovid": 25, "aidge_export_cpp": [19, 22], "aidge_export_tensorrt": 12, "aidge_instal": 16, "aidge_learn": 25, "aidge_model": [26, 27], "aidge_nod": [5, 13], "aidge_node_converter_": 13, "aidge_onnx": [13, 16, 19, 20, 21, 22, 23, 26, 27, 28], "aidge_quant": [19, 26], "aim": [28, 29, 34, 43], "algorithm": [6, 11, 19, 26, 27, 29, 33, 40], "all": [4, 5, 6, 7, 9, 10, 11, 16, 19, 23, 25, 26, 27, 28, 31, 34, 35, 39, 40, 43], "allclos": 19, "allexpr": 43, "alloc": [4, 5, 11, 34], "allow": [5, 6, 7, 9, 11, 12, 18, 19, 20, 23, 26, 27, 29, 31, 35, 36, 39, 40, 42], "allow_data_depend": [6, 9, 19, 27], "allow_pickl": 19, "allowdatadepend": [6, 9], "allowzero": 9, "alon": 27, "along": [4, 5, 6, 9, 12, 18, 27], "alreadi": [4, 6, 7, 19, 21, 22, 23, 25, 26, 34, 35, 40, 43], "also": [4, 5, 6, 7, 9, 13, 17, 19, 20, 23, 26, 27, 29, 31, 33, 34], "altern": 9, "although": 23, "alwai": [4, 7, 18, 23, 27], "amazonaw": 21, "ambigu": 6, "ambit": 0, "among": [6, 34], "amount": [9, 11, 18, 27], "amp": 19, "an": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 23, 24, 25, 26, 27, 28, 29, 30, 31, 33, 35, 36, 39, 41, 42, 43], "analysi": 35, "analyz": 9, "ancestor": 6, "anchor": [7, 23], "and_op": 9, "ani": [3, 4, 6, 7, 9, 10, 18, 19, 22, 24, 27, 40, 43], "annot": 9, "anoth": [4, 6, 9, 11, 16, 18, 27, 29, 33, 34, 40], "anymor": 27, "anyth": 27, "anytim": [19, 27], "anywher": [7, 23, 27], "api": [0, 5, 6, 19, 25, 29, 34, 35, 36], "app": 12, "appear": [6, 23, 43], "appen": 6, "append": [5, 19, 22, 23, 26, 27], "appli": [5, 6, 9, 10, 19, 23, 31, 40], "applic": [0, 5, 19, 27, 30, 34], "approach": [0, 5, 20, 26], "appropri": 31, "approxim": 0, "ar": [4, 5, 6, 7, 9, 10, 11, 12, 16, 18, 19, 23, 27, 28, 29, 31, 33, 34, 35, 36, 40, 43], "arang": 20, "arbitrari": [6, 11, 18, 27], "architectur": [18, 19, 26, 43], "area": 9, "arg": [3, 6, 9, 10, 11, 13, 19], "arg0": [4, 5, 6], "arg1": 5, "argmax": [19, 20, 21, 26], "argmax_op": 9, "argsep": 43, "argument": [4, 5, 6, 7, 13, 23, 27], "arithmet": [0, 4], "around": 36, "arr": 4, "arrai": [4, 6, 9, 19, 20, 21, 22, 25, 26, 28, 31, 36], "array1d": [4, 6], "array2d": 4, "array3d": 4, "array4d": 4, "array_nam": [19, 22], "art": 15, "ascii": [20, 21], "ask": 6, "aslateasposs": 11, "assert": [4, 6, 19], "assess": [4, 6], "associ": [4, 5, 6, 9, 11, 13, 18, 27, 29, 31, 33, 34, 40], "associate_input": 9, "associateinput": 9, "assoonasposs": 11, "assum": [4, 7, 23, 27, 34], "assumpt": [9, 18], "ast": 43, "asttoken": 22, "astyp": [6, 19, 20, 22, 28], "async": 12, "atan": 20, "atan_op": 9, "atom": 20, "attach": [20, 26, 41], "attack": 29, "attempt": 25, "attr": [3, 6, 9, 20, 23], "attrdict": 3, "attribut": [4, 5, 6, 7, 9, 11, 18, 19, 20, 27, 33, 40, 43], "attrs_": 3, "audit": 34, "auto": [6, 9, 11, 22], "auto_regist": 13, "auto_register_export": 13, "auto_register_import": [13, 20], "automat": [1, 5, 6, 9, 12, 19, 27, 43], "avaialbl": 1, "avail": [0, 4, 5, 6, 9, 10, 11, 12, 18, 19, 26, 27, 29, 33, 34, 36, 39, 40], "availabledatastatu": 11, "averag": [12, 40], "averagepool": [9, 20], "avgpool": 9, "avgpool1d": 40, "avgpool2d": 40, "avgpool3d": 40, "avgpooling1d": 9, "avgpooling2d": 9, "avgpooling3d": 9, "avgpooling_op": 9, "avoid": [6, 7, 20, 23, 43], "awar": [27, 35], "ax": [9, 40], "axes3d": 27, "axi": [9, 19, 21, 26, 28], "b": [6, 9, 19, 20, 22, 40], "b64encod": [20, 21, 28], "back": [6, 9, 18, 27, 28], "backbon": [23, 34], "backedg": 9, "backend": [4, 5, 6, 8, 9, 14, 18, 19, 20, 25, 26, 34, 35, 36, 39, 40], "backend_opencv": 31, "backpropag": [11, 25], "backward": [4, 5, 6, 9, 11, 25, 33, 40, 41], "bandwidth": [26, 34], "base": [5, 6, 19, 27, 29, 31, 34, 39], "base64": [20, 21, 28], "base64_byt": [20, 21, 28], "base64_str": [20, 21, 28], "base_nam": 6, "base_url": 21, "basic": [19, 24, 25], "batch": [4, 5, 9, 10, 11, 12, 24, 31], "batch_siz": [4, 9, 12, 21, 25], "batchnorm": [19, 20, 29, 40, 43], "batchnorm1d": 40, "batchnorm2d": [9, 28, 40], "batchnorm3d": 40, "batchnorm_op": 9, "batchsiz": 4, "becaus": [4, 7, 23, 27, 36], "becom": [6, 27, 43], "been": [4, 6, 7, 9, 10, 19, 20, 22, 23, 26, 27, 28, 40], "befor": [4, 5, 6, 9, 10, 19, 22, 26, 27, 41], "beforehand": 10, "begin": [9, 20, 26, 43], "beginendtupl": 9, "behavior": [6, 7, 9, 23, 27], "behaviour": 6, "being": [0, 4, 6, 27, 43], "belong": [6, 9, 34], "below": [18, 23], "benchmark": 35, "benefici": 34, "best": 6, "beta": 20, "beta_prod": 20, "between": [4, 6, 7, 9, 18, 23, 27, 34, 39, 40, 43], "bewar": [4, 7, 23, 27], "beyond": 18, "bia": [6, 7, 9, 23, 25, 27], "bias": [6, 25], "bigger": 9, "billion": 26, "bin": [12, 16, 19, 22], "binari": 19, "bind": [12, 16, 19, 20, 29, 36], "bit": [9, 26], "bitshift": 20, "bitshift_op": 9, "block": 41, "bn0": 28, "bnmean": 28, "bnscale": 28, "bnshift": 28, "bnvar": 28, "board": 34, "bool": [2, 4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 19, 43], "boolean": [5, 13, 43], "border": 9, "bordertyp": 9, "bordervalu": 9, "both": [4, 5, 6, 7, 19, 23, 28, 29, 31, 33, 40], "bound": 4, "branch": [7, 11, 20, 23, 27], "break": [7, 23, 25], "broadcast": 9, "broken": 6, "brows": [4, 34], "buffer": [4, 42], "buffer_protocol": 36, "build": [0, 6, 9, 10, 12, 15, 18, 19, 22, 25], "build_cpp": 12, "build_cpp_dock": 12, "build_image_dock": 12, "build_lib_python": 12, "build_lib_python_dock": 12, "builder": 6, "built": [9, 10, 11, 16, 18, 19, 43], "builtin": 19, "busi": 11, "button": 22, "button_clear": 22, "button_gen": 22, "byte": [2, 19, 26], "c": [2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 18, 20, 22, 25, 29, 40], "cach": 12, "cache_file_path": 12, "calcul": [0, 9, 29, 30, 33, 34], "calibr": 12, "calibration_cach": 12, "calibration_fold": 12, "calibration_folder_path": 12, "call": [4, 6, 7, 9, 18, 19, 20, 26, 27, 31, 33, 34, 40, 41], "callabl": [5, 7, 13], "callback": 6, "can": [0, 4, 6, 7, 9, 10, 11, 12, 13, 16, 18, 19, 20, 23, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 35, 36, 40, 41, 42, 43], "cannot": [6, 7, 9, 19, 20, 23, 27, 43], "canva": 22, "capabl": [18, 34], "capac": 4, "captur": 23, "care": [6, 29], "carri": [6, 34, 40], "case": [4, 6, 7, 11, 19, 20, 23, 25, 27, 33, 34, 35, 40, 43], "cast": [4, 19, 26], "cast_op": 9, "cat": 19, "categor": [29, 35, 40], "categori": [6, 9, 40], "cd": [16, 19, 22], "ceil": 9, "ceil_mod": 9, "cell": [19, 22], "certifi": [22, 25], "chain": [13, 19], "chang": [4, 5, 6, 10, 23, 27, 29, 33, 35, 40], "channel": [4, 5, 9, 20], "char": [4, 9], "charact": [13, 43], "character": [15, 43], "characterist": [0, 4], "charset": [22, 25], "check": [4, 5, 6, 9, 18, 20, 27, 34, 43], "child": [6, 7, 23, 26, 27, 40], "child_input_tensor_idx": 6, "child_nod": 6, "childinputtensoridx": 6, "childnod": 6, "childnodetyp": 23, "children": [6, 23, 40], "choos": [18, 25, 27, 28, 29, 31, 33, 34, 40], "chosen": [33, 40], "chrono": 11, "chronolog": 34, "chw": [4, 31], "cifar": 25, "cifar10": 25, "circular": [6, 27], "ckei": 43, "cl": [6, 25], "clariti": 43, "class": [0, 2, 3, 4, 5, 6, 7, 19, 20, 25, 27, 31], "classic": 34, "classif": 30, "classmethod": 5, "clean": 12, "clear": [6, 11, 22], "clear_schedul": 11, "clearschedul": 11, "clip": [4, 19, 20, 26], "clip_op": 9, "clipping_mod": 19, "clone": [4, 6, 9, 12, 19], "clonecallback": 6, "clonenod": 6, "clonesharedoper": 6, "clonesharedproduc": 6, "closest": 5, "cmake": 16, "cmap": [19, 26], "cmpr": 43, "co": 22, "code": [0, 5, 9, 10, 15, 19, 20, 21, 22, 23, 26, 29, 34, 40], "coeffici": 26, "coher": 6, "colabor": 19, "collabor": 19, "collect": [5, 22, 25, 31, 43], "com": [10, 21], "combin": [10, 31, 43], "come": [6, 40], "comm": 22, "command": [12, 19, 23], "commerci": 0, "common": 40, "commonli": 9, "compact": 27, "compar": 28, "comparison": 19, "compat": [0, 4, 6, 9, 34, 36], "compil": [6, 12, 15, 20, 28, 29, 34, 35, 40], "complementari": 43, "complet": [21, 29, 40], "complex": [0, 7, 11, 18, 19, 23, 29, 40, 43], "compliant": 6, "complic": 6, "compon": [19, 34, 43], "compos": [4, 20, 25, 31, 34], "composit": [9, 20], "comprehens": 34, "compress": 26, "compresslevel": 19, "comput": [0, 5, 6, 9, 10, 11, 18, 19, 21, 25, 27, 28, 29, 31, 33, 35, 36, 39, 41], "computationn": 19, "compute_accuraci": 26, "computereceptivefield": 9, "concat": [10, 11, 20, 40], "concat_op": 9, "concaten": [9, 11, 28, 31, 40], "concept": [29, 33, 34, 40], "concretli": 31, "cond": [11, 27], "condit": [4, 11, 35, 43], "condition": 11, "conditionn": 27, "confer": 29, "config": 5, "config_extens": 5, "config_path": 5, "config_templ": 5, "configur": [0, 5, 18, 21, 22, 26, 34], "confus": 30, "conjunct": 18, "connect": [5, 6, 7, 9, 11, 13, 18, 23, 25, 26, 27, 39, 40], "connectinput": 11, "connector": [20, 40], "consecut": 6, "conserv": 4, "consid": [4, 10, 27, 34], "consist": [9, 23, 26, 34, 36, 40], "const": [2, 3, 4, 6, 7, 9, 10, 11], "constant": [9, 19, 20], "constant_fil": 25, "constant_fold": [19, 27], "constant_lr": 25, "constant_shap": 10, "constantfold": 10, "constantofshap": 20, "constantofshape_op": 9, "constantshap": 10, "constexpr": 4, "constitut": [13, 18, 40], "constrain": [0, 7, 34], "construct": [4, 6, 7, 9, 26, 27], "constructor": [4, 9, 11], "consum": [9, 11, 15, 20, 26, 27, 33], "consumm": 19, "consumpt": [0, 26], "contain": [4, 5, 6, 9, 10, 12, 13, 18, 19, 23, 26, 27, 34, 40, 43], "content": [6, 19, 20, 21, 22, 26], "context": [7, 20, 26, 43], "contigu": 4, "continu": [5, 27, 35], "contraint": 34, "contrari": 27, "contribut": 24, "control": [0, 9, 18, 34], "conv": [6, 7, 18, 19, 20, 23, 25, 43], "conv0": 28, "conv1": [6, 23, 27], "conv1_w": 23, "conv1d": [9, 40], "conv2": [6, 23, 27], "conv2_b": 23, "conv2_conv": 23, "conv2_pad": 23, "conv2_w": 23, "conv2d": [9, 19, 23, 26, 27, 28, 40], "conv2d_dataflow_cp": 27, "conv2d_df": 27, "conv2ddepthwis": 9, "conv3": [23, 27], "conv3_conv": 23, "conv3_pad": 23, "conv3_w": 23, "conv3d": 40, "conv3ddepthwis": 9, "conv4": 23, "conv4_b": 23, "conv4_conv": 23, "conv4_pad": 23, "conv4_w": 23, "conv5": 23, "conv5_b": 23, "conv5_conv": 23, "conv5_pad": 23, "conv5_w": 23, "conv_horizontal_til": 19, "conv_op": 9, "convb": 28, "convdepthwise1d": 9, "convdepthwise2d": 9, "convdepthwise_op": 9, "convdepthwiseop": 9, "convdwnd": 40, "conveni": [9, 23], "convers": [4, 6, 10, 13, 27, 36], "conversion_map": 5, "convert": [4, 5, 22, 26, 34, 36, 39], "converter_funct": 13, "convnd": 40, "convndtranspos": 40, "convnet": 26, "convolut": [6, 9, 10, 18, 24, 26, 28, 29, 33, 40, 41, 43], "convolv": 9, "convop": 9, "convtomatmul": 10, "convtranspose_op": 9, "convw": 28, "cooper": 34, "coord": 4, "coordidx": 4, "coordin": 4, "copi": [4, 5, 6, 9, 34, 36], "copycast": 4, "copycastfrom": 4, "copyfrom": 4, "copytran": 4, "copytranspos": 4, "core": [1, 14, 19, 26], "correct_pr": 21, "correctli": 34, "correspond": [2, 4, 6, 7, 13, 18, 29, 31, 39, 41, 43], "cost": [0, 29], "costli": 26, "could": [7, 23, 25, 27, 34, 43], "count": [6, 9], "counterpart": 26, "cours": 27, "cover": [6, 20, 43], "coverag": [20, 24, 34], "cp310": 25, "cpp": [4, 5, 10, 18, 19, 24, 29], "cpu": [4, 6, 14, 19, 20, 21, 22, 25, 26, 27, 28, 29, 33, 40], "cpy_transpos": 4, "cpython": 16, "creat": [4, 5, 6, 9, 12, 16, 18, 21, 23, 24, 26, 28, 29, 31, 34, 36, 39, 41, 43], "create_arrai": 9, "create_unique_nam": 6, "createuniquenam": 6, "creation": [20, 23], "criteria": [0, 34], "critic": [11, 27], "cross": 26, "cryptohash_op": 9, "ctor": 6, "cu": 12, "cuda": [25, 29, 33, 36], "current": [4, 6, 9, 11, 12, 13, 19, 25, 27, 35], "custom": [5, 9, 11, 13, 18, 19, 24, 25, 27], "customlay": 6, "cv": 2, "cycl": 6, "cyclic": [6, 11, 18, 27], "d": 4, "dangl": 6, "data": [0, 2, 5, 6, 8, 9, 10, 11, 12, 14, 18, 19, 20, 21, 22, 24, 25, 26, 28, 29, 33, 34, 35, 36, 40, 43], "data_0_bias_producerscaling_clipqu": 26, "data_0_bias_producerscaling_roundqu": 26, "data_0_conv": 26, "data_0_weight_producerscaling_clipqu": 26, "data_0_weight_producerscaling_roundqu": 26, "data_10_relu": 26, "data_11_bias_producerscaling_clipqu": 26, "data_11_bias_producerscaling_roundqu": 26, "data_11_gemm": 26, "data_11_weight_producerscaling_clipqu": 26, "data_11_weight_producerscaling_roundqu": 26, "data_1_relu": 26, "data_3_bias_producerscaling_clipqu": 26, "data_3_bias_producerscaling_roundqu": 26, "data_3_conv": 26, "data_3_weight_producerscaling_clipqu": 26, "data_3_weight_producerscaling_roundqu": 26, "data_4_relu": 26, "data_7_bias_producerscaling_clipqu": 26, "data_7_bias_producerscaling_roundqu": 26, "data_7_gemm": 26, "data_7_weight_producerscaling_clipqu": 26, "data_7_weight_producerscaling_roundqu": 26, "data_8_relu": 26, "data_9_bias_producerscaling_clipqu": 26, "data_9_bias_producerscaling_roundqu": 26, "data_9_gemm": 26, "data_9_weight_producerscaling_clipqu": 26, "data_9_weight_producerscaling_roundqu": 26, "data_batch": 21, "data_elt": 27, "data_format": 4, "data_input": 20, "databas": [14, 24], "dataelt": 18, "dataflow": [11, 15], "dataformat": [3, 4, 6, 9, 33, 40], "dataformattranspos": 4, "datainput": 6, "datapath": [2, 21], "dataprovid": [21, 23, 25, 27], "dataset": [19, 21, 25, 29], "datastructur": [19, 40], "datatyp": [2, 3, 4, 6, 9, 25, 31, 33, 40], "datatype1": 6, "datatype2": 6, "datayp": 19, "date": 0, "dcmake_build_typ": 16, "dcmake_install_prefix": 16, "dealloc": 4, "debug": [5, 6, 16], "decad": 26, "decai": 4, "decay_t": 4, "declar": [6, 20, 22, 26, 43], "decod": [20, 21, 28], "decompos": 20, "decompress": 21, "decompressed_file_path": 21, "deconv": [7, 18], "decor": [5, 13, 20, 22], "decoupl": [11, 18, 27], "dedic": 19, "deduc": 27, "deduct": 9, "deep": [0, 4, 9, 19, 24, 33, 34, 35], "def": [13, 19, 20, 21, 22, 25, 26, 27, 28], "default": [4, 5, 6, 7, 9, 11, 12, 13, 16, 18, 23, 27], "default_index": 6, "defaultdict": [13, 20], "defens": 29, "defin": [4, 5, 6, 7, 9, 11, 12, 13, 15, 19, 20, 21, 23, 26, 27, 29, 31, 33, 34, 36, 40, 43], "definit": 5, "degrad": 26, "degre": 0, "delet": [6, 7, 9, 11, 29], "delimit": 23, "demand": 23, "demonstr": [21, 24], "denomin": 9, "dens": 41, "depend": [0, 4, 6, 9, 11, 18, 19, 27, 30, 31, 33, 36, 39, 40], "deploi": [0, 26, 35], "deploy": [0, 18, 35], "deprec": 5, "depth": [7, 9, 18, 27, 40], "depthtospac": 20, "depthtospace_op": 9, "depthwis": 9, "deriv": 9, "describ": [9, 13, 19, 29, 33, 34, 40, 42], "descript": [4, 12, 16, 22, 29, 33, 34, 40], "deserialize_proto": 19, "design": [0, 6, 9, 11, 18, 27, 29, 35], "desir": [4, 9, 16, 26, 28, 34, 43], "destin": [4, 5], "destructor": 9, "detail": [0, 4, 5, 19, 24, 33, 40], "detect": [6, 30, 40, 43], "determin": [6, 9, 11, 27, 31], "determinist": [6, 18], "dev": [20, 21, 26], "dev_mod": 5, "develop": [0, 5, 26, 29, 34, 40, 43], "developp": [31, 43], "devic": [4, 6, 9, 12, 19, 26, 28, 34, 35, 36], "deviceidx_t": [4, 6, 9], "df": [4, 6], "dfg": 27, "dformat": [3, 4, 6, 9], "diagram": [11, 35], "dict": [5, 6, 13], "dictionari": [5, 20], "dictionnari": [5, 13], "didn": 23, "differ": [4, 5, 6, 9, 12, 23, 27, 29, 31, 33, 34, 43], "difficult": 26, "difficulti": 24, "digit": [19, 31], "dilat": 9, "dilation_dim": 9, "dilationdim": 9, "dim": [3, 4, 6, 9, 19, 20, 22, 27, 28], "dimens": [0, 4, 5, 6, 9, 10, 12, 13, 19, 22, 27, 28, 31, 40, 41], "dimension": 31, "dimensiosn": 20, "dimidx_t": 4, "dims_": 3, "dims_forward": 9, "dimsforward": 9, "dimsize_t": [4, 6, 9, 10], "dinstiguish": 42, "direct": [7, 11, 18, 23, 34, 40], "directli": [6, 9, 19, 27, 43], "directori": [16, 19, 22, 34], "dirnam": 6, "disabl": 9, "disconnect": 6, "disjoint": [7, 23], "displai": [11, 12, 13, 19, 20, 21, 23, 27, 28], "dissip": 0, "distil": 26, "distinct": 40, "distinguish": [4, 19], "div": [20, 40], "div_op": [9, 20], "divid": 28, "divis": [4, 9], "divop": 9, "dl": [6, 27], "dma": 34, "dnn": [5, 19, 22, 29, 31, 34, 35, 39, 40], "do": [4, 6, 7, 9, 10, 18, 19, 23, 27, 29, 34, 41], "doc": [22, 27], "docker": 12, "document": [29, 34], "doe": [4, 6, 9, 18, 20, 26, 27, 29, 33, 40, 43], "doesn": [6, 26], "domain": [13, 43], "don": [7, 19, 20, 23, 26], "done": [4, 6, 9, 10, 18, 19, 20, 22, 29, 30, 33, 36, 40], "doubl": [2, 5, 9], "download": [20, 21, 25], "download_materi": [19, 20, 21, 26], "downsiz": 4, "dpybind": 16, "drop": 4, "drop_last": [4, 21, 25], "droplast": 4, "dropout": [20, 40], "dropout_op": 9, "dsl": [7, 18, 23], "dsp": 0, "dst": 5, "dst_path": 5, "dt": [4, 9], "dtype": [3, 4, 5, 6, 9, 19, 20, 21, 22, 25, 26, 28], "due": [7, 27, 41, 43], "dummi": 6, "duplic": [6, 35, 40, 41], "durat": 9, "dure": [0, 6, 9, 11, 16, 18, 27, 29, 40, 43], "duti": 34, "dwerror": 16, "dynam": [11, 18, 34], "dynamicattribut": [3, 6, 9], "e": [4, 5, 6, 9, 19, 20, 27, 29, 33, 34, 40, 41], "e_prod": 20, "each": [2, 4, 5, 6, 7, 9, 10, 11, 16, 18, 19, 20, 27, 28, 30, 31, 33, 34, 40, 43], "eact": 5, "eager": 6, "earli": [11, 18, 27], "earlier": 11, "earlierthan": 11, "earliest": 11, "early_": 11, "eas": [0, 28], "easili": [6, 18, 20, 29, 33], "eclips": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43], "edg": [6, 7, 9, 35, 40, 41], "edgeleftidx": 7, "edgerightidx": 7, "edu": 25, "effect": [6, 15, 34], "effici": [7, 18, 23], "effort": [7, 18, 23], "either": [4, 12, 23, 27, 29, 33, 35], "elabor": 34, "electron": [11, 18, 27], "element": [4, 5, 6, 9, 11, 23, 25, 27, 34, 40], "elemwis": 6, "elif": 25, "elimin": 27, "elman": 40, "els": [6, 9, 18, 19, 20, 21, 22, 25, 26, 27, 43], "elts_t": [9, 18, 27], "elu": 40, "embed": [18, 19, 20, 26, 34, 35], "emerg": 43, "empti": [4, 5, 6, 7, 9, 23, 27, 33, 34, 40, 43], "emul": 40, "enabl": [5, 6, 12, 27, 29, 40, 43], "enable_custom_op": 13, "enable_if_t": 4, "enable_shared_from_thi": [6, 9], "encaplsul": 26, "encapsul": 43, "encod": [19, 20, 21, 25, 28], "encompass": [0, 6], "encount": [19, 24], "encourag": [18, 26], "end": [4, 6, 9, 11, 43], "end_": 11, "endstep": 9, "energi": 26, "engin": [10, 12, 15, 43], "enough": [18, 33], "enoughdatatocomputeoutputlin": 18, "ensur": [6, 9, 10, 27, 35], "enter": [9, 22], "enter_context": 19, "entir": [0, 6, 18, 27, 29, 34, 40], "entireti": 19, "entri": [5, 40], "enum": [2, 4, 9, 11], "enumer": [2, 11, 21, 25, 26], "env": 16, "environ": [18, 34, 36], "environn": [16, 19], "epsilon": 9, "eq": 43, "equal": [4, 6, 11, 26], "equal_op": 9, "equival": [4, 6, 7, 19, 23, 43], "eras": 9, "erf": 20, "erf_op": 9, "erfop": 9, "errno": 19, "erron": 23, "error": [5, 6, 7, 9, 16, 20, 22, 23, 27, 40], "especi": [10, 18], "eta": [22, 25], "etc": [0, 27, 34, 35], "eval": 22, "evalu": [26, 27, 30, 42], "even": [4, 6, 7, 9, 18, 19, 23, 26, 27], "eventu": [0, 18], "everi": [0, 6, 9, 27, 43], "everyth": [6, 26], "ex": 6, "exactli": [9, 18], "exampl": [4, 5, 7, 9, 12, 13, 16, 18, 19, 20, 21, 23, 25, 27, 29, 31, 33, 34, 41, 42, 43], "except": [4, 6, 7, 9, 22, 23, 27], "exceptiongroup": 22, "exchang": 0, "exclud": [6, 9], "exclus": 9, "exconv": 23, "exectim": 11, "execut": [6, 9, 11, 12, 18, 19, 22, 27, 29, 30, 34, 35], "executionmode_t": 12, "exempl": 27, "exercis": 24, "exhaust": 27, "exhibit": 27, "exig": 34, "exist": [4, 6, 7, 9, 21, 23, 25, 26, 27, 31, 40, 43], "exist_ok": 21, "exp": [9, 20, 43], "expand": [9, 18], "expand_metaop": [10, 23, 27], "expand_op": 9, "expandmetaop": 10, "exparam": 23, "expect": [6, 9, 19, 23, 26, 27, 34], "expectedtyp": 4, "experiment": 7, "expert": 34, "explain": 43, "explainalib": 34, "explan": 0, "explicit": [6, 9], "explicitcastmov": 10, "explicitli": 18, "explicittranspos": 10, "explor": 0, "exponenti": 40, "export": [8, 14, 16, 18, 20, 29, 41], "export_fold": [5, 12, 19, 22], "export_folder_path": 5, "export_lib": 5, "export_onnx": 13, "export_root": 5, "export_schedul": 19, "export_seri": 19, "export_util": [5, 19, 22], "exportlib": 5, "exportlibcpp": [19, 22], "exportnod": 5, "exportnodecpp": 5, "expos": 5, "expr": 43, "express": [23, 24, 29, 43], "extend": 24, "extens": [5, 11, 25], "extensivli": 20, "extern": [6, 29], "extra": 25, "extract": [4, 9, 25, 27, 28, 40], "f": [12, 19, 20, 21, 22, 23, 25, 26, 28], "facil": [18, 23], "facilit": 5, "fact": 23, "factor": [0, 9, 27], "factori": 9, "fail": [13, 19, 20, 21, 22, 26, 27], "fait": 13, "fallback": [4, 19], "fals": [2, 4, 5, 6, 7, 9, 10, 11, 13, 19, 21, 22, 26, 27, 43], "fashion": 40, "faster": 25, "fc": [6, 19, 23, 25, 26, 29, 41, 43], "fc0": 6, "fc1": 6, "fc1_gemm_input_0": 19, "fc2": 6, "fc3": 6, "fc_op": 9, "featur": [0, 6, 9, 11, 18, 19, 24, 27, 36, 39], "feature_feature_0_conv_input_0": 22, "fed": 18, "feder": 35, "fetch": [2, 4, 5], "fid": 19, "field": [9, 41], "figur": 43, "file": [5, 6, 11, 12, 13, 16, 20, 21, 22, 26, 29, 36, 43], "file_mmd": [20, 21, 28], "file_nam": 11, "file_path": 21, "filenam": [11, 13, 19], "filenotfounderror": 19, "fileobj": 19, "filepath": 12, "fill": [6, 12, 13, 23], "filler": 25, "filter": [6, 7, 9, 43], "filterlonguestdisjoint": 7, "final": [2, 6, 9, 26, 34, 41], "find": [0, 6, 7, 16, 18, 20, 23, 27, 29, 43], "finish": 11, "first": [0, 4, 6, 7, 9, 10, 11, 16, 19, 20, 25, 26, 27, 34, 43], "firsteltdim": 9, "firstidx": 9, "firstnod": 7, "firstsequ": 7, "fit": [5, 34], "fix": 10, "fix_import": 19, "fixeds": 9, "flag": [5, 9, 27], "flatidx": 4, "flatten": [4, 9, 18, 19, 21, 22, 26, 27], "flatten_op": 9, "flatten_output_0": 19, "float": [2, 4, 5, 6, 9, 11, 25, 26, 31, 33, 40, 43], "float16": 5, "float32": [4, 5, 6, 19, 20, 21, 22, 25, 26, 28], "float64": 5, "floor": 9, "flow": [0, 9, 40], "fmt": 6, "foat": 43, "fold": 26, "fold_op": 9, "folder": [5, 12, 16, 19, 34], "folk": 26, "follow": [5, 6, 7, 9, 10, 11, 12, 13, 16, 19, 20, 23, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 35, 40, 43], "fopenmp": 22, "forc": 27, "forced_inputs_categori": 9, "forcedinputscategori": 9, "forget": 26, "form": [0, 6, 27, 31, 34], "formal": 43, "format": [0, 3, 4, 5, 6, 9, 10, 11, 19, 28, 31, 34, 35, 39], "format_": 3, "former": 6, "formul": 7, "forum": 0, "forward": [4, 5, 6, 9, 11, 19, 20, 21, 22, 25, 26, 27, 28, 33, 34, 40], "forward_dim": [6, 9, 11, 19, 27], "forward_dtyp": [6, 9], "forward_templ": 5, "forwarddatatyp": 6, "forwarddim": [4, 6, 9, 11, 27], "forwarddtyp": [6, 9], "found": [6, 7, 12, 19, 22, 23, 25, 43], "foundat": 9, "four": [6, 28], "fourth": 4, "fpga": 0, "framework": [6, 9, 19, 20, 24, 25, 27, 35, 36, 40, 43], "free": [6, 19], "friend": [4, 6], "from": [0, 2, 4, 5, 6, 9, 11, 12, 13, 16, 18, 19, 20, 21, 23, 25, 27, 28, 29, 31, 33, 34, 35, 36, 40, 43], "from_out_nod": 6, "from_tensor": 6, "fromoutnod": 6, "fromoutnodenam": 6, "fromtensor": 6, "fspath": 19, "full": [9, 11, 18, 23, 27], "fullfil": 43, "fulli": [9, 18, 20, 27, 40], "fullyconnect": 29, "func": [6, 7], "function": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11, 14, 18, 19, 20, 21, 25, 26, 27, 29, 30, 31, 33, 34, 42], "functionn": [10, 19, 20, 31, 40], "functionnali": 40, "functool": 20, "fundament": 27, "further": [7, 27], "furthermor": [6, 18], "fuse": [19, 29, 43], "fuse_batchnorm": [10, 19], "fuse_to_metaop": [10, 23], "fusebatchnorm": 10, "fuseconvbatchnorm": 29, "fusemuladd": 29, "fusetometaop": 10, "fusion": [23, 29], "futur": [9, 23], "fwd_includ": 5, "g": [5, 6, 9, 22, 27, 29, 33, 40], "gaph": 40, "garante": 27, "gate": [9, 40], "gather": [20, 26], "gather_op": 9, "gathered_shap": 9, "gatheredshap": 9, "gatherop": 9, "gelu": 40, "gemm": [19, 20], "gen": 22, "gen_swish_metaop": 20, "gener": [0, 5, 6, 10, 11, 12, 13, 15, 23, 27, 28, 29, 31, 33, 34, 35, 39], "generate_graph": [6, 20], "generate_input_fil": [19, 22], "generate_main_cpp": [19, 22], "generate_memori": 11, "generate_memory_auto_concat": 11, "generate_optimized_memory_info": [19, 22], "generate_plugin": 12, "generate_schedul": [11, 22, 27], "generategraph": 6, "generatememori": 11, "generatememoryautoconcat": 11, "generateschedul": 11, "generic_export": 13, "genericconv2d_dataflow_impl": 27, "genericoper": [5, 6, 9, 13, 19, 20, 27], "genericoperator_op": 9, "genericoperatorop": 9, "get": [2, 4, 5, 6, 9, 11, 18, 20, 21, 22, 23, 24, 26, 27, 35], "get_adapt": 5, "get_attr": 20, "get_available_backend": [4, 19, 26], "get_available_impl_spec": 5, "get_backward_schedul": 11, "get_best_adapt": 5, "get_best_match": 5, "get_children": 6, "get_connected_graph_view": [6, 27], "get_conv_horizontal_til": 28, "get_coord": 4, "get_export_nod": 5, "get_forward_schedul": 11, "get_idx": 4, "get_image_data": 22, "get_impl": 9, "get_input": [9, 20, 27], "get_input_nod": 6, "get_item": [2, 25, 31], "get_keys_conv2dop": 19, "get_len": 2, "get_nb_input": 6, "get_nb_mod": [2, 25], "get_nb_output": 6, "get_nb_required_data": 27, "get_nod": [6, 20, 23, 25, 27, 28], "get_oper": [5, 6, 19, 20, 21, 23, 25, 26, 27, 28], "get_ordered_children": 6, "get_ordered_input": 6, "get_ordered_nod": 6, "get_ordered_output": 6, "get_output": [9, 19, 20, 21, 25, 26, 27, 28], "get_output_nod": [6, 19, 20, 21, 25, 26], "get_par": [6, 28], "get_prod_conso": [5, 27], "get_ranked_nod": 6, "get_ranked_nodes_nam": 6, "get_raw_input": 9, "get_raw_output": 9, "get_required_memori": 27, "get_required_spec": 5, "get_sequential_static_schedul": [5, 11], "get_static_schedul": 11, "getattr": 19, "getavailablebackend": [4, 9], "getbackwardschedul": 11, "getchildren": 6, "getconnectedgraphview": 6, "getcoord": 4, "getfirstfreedatainput": 6, "getforwardschedul": 11, "getgraph": 40, "getidx": 4, "getimpl": [4, 9], "getimploffset": 4, "getindexbatch": 4, "getinput": 9, "getinputlines": 18, "getinputsnam": 9, "getitem": [2, 4], "getlen": [2, 4], "getnbbatch": 4, "getnbconsumeddata": 9, "getnbfreedatainput": 6, "getnbmod": [2, 4], "getnbproduceddata": 9, "getnbrequireddata": [9, 18], "getnbrequiredprotect": 9, "getnod": 6, "getoper": 6, "getorderedchildren": 6, "getorderedinput": 6, "getorderednod": 6, "getorderedoutput": 6, "getorderedpar": 6, "getoutput": 9, "getoutputlines": 18, "getoutputsnam": 9, "getpar": 6, "getrankednod": 6, "getrankednodesnam": 6, "getrawinput": 9, "getrawoutput": 9, "getrequiredmemori": [9, 18], "getsequentialstaticschedul": 11, "getstaticschedul": 11, "getstorageidx": 4, "getter": 6, "gettyp": 43, "git": [19, 20, 21, 26], "gitlab": [0, 20, 21, 26], "give": [6, 19, 30, 42], "given": [2, 4, 5, 6, 7, 9, 11, 23, 27, 31, 34, 40], "gk_iodefaultindex": 6, "global": [6, 18, 22, 34], "globalaveragepool": 20, "globalaveragepooling_op": 9, "gm": [7, 10, 18, 23], "go": [6, 23], "goal": [34, 41], "goe": 27, "good": [7, 23], "got": 22, "gpu": [0, 29, 33, 36, 40], "grad": 4, "gradient": [4, 9, 25, 40], "grai": [19, 26], "grammat": 43, "granular": 18, "graph": [5, 8, 9, 10, 11, 13, 14, 15, 20, 24, 25, 26, 27, 28, 29, 31, 35, 36, 39], "graph_fus": 23, "graph_mmd": [20, 21, 28], "graph_view": [5, 6, 10, 11, 13], "graphbyt": [20, 21, 28], "graphptr": 6, "graphview": [7, 9, 10, 11, 12, 13, 18, 20, 23, 25, 28], "graphviewab": 40, "greedi": 27, "gridsampl": 20, "gridsample_op": 9, "ground": 29, "group": [0, 5, 43], "groupement": 6, "grow": [10, 18], "gru": 40, "gt": [19, 22, 25, 26], "guarante": [4, 6, 19], "guid": [0, 17, 34], "gv": 6, "gz": [19, 21, 25, 26], "gzip": [19, 21, 26], "gzipfil": [19, 26], "h": [5, 22], "ha": [4, 6, 7, 9, 10, 18, 19, 20, 22, 23, 27, 28, 33, 34, 40, 43], "half": 5, "half_float": 5, "halid": 18, "hand": 27, "handl": [5, 6, 9, 13, 18, 20, 31, 41], "happen": [27, 43], "hardswitch": 40, "hardwar": [0, 10, 15, 19, 29, 30, 33, 35, 40], "has_impl": 4, "has_native_coverag": 20, "hasimpl": 4, "hasn": 23, "have": [0, 4, 6, 9, 10, 11, 12, 13, 16, 19, 20, 23, 25, 26, 27, 31, 33, 34, 35, 40, 43], "hbox": 22, "he": [18, 25], "he_fil": 25, "head": [20, 21, 26], "header": [5, 34], "heaviside_op": 9, "height": [5, 22], "held": 6, "help": [6, 12, 34], "helper": [4, 9, 14, 25], "henc": [4, 27, 31], "here": [6, 7, 18, 19, 23, 24, 27, 28, 35, 36, 40], "hereaft": 19, "hesit": 10, "heurist": [7, 15, 19, 23, 33, 43], "hi": 34, "hidden": 9, "hidden_channel": [9, 27], "hide": 40, "hierarch": [18, 23, 27], "hierarchi": 27, "high": [0, 18, 34], "high_resolution_clock": 11, "highest": [4, 16], "highli": 18, "hl": [18, 29], "hold": [5, 27], "hold_canva": 22, "home": 27, "horizont": 19, "horizontl": 28, "host": 12, "hot": 25, "how": [5, 6, 7, 10, 20, 26, 27, 28, 33, 34, 36, 40], "howev": [4, 6, 19, 20, 27, 41], "hpp": [5, 12, 19], "html": 27, "http": [0, 10, 20, 21, 22, 25, 26, 27, 28], "hub": 0, "huggingfac": 22, "hw": 4, "hybrid": 27, "hyperbol": 40, "i": [3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 19, 20, 21, 22, 23, 25, 27, 28, 29, 31, 33, 34, 35, 36, 39, 40, 41, 43], "id": [6, 12], "ident": [6, 10, 20, 27, 43], "identif": 18, "identifi": [9, 23], "identity_op": 9, "idna": [22, 25], "idx": [4, 6, 9, 25], "idx1": 21, "idx3": 21, "ie": 5, "ignor": [11, 27], "ignore_produc": 11, "ignoreproduc": 11, "ilayernorm_op": 9, "im2col": 10, "imag": [12, 19, 20, 21, 22, 28, 31], "imagin": 43, "img": [20, 21, 28], "img_nam": 22, "impl": [4, 9], "implement": [0, 1, 4, 5, 7, 9, 11, 18, 19, 23, 24, 27, 28, 31, 35, 43], "implemt": [29, 33], "impli": [4, 18], "implicit": [10, 27], "imploffset": 4, "implspec": [3, 5], "import": [1, 6, 14, 18, 21, 22, 23, 24, 25, 27, 28, 40, 43], "import_gener": 13, "import_swish": 20, "impos": 34, "imposs": 6, "imshow": [19, 26], "in_batch": 5, "in_cdtyp": 5, "in_chan": 5, "in_channel": [9, 25, 27], "in_dim": 5, "in_dtyp": 5, "in_height": 5, "in_id": [5, 6], "in_nam": 5, "in_nod": 5, "in_siz": 5, "in_tensor": 20, "in_view": 6, "in_width": 5, "inc_produc": 11, "inchannel": 9, "includ": [0, 5, 6, 7, 9, 11, 12, 19, 22, 23, 26, 29, 34, 35], "include_learnable_paramet": 6, "include_list": 5, "includelearnableparam": 6, "incom": 40, "incomplet": 35, "incproduc": 11, "increas": 9, "increment": 4, "incrementindexbatch": 4, "inde": [20, 29, 33, 34], "independ": 0, "independantli": 16, "indermedi": 4, "index": [2, 4, 6, 9, 11, 13, 25, 31], "indic": [5, 6, 9, 11, 13, 34, 40], "induc": 6, "infer": [6, 9, 18, 20, 21, 24, 28, 31, 42], "inferior": 4, "info": [12, 19, 27], "inform": [5, 6, 9, 13, 18, 24, 34, 40, 43], "inherit": [4, 20, 31], "inheritedattribut": 9, "inid": 6, "init_grad": 25, "initi": [4, 5, 6, 9, 10, 12, 25, 26, 27, 29, 39, 41], "initial_graph": 28, "ink": [20, 21, 28], "inlin": [2, 3, 4, 6, 7, 9, 11, 22], "inner": [6, 10], "innov": 43, "input": [4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 20, 23, 25, 26, 27, 28, 29, 31, 33, 34, 40, 42, 43], "input1": 9, "input2": 9, "input_arrai": 26, "input_categori": [6, 9], "input_data": 6, "input_digit": 19, "input_dim": 6, "input_idx": 27, "input_index": 9, "input_nam": 6, "input_nod": [13, 20], "input_op": 20, "input_tensor": [6, 9, 19, 26, 28], "inputcategori": [6, 9, 27], "inputconv": 6, "inputdata": 6, "inputdim": 6, "inputidx": [9, 18], "inputnam": 6, "inputnod": 6, "inputs_dim": 13, "inputs_nam": 6, "inputs_s": 27, "inputscategori": 9, "inputsnam": 6, "inputss": 9, "inputtyp": 6, "inquir": 6, "insequ": 7, "insert": [6, 10, 26], "insert_par": 6, "insertpar": 6, "insid": [6, 12, 16, 19, 26, 43], "insight": 0, "inspir": 43, "instal": [0, 15, 19, 22, 25, 27], "instanc": [4, 5, 6, 7, 9, 10, 27, 31, 43], "instanci": [2, 29, 31], "instanti": 18, "instead": [6, 9, 20, 26], "instrinct": 6, "instruct": [6, 18], "int": [2, 3, 4, 5, 6, 9, 10, 11, 12, 13, 20, 31, 33, 40], "int16": 5, "int16_t": 5, "int32": 5, "int32_t": [5, 9], "int64": 5, "int64_t": [5, 9], "int8": 5, "int8_t": [5, 9], "integ": [4, 6, 9, 26, 43], "integr": [0, 9, 29, 43], "intend": [0, 5, 7, 18, 23, 27, 34, 35], "intent": 6, "interact": 20, "interest": [0, 18, 27, 28], "interfac": [5, 18, 19, 20, 29, 34], "interleav": 27, "intermedi": [4, 7, 23], "intern": [4, 9, 19, 33], "interoper": [0, 15, 19], "interpol": 4, "interpret": [9, 34], "intersect": 43, "intput": 43, "intrins": 6, "introduc": [7, 11, 18, 23, 25, 27, 29, 33, 40, 43], "invalid": [4, 27], "invers": 18, "inview": 6, "invok": 5, "involv": [35, 36, 43], "io": [3, 19], "ioindex_t": [6, 7, 9, 18], "iospec": 3, "iou": 30, "ipycanva": 22, "ipython": [20, 21, 22, 28], "ipywidget": 22, "ir": 15, "irreversibli": 4, "is_arithmet": 4, "is_atom": 9, "is_back_edg": 9, "is_optional_input": 9, "isatom": 9, "isbackedg": 9, "isconditionalnoderequir": 11, "iscontigu": 4, "isfil": [20, 21, 22, 26], "isinbound": 4, "isinputnod": 6, "isol": 27, "isomorph": [18, 43], "isoptionalinput": 9, "isoutputnod": 6, "isoutputunsign": 9, "isprior": 11, "issu": [0, 24], "item": [2, 4, 6, 31], "iter": [4, 5, 12, 27], "its": [4, 6, 7, 9, 11, 16, 18, 19, 23, 24, 25, 27, 29, 31, 33, 34, 40, 41], "itself": [4, 6, 18, 19, 29, 33], "jedi": 22, "jinja": [5, 18], "join": [19, 21, 23, 27], "jupyterlab_widget": 22, "just": [6, 9, 18, 19, 20, 23, 25, 26, 27, 29, 33], "k": [9, 43], "kb": [22, 25], "keep": [6, 7, 23, 28, 40, 41], "keep_dim": 9, "keepdim": 9, "kei": [4, 5, 11, 13, 20, 31, 43], "kept": [6, 7, 23], "kera": [0, 29], "kernel": [5, 6, 9, 10, 18, 19, 22, 27, 29, 33, 35, 40, 43], "kernel_dim": [9, 23], "kernel_dst_path": 5, "kernel_src_path": 5, "kerneldim": 9, "kernels_path": 5, "kernels_to_copi": 5, "keyword": 40, "kind": [9, 18, 29, 35, 40], "know": [6, 18, 27, 33, 34, 40], "known": [27, 40], "kpi": 35, "kriz": 25, "kwarg": [3, 6, 9, 10, 11], "l": 19, "label": [21, 25, 26, 29, 31], "lack": 12, "lambda": [6, 7, 18, 20, 27, 43], "languag": [34, 43], "larg": 26, "larger": 4, "last": [4, 6, 19, 27], "late": [11, 18, 27], "late_": 11, "latenc": 0, "later": [11, 19, 20, 27], "laterthan": 11, "latest": 11, "latter": [29, 34], "lattic": 6, "launch": 34, "layer": [0, 5, 9, 10, 11, 19, 22, 26, 28, 30], "layout": [5, 11, 22], "lazi": 4, "lbl": 21, "lbl_batch": 21, "lead": [6, 26, 27], "leaki": 40, "leakyrelu": [20, 28, 40], "leakyrelu0": 28, "leakyrelu_op": 9, "leanr": 25, "learn": [0, 19, 27, 29, 35, 40], "learnabl": 6, "learning_r": 25, "least": [6, 23, 28, 39, 40], "leav": [9, 22], "led": 23, "left": [6, 27], "len": [2, 21, 23, 25, 26], "lenet_export_fp32": 22, "lenet_mnist": 22, "length": [5, 6, 9], "less": 4, "let": [19, 20, 23, 26, 27, 28, 29], "level": [0, 6, 10, 11, 13, 18, 23, 27, 34], "lexem": 43, "lf": [19, 20, 21, 26], "lh": 6, "lib": [12, 16, 19, 22, 25, 27], "librari": [5, 12, 16, 19, 20, 21, 24, 29, 31, 33, 35, 40], "like": [4, 6, 7, 10, 23, 27, 29, 34, 35], "likewis": 4, "limit": 29, "line": [6, 18, 19, 25, 27], "linear": 40, "liner": 23, "link": [6, 28, 33, 34, 40], "linux": 15, "linux_x86_64": 25, "list": [2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 21, 23, 25, 27, 34, 40], "list_act": 5, "list_config": 5, "live": 28, "llvm": 18, "ln_op": 9, "load": [4, 9, 12, 13, 18, 19, 20, 25, 26, 27, 29, 31, 34, 35, 36], "load_data_in_memori": [2, 21], "load_external_data": 19, "load_model": 19, "load_onnx": [13, 19, 20, 21, 22, 26, 27], "loaddatainmemori": 2, "loadig": 12, "local": [27, 40], "locat": [5, 6], "log": [6, 19], "log_nb_ops_by_typ": 19, "log_output": 6, "log_scal": 19, "logic": [6, 11, 18, 27], "logoutput": 6, "long": [9, 23, 25, 27, 29, 33, 40], "longest": [7, 23], "longuestbranchfirst": 11, "look": [0, 10, 19, 25], "lookforchild": 7, "loss": 25, "lost": [4, 23], "lot": 27, "low": 0, "lower": [4, 6, 18], "lowercas": [13, 20], "lowest": [4, 6], "lparen": 43, "lrn_op": 9, "lstm": [18, 20, 27, 40], "lstm_graph": 27, "lstm_model": 27, "lstm_schedul": 27, "lt": [22, 25], "m": [4, 9, 12], "mac": 42, "machin": 12, "macro": 20, "madd": 26, "made": [6, 18, 34], "magicnumb": 2, "mai": [0, 4, 6, 7, 9, 11, 17, 18, 22, 23, 27, 31, 34, 41, 43], "main": [0, 5, 6, 22, 40], "maintain": 29, "major": 18, "make": [4, 6, 9, 14, 16, 18, 19, 20, 22, 23, 27], "make_shar": 6, "makecontigu": 4, "makedir": 21, "makefil": [12, 19, 22], "manag": [5, 9, 11, 34, 40], "mandatori": [6, 7, 27], "mani": [19, 27, 34], "manipul": [9, 10, 18, 19, 24, 26, 35, 43], "manipulatedbi": 43, "manner": [25, 31], "manual": [6, 19, 34], "manufactur": 34, "manylinux2014_x86_64": 25, "manylinux_2_17_x86_64": 25, "map": [2, 4, 5, 6, 7, 9, 10, 11, 13, 15, 31, 35], "mark_non_un": 6, "marknonun": 6, "mat": 2, "match": [4, 5, 6, 8, 9, 10, 14, 18, 19, 24, 25, 27, 29], "matchfrom": 7, "matchingresult": 7, "math": 20, "mathemat": [9, 18, 41, 43], "matmul": [19, 20, 29, 40], "matmul_op": 9, "matmul_to_fc": [10, 19], "matmulop": 9, "matmultil": 10, "matmultofc": 10, "matplotlib": [19, 20, 21, 22, 26, 27, 28], "matrix": [2, 9, 10, 30, 31], "mattr": 6, "max": [4, 6, 9, 27, 40], "max_header_s": 19, "maxdim": 10, "maximis": 43, "maximum": [9, 10], "maxpool": [7, 9, 18, 20], "maxpool1d": 40, "maxpool2d": 40, "maxpool3d": 40, "maxpooling_op": 9, "mb": [22, 25], "mbackward": 6, "mchildren": 6, "mcount": 11, "mcu": 0, "md": 6, "mdatatransform": 31, "mean": [4, 6, 7, 9, 11, 13, 20, 23, 27, 43], "meant": [6, 9], "measur": [19, 35], "mecan": 31, "mechan": [9, 19, 20, 23, 41], "meet": [29, 43], "mem": 34, "mem_info": [5, 19, 22], "mem_info_cont_offset": 5, "mem_info_cont_s": 5, "mem_info_length": 5, "mem_info_offset": 5, "mem_info_s": 5, "mem_info_strid": 5, "mem_info_wrap_offset": 5, "mem_info_wrap_s": 5, "member": [2, 3, 7, 11], "memori": [0, 4, 5, 9, 11, 18, 19, 26, 28, 29, 34, 36, 40, 43], "memorize_op": [6, 9], "memory_manag": [5, 19, 22], "memory_manager_arg": [5, 19, 22], "memorymanag": 11, "mention": [33, 40], "mere": 6, "merg": [10, 40], "mermaid": [6, 11, 19, 20, 21], "messag": 6, "meta": [5, 18, 23, 24], "meta_oper": [9, 20], "metadata": [22, 25, 27], "metaop": 20, "metaoper": [5, 9, 20], "metaoperator_op": 9, "method": [4, 5, 6, 9, 13, 15, 19, 20, 23, 27, 29, 41], "metric": [21, 25, 42], "mforward": 6, "micro": [9, 10, 20], "micrograph": 20, "middl": [7, 23], "midinchildren": 6, "midoutpar": 6, "might": [18, 43], "min": 4, "min_repeat": 11, "mind": 23, "minim": [18, 23], "minimum": 9, "minputnam": 6, "minputnod": 6, "minrepeat": 11, "miss": [6, 9, 13, 27], "mix": [6, 9], "mlp": 21, "mlp_mnist": [19, 21], "mm2": 11, "mma": 10, "mmap_mod": 19, "mmd": [19, 20, 21, 22, 23, 27, 28], "mmean": 11, "mnist": [4, 19, 26, 31], "mnist_dir": 21, "mnist_label": 26, "mnist_model": 19, "mnist_sampl": [19, 26], "mnist_test": 21, "mobilenetv2": 27, "mobilenetv20_features_conv0_fwd": 27, "mobilenetv20_output_flatten0_reshape0": 27, "mod_op": 9, "modal": [2, 4, 31], "mode": [5, 9, 11, 12, 16, 19, 27, 34], "model": [0, 5, 7, 9, 11, 13, 15, 21, 23, 28, 29, 31, 35, 40, 42], "model_after_til": 28, "model_filepath": 19, "model_forward": 5, "model_stat": 19, "modelproto": 19, "modesl": 40, "modif": [19, 40], "modifi": [0, 5, 7, 10, 20, 23, 29, 34, 40], "modul": [0, 5, 16, 19, 20, 25, 26, 29, 31, 36], "modular": [0, 18, 29, 33], "modulenotfounderror": 19, "moment": [19, 40], "momentum": 9, "moper": 6, "more": [0, 6, 10, 18, 23, 24, 26, 27, 29, 33, 34, 40], "moreov": 31, "most": [0, 19, 27, 28], "moutputnod": 6, "move": [4, 23, 40], "move_op": 9, "movedsrc": 4, "movement": [9, 10], "mparent": 6, "mschedul": 31, "mse": [19, 25], "mstimuli": 31, "mtime": 19, "much": [27, 33], "mul": [6, 20, 40], "mul_op": [9, 20], "mulop": 9, "multi": [11, 18, 31], "multimod": 31, "multiparadigm": 0, "multipl": [4, 6, 7, 9, 10, 11, 19, 20, 23, 27, 41, 43], "multipli": 42, "must": [4, 5, 6, 7, 9, 10, 11, 13, 19, 23, 27, 30, 34, 35, 41, 43], "mutabl": 7, "mview": 6, "my_numb": 22, "my_op_convert": 13, "my_op_onvert": 13, "mycustomipoper": [7, 18], "mycustompipelinedconvimpl": 18, "myexport": [12, 19], "myfileobj": 19, "mymodel": 19, "myop": 13, "mysupportedmodel": [19, 21], "n": [4, 6, 9, 11, 12, 19, 20, 23, 26, 43], "n2d2": 41, "naiv": 26, "name": [4, 5, 6, 7, 9, 10, 11, 12, 13, 19, 20, 23, 27, 28, 39], "name1_inid": 6, "name2_outid": 6, "name_typ": 6, "name_x": 6, "nameerror": 19, "namespac": 5, "nan": 22, "nativ": [18, 20], "native_coverage_report": 20, "natur": 7, "nb": [20, 25], "nb_bit": 26, "nb_chan": 20, "nb_channel": 9, "nb_cl": 25, "nb_data": 9, "nb_featur": 9, "nb_in": 5, "nb_input": 9, "nb_iter": 12, "nb_out": [5, 9], "nb_output": 9, "nb_param": 9, "nb_sampl": [19, 26], "nbchannel": 9, "nbdata": 9, "nbdim": [4, 9], "nbfeatur": 9, "nbin": 9, "nbinput": [6, 9], "nbout": 9, "nboutput": [6, 9], "nbparam": 9, "nbvalidinput": 6, "nbvalidoutput": 6, "nchw": [4, 6, 31, 33, 40], "nd": 40, "necessari": [4, 6, 12, 20, 34, 39], "necessarili": 27, "need": [4, 5, 6, 10, 18, 20, 22, 25, 27, 29, 33, 34, 40, 43], "neg": 9, "negative_slop": 9, "negativeslop": 9, "neighbour": 40, "neither": 40, "nenadmarku": 10, "neq": 43, "nest": 4, "network": [0, 6, 9, 13, 18, 24, 27, 28, 29, 31, 33, 34, 35, 40], "neural": [0, 9, 18, 19, 24, 26, 28, 31, 33, 34, 35, 40], "neuromorph": 0, "new": [4, 5, 6, 9, 13, 18, 23, 27, 28, 34, 40, 43], "new_graph": 6, "new_nod": 6, "new_parent_input_tensor_idx": 6, "new_parent_nod": 6, "new_parent_output_tensor_idx": 6, "newg": 6, "newgrad": 4, "newli": 9, "newnam": 6, "newnod": 6, "newnodeoutid": 6, "newparentinputtensoridx": 6, "newparentnod": 6, "newparentoutputtensoridx": 6, "next": [4, 6, 18, 20, 27, 33, 40, 43], "nhwc": [6, 33, 40], "no_bia": [5, 9, 23, 27], "no_quant": 19, "nobia": 9, "node": [7, 9, 10, 11, 13, 18, 19, 22, 25, 26, 29, 33, 39], "node_": 11, "node_convert": 20, "node_export": 13, "node_import": [13, 20], "node_inputs_nam": 13, "node_nam": [5, 6, 20], "node_or_block": 7, "node_outputs_nam": 13, "node_to_replac": 28, "nodeexectim": 11, "nodenam": 6, "nodeproto": 13, "nodeptr": [6, 10, 11], "noexcept": [2, 3, 4, 6, 7, 9, 11], "non": [6, 7, 9, 23, 27, 31, 34], "none": [2, 3, 4, 5, 6, 7, 9, 10, 11, 13, 18, 19, 20, 21, 22, 26], "none_elt": 27, "noop_with_empty_ax": 9, "noqa": 19, "nor": 40, "normal": [10, 22, 25, 26, 40], "notconnect": 11, "note": [4, 7, 19, 20, 22, 23, 25, 26, 27, 29, 33], "notebook": [26, 28], "noth": 4, "notic": [23, 26, 27], "notion": [18, 29, 33, 43], "now": [18, 19, 25, 26, 27, 28], "np": [6, 19, 20, 21, 25, 26, 28], "npu": 0, "npy": [19, 26], "nullptr": [6, 9, 11], "number": [2, 4, 5, 6, 9, 10, 11, 12, 19, 27, 28, 31, 34, 35, 40, 42], "number_np": 22, "numer": 9, "numeric_limit": 4, "numpi": [9, 19, 20, 21, 22, 25, 26, 28], "numpy_tensor": 20, "nvidia": [29, 33], "o": [3, 19, 20, 21, 22, 23, 26, 27], "o2": 22, "ob222806": 27, "object": [1, 4, 6, 19, 27, 31, 34, 40], "observ": 26, "obtain": [6, 11, 35], "obvious": 9, "occur": 4, "off": [16, 19, 26], "offer": [0, 19, 29, 34, 35], "offset": [4, 5, 41], "often": [0, 6, 20, 26], "oh": 27, "old": [5, 6, 23], "old_graph": 6, "old_nod": 6, "oldg": 6, "oldnod": 6, "on_click": 22, "on_erase_button_click": 22, "on_generate_button_click": 22, "on_mouse_down": 22, "on_mouse_mov": 22, "on_mouse_up": 22, "onc": [6, 19, 20, 25, 40, 43], "one": [2, 4, 5, 6, 7, 9, 10, 16, 17, 18, 19, 20, 22, 23, 25, 27, 28, 29, 31, 33, 34, 40, 43], "one_hot_encod": 25, "one_prod": 20, "ones": [6, 43], "onli": [4, 6, 7, 9, 11, 18, 19, 20, 23, 26, 34, 35, 40, 41, 43], "onnx": [0, 6, 9, 10, 12, 14, 15, 21, 22, 24, 26, 27, 29, 34, 36, 40, 41, 43], "onnx__if": 27, "onnx_import": 19, "onnx_nod": [13, 20], "onnx_node_converter_": [13, 20], "onnx_tutori": 20, "op": [5, 6, 9, 20, 27], "op1": 43, "op_typ": 5, "opaqu": 43, "oparg": 6, "open": [0, 19, 20, 21, 22, 26, 28], "opencv": [14, 31, 33, 40], "oper": [0, 4, 5, 6, 7, 8, 11, 13, 14, 18, 19, 23, 24, 26, 27, 28, 29, 30, 31, 33, 35, 39, 41, 42], "operatora": 40, "operatorb": 40, "operatorimpl": [5, 9, 20, 27], "operatortensor": 6, "operatortyp": 9, "opitim": 29, "oppos": [6, 40], "opset": [13, 20, 27], "opt": 25, "optim": [0, 18, 25, 26, 29, 34, 35, 43], "optimis": 16, "optimize_sign": 19, "option": [4, 5, 6, 7, 9, 10, 11, 13, 14, 23, 27], "optionaldata": 6, "optionalparam": 27, "optionn": [10, 16], "optionnalparam": 9, "optyp": 23, "order": [4, 5, 6, 7, 9, 10, 11, 13, 18, 19, 20, 23, 26, 27, 28, 29, 31, 33, 34, 35, 39, 40, 43], "org": [0, 20, 21, 25, 26, 27], "origin": [4, 6, 9, 40], "ossci": 21, "other": [0, 4, 5, 6, 7, 9, 10, 16, 18, 23, 27, 29, 30, 34, 36, 40, 43], "other_graph": 6, "other_in_id": 6, "other_nd": 6, "other_nod": 6, "other_view": 6, "othergraph": 6, "otherinid": 6, "othernod": 6, "othertensor": 4, "otherview": 6, "otherwis": [4, 6, 9], "oup": 23, "ouput": 28, "our": [6, 17, 19, 20, 24, 25, 26, 27], "out": [6, 20, 23, 34], "out_batch": 5, "out_cdtyp": 5, "out_chan": 5, "out_channel": [9, 25], "out_dim": 5, "out_dtyp": 5, "out_height": 5, "out_id": [5, 6], "out_nam": 5, "out_nod": 5, "out_siz": 5, "out_width": 5, "outchannel": 9, "outid": 6, "outnod": [19, 20], "output": [4, 5, 6, 7, 9, 10, 12, 13, 18, 19, 21, 23, 25, 26, 27, 28, 33, 34, 40, 41, 42, 43], "output_aidg": [19, 20, 21], "output_arrai": 26, "output_connector": 6, "output_digit": 19, "output_dims_ord": 9, "output_idx": 27, "output_model": 19, "output_nam": 6, "output_nod": 26, "output_tensor": 26, "outputdim": 9, "outputdimsord": 9, "outputidx": [9, 18], "outputnam": 6, "outputnod": 6, "outputs_dim": 13, "outputs_nam": 6, "outputsnam": 6, "outsid": 6, "over": [0, 5, 6, 9, 20, 26, 27, 40], "overal": 4, "overhead": 18, "overlap": [6, 7, 23, 31], "overload": [3, 6, 9, 10, 11, 18, 27], "overrid": [2, 4, 5, 6, 9], "overwrit": 4, "overwritten": 4, "own": [4, 7, 9, 18, 31, 34], "own_fid": 19, "p": [10, 11, 16, 18], "packag": [12, 19, 21, 22, 25, 27, 34], "pad": [7, 18, 20, 23, 41], "pad2d": 23, "pad_op": 9, "padbordertyp": 9, "paddedavgpooling2d": 9, "paddedavgpoolingop": 9, "paddedconv1d": 9, "paddedconv2d": [9, 23, 27], "paddedconvdepthwise1d": 9, "paddedconvdepthwise2d": 9, "paddedconvdepthwiseop": 9, "paddedconvop": 9, "paddedconvrelu": 23, "paddedconvrelu_prod": 23, "paddedmaxpooling2d": 9, "paddedmaxpoolingop": 9, "padding_dim": [9, 23, 27], "pair": [3, 6, 9, 11], "paltform": 43, "paradigm": 18, "parallel": [6, 18, 27, 40], "parallelschedul": 11, "param": [6, 7, 9, 10], "paramet": [2, 4, 5, 7, 9, 10, 11, 12, 13, 16, 19, 22, 25, 26, 27, 28, 29, 31, 33, 35, 42], "parent": [5, 6, 7, 23, 26, 27, 40], "parent_list": 6, "parent_nam": 5, "parent_nod": 6, "parent_node_output": 6, "parent_vec": 6, "parenthes": 23, "parentisbackedg": 6, "parentless": 6, "parentnodetyp": 23, "pars": [7, 23, 40], "parser_funct": 13, "parso": 22, "part": [9, 10, 19, 20, 23, 40, 43], "parti": 34, "partial": 35, "particular": [4, 26, 31], "particularli": [7, 18, 23, 40], "partion": 31, "pass": [4, 5, 6, 7, 9, 11, 19, 23, 25, 27, 35, 40, 43], "past": 26, "path": [5, 6, 11, 12, 13, 16, 18, 19, 20, 21, 22, 23, 26, 27], "path_to_aidg": 16, "path_to_install_fold": 16, "path_to_mmd": [20, 21, 28], "path_to_sav": 13, "pathlik": 19, "pattern": [6, 7, 18, 23], "pe": 34, "peak": 5, "peak_mem": 5, "pep405": 16, "per": [4, 6, 9, 12, 26, 27, 42], "perceptron": 25, "perform": [4, 5, 6, 9, 10, 18, 19, 23, 24, 26, 27, 29, 30, 33, 35, 36, 40, 43], "permut": 9, "perspect": 19, "pexpect": 22, "phase": [6, 16], "philosophi": 27, "pi": 9, "pickl": 19, "piec": [19, 20, 26], "pillow": [22, 25], "pip": [16, 22, 25, 27], "pipelin": [18, 43], "pixel": 30, "place": [23, 41], "plan": [18, 34], "plane": 11, "plateform": 29, "platform": [0, 19, 29, 30, 33, 34, 43], "pleas": [0, 6, 17, 18, 22, 24, 35], "plt": [19, 20, 21, 26, 28], "plugin": [14, 34, 39, 43], "png": [19, 22], "po": 6, "point": [5, 6, 18, 19, 20, 23, 25, 26, 27], "pointer": [4, 6, 9, 11, 36], "polici": 11, "pool": [11, 40], "pop": [20, 26, 27], "pop_op": 9, "popular": [9, 19], "posit": [4, 6, 9, 22, 41], "possess": 6, "possib": 34, "possibl": [6, 7, 9, 10, 11, 13, 18, 19, 23, 27, 34, 36, 40, 43], "possiibl": 25, "post": [6, 24], "povid": 19, "pow": [20, 40], "pow_op": [9, 20], "power": [0, 9, 15], "powop": 9, "practic": [26, 43], "pre": [10, 19, 27, 31], "preced": [10, 23, 27], "preceed": 28, "precis": [4, 11, 18, 26, 27, 29, 30, 31, 33, 40], "pred": 25, "predic": 4, "predict": [19, 20, 21], "predicted_class": 21, "prefer": 6, "prefix": [5, 6], "prepar": [5, 25, 26, 35], "preprocess": 31, "present": [4, 6], "pretrain": 26, "previou": [4, 22, 28, 43], "previous": [4, 6, 27, 33, 40, 42, 43], "primari": 18, "principl": [29, 34], "print": [4, 12, 19, 20, 21, 22, 23, 25, 26, 27], "prior": [11, 27], "priorconsum": 11, "prioriti": 18, "priorproducersconsum": 11, "problem": [9, 26, 43], "problemat": 43, "process": [9, 10, 11, 12, 18, 19, 26, 27, 29, 31, 33, 34, 43], "prod_conso": 5, "prod_op": 25, "prodconso": [5, 27], "produc": [6, 7, 10, 11, 15, 19, 20, 23, 25, 26, 29, 33, 34, 39, 41, 43], "producer_op": 9, "product": 27, "profil": 12, "program": [18, 29, 33, 34], "project": 27, "projet_root": 16, "prompt_toolkit": 22, "propag": [6, 20, 25, 26, 27, 41], "proper": 26, "properti": [4, 6, 29, 40, 41], "propos": [6, 19, 40, 42], "protect": 43, "protobuff": [36, 39], "protocol": 4, "prototyp": [9, 34], "provid": [4, 5, 6, 9, 11, 12, 13, 18, 19, 21, 23, 24, 27, 29, 30, 31, 33, 34, 35, 40, 41, 43], "prun": 34, "prune": [26, 35], "pseudo": 6, "ptq": [15, 19], "ptq_tutori": [19, 26], "ptyprocess": 22, "public": [0, 2, 3, 4, 6, 7, 9, 11], "pure": [9, 22], "purpos": [20, 26, 31, 43], "push": 27, "put": [6, 19, 27, 42, 43], "px": 31, "py": [5, 6, 9, 19, 27], "py2": 22, "py3": 22, "py_env_aidg": 16, "pybind": [12, 16], "pybind11": 36, "pygment": 22, "pypi": 25, "pyplot": [19, 20, 21, 26, 28], "python": [2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 19, 20, 21, 24, 25, 29, 34, 39, 40], "python3": [16, 19, 22, 25, 27], "python_bind": 12, "pytorch": [0, 6, 15, 19, 25, 27, 29, 40], "qat": 15, "qom": 43, "quant": 26, "quantifi": [7, 18], "quantiti": [11, 18, 27], "quantiz": [0, 9, 18, 24, 34, 35], "quantize_network": [19, 26], "quantized_model": 19, "quantizedmodel": 19, "quantizednbbit": 9, "queri": [7, 10, 18, 23], "queue": [6, 11], "quick": [0, 15], "quickli": [6, 34], "qzm": 43, "r": [9, 19, 20, 21, 26, 28], "rais": [4, 5], "rand": 28, "randn": 20, "random": [4, 20, 28], "randomli": [31, 40], "rang": [0, 9, 19, 26], "rank": [4, 6, 9, 18], "rapid": 9, "rather": 27, "raw": [9, 20, 21, 26, 31, 43], "rb": [19, 21], "read": [17, 19, 20, 21, 28, 31], "readabl": 19, "readbatch": 4, "readi": [4, 6, 9, 18, 19, 25, 26], "readm": 34, "readrandombatch": 4, "realiz": 34, "realli": [25, 34], "realloc": 4, "reason": [4, 18, 43], "recal": 30, "receiv": [40, 43], "recent": 19, "recept": [9, 41], "recip": [7, 8, 9, 14, 19, 23, 27, 29, 43], "recipi": [19, 41], "recogn": 43, "recognit": [19, 43], "reconfigur": 26, "reconnect": 6, "record": 27, "recquir": [19, 36, 39], "rectifi": 40, "recur": 9, "recurr": [9, 40], "recurs": [6, 10, 18, 23], "reduc": [0, 9, 20, 26, 29], "reducemean": 20, "reducemean_op": 9, "reducesum": 20, "reducesum_op": 9, "reduct": [9, 41], "ref": [4, 6, 10], "ref_typ": [20, 21, 26], "refcast": 4, "refcastfrom": 4, "refcontigu": 4, "refer": [0, 4, 6, 20, 23, 24, 34, 35, 40, 43], "referenc": 43, "reffrom": 4, "reflect": [6, 43], "reformat_kernels_to_copi": 5, "regard": [4, 23], "regardless": 6, "regex": [7, 18, 23], "regist": [5, 6, 19, 29, 33, 40], "register_convert": 13, "register_export": 13, "register_gener": 5, "register_import": 13, "register_metaop": 5, "registr": 4, "registrar": 31, "registri": 5, "regular": [23, 24, 43], "rel": [5, 10, 11, 23, 41, 42], "relat": [13, 34], "relationship": [7, 11, 18, 23], "releas": [0, 16, 18], "relu": [7, 18, 20, 23, 25, 26, 27, 28, 40], "relu0": 28, "relu1": [23, 27], "relu2": [23, 27], "relu3": [23, 27], "relu5": 23, "relu_op": 9, "reluop": 9, "remain": [4, 6, 23, 27, 33, 40], "rememb": [23, 27], "remov": [6, 9, 19, 22, 29], "remove_flatten": [10, 19, 21, 22, 26], "remove_nod": 23, "removechild": 6, "removedropout": 10, "removeflatten": 10, "removeview": 6, "repeat": [4, 11], "repetit": [4, 27], "replac": [6, 7, 9, 10, 11, 15, 19, 26, 27, 28, 29, 40, 41], "replic": 6, "report": 20, "reprens": 31, "repres": [4, 9, 11, 13, 31, 35, 40], "represent": [7, 19], "reproduc": 20, "request": [20, 21, 22, 25, 26], "requir": [0, 3, 4, 5, 6, 7, 9, 11, 19, 20, 22, 23, 25, 26, 27, 28, 34, 35, 36, 40, 41], "requiredproduc": 11, "rerun": 23, "res1": 28, "res2": 28, "rescal": 26, "reserv": 23, "reset": [4, 9, 11, 26], "reset_cp_model": 11, "reset_grad": 25, "reset_schedul": [11, 27, 28], "resetconnect": 6, "resetconsummerproduc": 9, "resetcpmodel": 11, "resetindexbatch": 4, "resetinput": 9, "resetschedul": 11, "reshap": [4, 10, 19, 20, 26, 27, 40], "reshape_op": [9, 27], "reshapeop": 9, "residu": 6, "resiz": 4, "resize_op": 9, "resolut": 6, "resolv": 22, "resourc": [5, 34, 43], "respect": [5, 29, 33], "respons": [20, 21, 22, 26, 27, 34], "rest": 29, "restart": 22, "restrict": 18, "result": [6, 7, 9, 10, 19, 23, 26, 27, 28, 39, 40, 41], "retain": 9, "retreiv": 26, "retriev": [5, 9, 10, 11, 19], "return": [2, 4, 5, 7, 9, 10, 11, 12, 13, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 31, 34, 40, 43], "reus": 41, "reuslt": 25, "revers": [6, 11], "rf": 22, "rgb": 31, "rh": 6, "rid": 26, "right": [4, 6, 18, 27, 28, 40], "rm": [19, 22], "rnn": [9, 40], "robust": [29, 34, 35], "role": 34, "root": [5, 6, 7, 9, 16, 23, 25], "root_nod": [6, 23], "rootnod": 6, "roughcanva": 22, "round": 26, "round_op": 9, "routin": 26, "rparen": 43, "rtol": 19, "rtype": [6, 9, 10], "rule": [7, 9, 29, 43], "run": [6, 11, 12, 20, 21, 22, 25, 27, 28, 34, 35, 36, 42], "run_export": [19, 22], "run_sync": 12, "runabl": 35, "runnabl": [27, 35], "runtim": [6, 13, 27, 34, 40], "s3": 21, "safe": 6, "sake": 43, "same": [0, 4, 6, 7, 9, 11, 16, 18, 20, 23, 27, 28, 41], "sampl": [2, 4, 19, 25, 26], "satisfi": [22, 25, 27], "satur": 0, "save": [5, 6, 11, 12, 13, 19, 20, 21, 23, 27, 28, 29, 40], "save_factorized_static_scheduling_diagram": [11, 27], "save_scheduling_diagram": [11, 19], "save_static_scheduling_diagram": [11, 27], "savefactorizedstaticschedulingdiagram": 11, "saveschedulingdiagram": 11, "savestaticschedulingdiagram": 11, "scalar": 4, "scale": [26, 42], "scaling_op": 9, "scalingfactor": 9, "schedul": [8, 9, 14, 15, 20, 21, 22, 23, 25, 28, 29, 35, 40, 41], "scheduler_export": [5, 19, 22], "schedulingel": 11, "schedulingpolici": 11, "schedulingsequenti": 19, "schedulingsequential_forward": 19, "schema": [13, 36], "scope": [6, 22], "script": [19, 26], "se": 6, "seamless": 15, "search": [7, 9, 15, 23], "second": [4, 6, 7, 11, 23, 28, 34], "secondli": 26, "section": [20, 29, 33, 34, 35, 40, 43], "secur": 34, "see": [0, 3, 11, 18, 19, 20, 23, 26, 27, 33, 34, 35, 40, 43], "seem": 26, "seemless": 36, "seen": [20, 43], "segment": 30, "select": [6, 9, 11, 23, 27, 28, 40], "select_op": 9, "self": [2, 3, 4, 5, 6, 7, 9, 11, 19, 20, 25, 27], "send": [6, 20, 25], "sens": [6, 23], "sep": 43, "separ": [9, 18, 23, 29, 33, 34], "seq": 7, "seq_length": [9, 27], "sequenc": [7, 9, 23, 27, 29, 33], "sequenti": [6, 9, 18, 23, 25, 27, 28, 29, 31, 34, 40], "sequentialschedul": [11, 19, 20, 21, 22, 25, 26, 27, 28], "seri": 31, "serial": [19, 35], "serv": [5, 28], "set": [4, 5, 6, 7, 9, 11, 12, 13, 16, 18, 23, 27, 29, 34, 40, 42, 43], "set_back_edg": 9, "set_backend": [4, 6, 9, 19, 20, 21, 25, 26, 27], "set_data_format": 4, "set_dataformat": [6, 9], "set_datatyp": [4, 6, 9, 19, 20, 21, 25, 26], "set_forward_dim": [20, 27], "set_grad": 4, "set_impl": [9, 20, 27], "set_input": [9, 28], "set_learning_rate_schedul": 25, "set_nam": 6, "set_ordered_input": 6, "set_ordered_output": 6, "set_output": [9, 20], "set_paramet": 25, "set_root_nod": 6, "set_scheduling_polici": 11, "setbackedg": 9, "setbackend": [4, 6, 9, 20], "setbatch": 4, "setdataformat": [4, 6, 9], "setdatatyp": [4, 6, 9], "setgrad": 4, "setimpl": [4, 9], "setinheritedattr": 9, "setinput": 9, "setinputid": 6, "setnam": 6, "setnodesnam": 6, "setorderedinput": 6, "setorderedoutput": 6, "setoutput": 9, "setrootnod": 6, "setschedulingpolici": 11, "setup": [4, 6, 19, 25, 28], "sever": [0, 6, 7, 10, 12, 23, 26, 28, 31, 34, 35, 40, 43], "sgd": 25, "sh": [19, 22], "shallow": [4, 9], "shape": [4, 6, 9, 10, 20, 22, 27], "shape_op": 9, "share": [4, 6, 9, 11], "shared_ptr": [2, 4, 6, 7, 9, 10, 11], "shiftgelu_op": 9, "shiftmax_op": 9, "short": [2, 9, 40], "shortestbranchfirst": 11, "should": [4, 5, 6, 9, 12, 13, 16, 18, 20, 25, 28, 31, 34, 41], "show": [6, 16, 26], "show_produc": 6, "showcas": 20, "showproduc": 6, "shuffl": [4, 21, 25], "shutil": 21, "sibl": 23, "sigmoid": [20, 40], "sigmoid_op": 9, "sigmoidop": 9, "sign": 2, "signatur": 13, "similar": [10, 11, 18, 27, 33, 40, 41], "similarli": 36, "simpl": [0, 7, 9, 15, 19, 20, 23, 27, 35], "simpler": 6, "simpli": [23, 27], "simplifi": [10, 34, 36, 40, 43], "simul": 0, "simultan": 27, "sinc": [7, 9, 20, 23, 34, 40], "singl": [5, 6, 7, 9, 10, 18, 20, 23, 27, 28, 43], "single_shift": 19, "singleoutput": 7, "singlepassgraphmatch": [7, 10, 18, 23], "site": [19, 22, 25, 27], "situat": 6, "size": [0, 4, 5, 6, 9, 10, 12, 27, 31, 34, 40, 41], "size_0": 4, "size_1": 4, "size_2": 4, "size_3": 4, "size_t": [2, 4, 6, 7, 9, 10, 11], "size_typ": [4, 9], "skip": [11, 21], "skipbackward": 11, "slice": [6, 10, 20, 28, 40], "slice_op": 9, "sliceop": 9, "slide": 9, "slope": 9, "small": [9, 26, 28], "smaller": [6, 26, 28], "so": [0, 4, 6, 16, 19, 20, 23, 26, 27, 34, 40], "softmax": [20, 40], "softmax_op": 9, "softmaxop": 9, "softmin": 40, "softplu": 40, "softwar": 34, "solut": 43, "solv": 30, "some": [0, 4, 6, 7, 9, 10, 11, 17, 18, 19, 27, 30, 34, 35, 41], "sometim": [7, 18, 23], "somewher": 27, "soon": 4, "sophist": [7, 18, 23], "sort": 11, "sourc": [0, 4, 5, 10, 16, 19, 22, 29, 34], "sovereignti": 0, "space": [4, 9], "spatial": 9, "spec": 5, "special": [0, 6, 18, 19, 27], "specif": [0, 5, 6, 7, 9, 10, 18, 23, 25, 29, 33, 34, 35, 40, 41, 43], "specifi": [4, 5, 6, 9, 11, 18, 20, 23, 27, 29, 34, 40, 41], "split": [6, 10, 20, 31, 34, 40, 43], "split_op": 9, "splitdatabas": 31, "splite": 28, "splitext": 21, "sqrt": [4, 20], "sqrt_op": 9, "sqrtop": 9, "squar": 9, "squash": 9, "squeez": 20, "squeeze_op": 9, "src": [4, 5, 19], "stabil": 9, "stabl": [6, 27], "stack": 19, "stack_data": 22, "stackop": 9, "stage": 35, "stai": [4, 18], "standalon": [18, 19], "standard": [0, 16, 18, 23, 29], "start": [0, 6, 7, 9, 11, 19, 24, 27, 43], "start_": 11, "startnod": 7, "stat": [19, 22], "state": [15, 20, 27, 35], "state_begin": 27, "stateful": 27, "static": [4, 5, 6, 9, 11, 18, 23, 27, 34, 35], "static_analysi": 19, "static_cast": 11, "static_fil": 5, "staticanalysi": 19, "staticschedulingel": 11, "stats_fold": [19, 22], "stats_op": 19, "statu": [20, 21, 22, 26], "status_cod": [20, 21, 22, 26], "std": [2, 3, 4, 6, 7, 9, 10, 11, 23], "stddev": 11, "step": [6, 9, 10, 11, 16, 18, 20, 24, 26, 27, 29, 34, 36, 43], "still": [9, 10, 11, 27, 35], "stimulu": 12, "stm32": 24, "stop": [27, 43], "storag": [4, 9], "store": [3, 4, 5, 7, 11, 12, 19, 23, 26, 34, 35, 40], "str": [2, 4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 19, 20, 21, 26], "strategi": [4, 33], "strictli": 27, "stride": [4, 5, 9, 40], "stride_dim": [9, 23, 27], "stridedim": 9, "string": [2, 4, 5, 6, 7, 9, 10, 11, 13, 43], "stripe": 28, "stroke_lin": 22, "stroke_styl": 22, "struct": [3, 7, 11], "structur": [4, 5, 6, 19, 29, 33], "stub": 19, "style": [6, 9], "sub": [4, 6, 7, 10, 20, 23, 27, 28, 40, 43], "sub_op": 9, "subclass": [4, 5, 9, 11], "subdirectori": 5, "subgraph": [40, 41, 43], "subop": 9, "subplot": [19, 26], "subsequ": [23, 34], "subset": [7, 18, 23, 26, 43], "substitut": 6, "subtract": [4, 9], "succe": 6, "succeed": [6, 23], "success": [6, 27, 28, 43], "successfulli": [9, 20, 21, 22, 25, 26], "suffix": 23, "suggest": 6, "sum": [6, 20, 21], "summar": [12, 27, 34], "summari": 19, "support": [0, 5, 9, 12, 13, 18, 19, 20, 23, 27, 40, 43], "supported_graph": 20, "supported_oper": [13, 20], "suppos": [35, 40], "sure": 19, "swap": [6, 27], "swich": 20, "swish": 20, "swish0": 20, "swish_micro": 20, "swish_micro_graph": 20, "swish_nod": 20, "swish_op": 20, "swishimpl": 20, "switch": [29, 33], "sy": [19, 23, 27], "symbol": 23, "symlink": 5, "sync_image_data": 22, "synchron": 12, "syntax": [7, 23, 43], "synthax": 40, "system": [0, 18, 27, 33, 34, 35, 40], "t": [4, 6, 7, 9, 19, 20, 23, 25, 26, 40], "t10k": 21, "tabl": 12, "tag": 27, "tag_conditional_nod": [11, 27], "tagconditionalnod": 11, "tagforkbranch": 11, "take": [4, 5, 6, 9, 13, 17, 19, 26, 27, 29, 31, 34, 40, 41, 43], "taken": [6, 43], "tangent": 40, "tanh": [20, 40], "tanh_op": 9, "tanhop": 9, "tar": 25, "target": [0, 4, 5, 9, 18, 19, 26, 29, 30, 33, 34, 35, 40, 43], "target_typ": 19, "targetreq": 4, "targettyp": 9, "task": [19, 26, 30], "team": 0, "technic": 0, "techniqu": [0, 26, 34], "teh": 6, "templat": [4, 5, 9, 12, 18, 34], "temporari": 6, "tensor": [2, 6, 9, 10, 11, 20, 22, 23, 25, 26, 28, 29, 33, 40], "tensordim": 4, "tensorflow": [15, 36, 40], "tensorimpl": 4, "tensoropencv": 2, "tensorrt": [14, 24, 29, 33], "term": [9, 19, 29, 34, 40], "termin": 13, "test": [0, 4, 6, 7, 9, 12, 13, 18, 20, 26, 31, 34], "test_cpp_dock": 12, "test_lib_python_dock": 12, "test_plugin": 12, "test_swish": 20, "textual": [7, 18, 23], "tf2onnx": 36, "th": [6, 23, 26], "than": [4, 6, 27, 29, 33], "thank": [11, 18, 19, 28, 36], "thei": [5, 6, 7, 10, 11, 19, 23, 26, 29, 41], "them": [6, 7, 9, 10, 18, 19, 23, 26, 27, 28, 33, 40, 42, 43], "themselv": [34, 40], "theori": 43, "therefor": [5, 7, 27, 34, 40, 43], "thi": [4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 35, 36, 39, 40, 41, 42, 43], "third": [4, 34], "those": [16, 26, 34, 43], "thread": [11, 18], "threadpool": 11, "three": [27, 31, 40], "through": [6, 9, 11, 23, 31, 35, 36], "throughout": 6, "throw": [6, 7, 23], "thrown": 6, "thu": [10, 11, 18, 20, 26, 27, 29], "tier": 31, "tight_layout": [19, 26], "tile": [15, 24, 35], "tiled_conv": 28, "till": [19, 34], "time": [4, 6, 9, 11, 12, 17, 27, 31, 34, 35, 40, 43], "time_point": 11, "tlm": [11, 18, 27], "to_fil": 22, "to_other_nod": 6, "to_tensor": 6, "tocoord": 4, "todo": [4, 20], "togeth": 34, "toindex": 4, "token": [9, 11, 18, 27, 43], "tolpolog": 34, "tonod": 6, "tool": [18, 19, 20, 24, 43], "toolchain": 19, "toolkit": 34, "toothernod": 6, "tootherview": 6, "top": 21, "top1_accuraci": 21, "topk_op": 9, "topolog": [0, 6, 33, 40, 43], "topologi": [18, 40], "torch": [25, 27, 36], "torchvis": [25, 36], "toronto": 25, "tostr": 4, "tot_acc": 25, "total": [9, 11, 21], "totensor": [6, 25], "toto": 5, "toward": [6, 40], "tpu": 10, "traceback": 19, "track": 6, "train": [0, 2, 4, 9, 19, 21, 24, 30, 31, 35, 40], "training_mod": 9, "trainingmod": 9, "trainset": 25, "traitlet": 22, "transact": [11, 18, 27], "transfert": 40, "transfomr": 10, "transform": [2, 6, 10, 22, 24, 25, 28, 34, 35, 40, 41], "transit": 43, "transmitt": 6, "transpos": [4, 6, 19, 20, 40], "transpose_op": 9, "transposit": [4, 10, 43], "treat": 6, "tree": [19, 43], "trigger": [6, 27], "trivial": [18, 26], "trt": 12, "trt_version": 12, "true": [4, 5, 6, 7, 9, 10, 11, 12, 13, 19, 21, 22, 23, 25, 27, 28, 43], "truth": 29, "try": [6, 22, 27], "tune": 18, "tupl": [3, 4, 6, 9, 13, 31], "tuple_out": 25, "tuto_util": [19, 23, 27], "tutori": [0, 17, 18, 19, 21, 22, 23, 25, 26, 27, 28], "tvm": 18, "two": [4, 6, 9, 11, 16, 18, 23, 27, 31, 34, 40, 41, 42, 43], "type": [2, 3, 4, 5, 6, 7, 9, 10, 11, 13, 16, 18, 19, 20, 25, 26, 27, 29, 33, 40, 43], "type_": 3, "typenam": 4, "typic": [5, 27], "typing_extens": 22, "u": 26, "ubyt": 21, "uint": 31, "uint16": [5, 6], "uint16_t": 5, "uint32": 5, "uint32_t": [2, 5, 9], "uint64": 5, "uint64_t": 5, "uint8": 5, "uint8_t": [2, 5], "unabl": 27, "unalt": 43, "unchang": 9, "uncompress": 26, "unconnect": 6, "undefin": [4, 5, 6, 9, 27], "under": [0, 5, 31], "undergon": 34, "understand": 10, "unfold": 10, "unfold_op": 9, "unic": 6, "unimpl": 43, "uninstal": 25, "union": [2, 5, 19], "uniqu": [5, 6, 18, 23], "unit": [9, 10, 34, 40], "unitari": 34, "unknown": [9, 20, 27, 39, 40], "unless": 5, "unlik": [4, 18], "unnecessari": [27, 43], "unord": 23, "unquantifi": [7, 18, 23], "unsign": [2, 9], "unsqueez": 20, "unsqueeze_op": 9, "unsupport": [9, 18, 20], "until": [6, 10, 11, 27], "unus": 4, "up": [12, 18, 34], "updat": [1, 6, 9, 11, 22, 25, 26, 27, 40, 41], "updateconsummerproduc": 9, "updatenodenam": 6, "upper": 11, "uppernod": 11, "uppernodeinputconnect": 11, "uppernodeinputfound": 11, "url": [20, 21, 25, 28], "urllib": 21, "urllib3": [22, 25], "urlretriev": 21, "us": [0, 4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 31, 33, 34, 35, 36, 39, 40, 43], "usabl": 6, "usag": [0, 5, 6, 12, 21, 43], "use_cuda": 19, "useful": 31, "useless": 22, "user": [0, 6, 17, 18, 19, 27, 29, 34, 40, 42, 43], "userwarn": 27, "usr": [19, 22], "usual": 18, "utf": 28, "util": [12, 14, 19, 23, 26, 27], "v": [6, 16], "val": [4, 43], "val_acc": 21, "val_dataprovid": 21, "val_mnist": 21, "valid": [4, 6, 19, 31, 34], "validi": 4, "validtensor": 11, "valu": [2, 4, 6, 9, 11, 13, 16, 19, 20, 25, 26, 27, 28, 40], "vanish": 9, "variabl": [5, 27, 31], "variant": 9, "variou": [9, 19, 31], "vbox": 22, "ve": 26, "vector": [2, 3, 4, 6, 9, 10, 11], "venv": [19, 22, 25], "verbos": [6, 13, 19, 26, 27, 40], "veri": [10, 26], "verif": 6, "verifi": 6, "version": [6, 12, 13, 19, 27], "versu": 34, "via": [5, 29, 33, 34, 36, 39, 40], "view": [6, 10, 18, 36, 39, 43], "virtual": [2, 4, 5, 6, 9, 11], "virtualenv": 16, "visit": 43, "visual": [11, 19, 20, 21, 26], "visualis": 20, "visualize_mmd": [19, 20, 21, 23, 27, 28], "void": [4, 6, 7, 9, 10, 11], "vt": 4, "vtemplier": 22, "w": 9, "wa": [4, 6, 22, 23, 28], "wai": [5, 6, 18, 19, 20, 25, 43], "wait": 11, "walk": 6, "wall": 22, "want": [4, 6, 10, 19, 20, 23, 26, 27, 43], "warn": [6, 16, 26, 27], "wb": [20, 21, 22, 26], "wcwidth": 22, "we": [4, 6, 7, 10, 19, 20, 22, 23, 25, 26, 27, 28, 41, 42, 43], "weak": 6, "weight": [6, 7, 9, 23, 25, 27, 31, 39], "weightinterleaving_op": 9, "welcom": 4, "well": [4, 5, 6, 7, 11, 15, 19, 20, 23, 27, 34], "were": [4, 6], "wether": [5, 27], "wextra": 22, "what": [18, 23, 25, 27, 29, 41, 43], "whatev": [19, 34], "whatsoev": 18, "when": [1, 4, 6, 7, 9, 10, 11, 12, 19, 23, 27, 34, 36, 40, 41, 43], "where": [4, 5, 6, 9, 10, 11, 12, 13, 26, 27, 40], "whether": [4, 6, 9, 43], "which": [4, 5, 6, 7, 9, 10, 12, 13, 16, 18, 19, 20, 23, 25, 27, 29, 30, 31, 33, 34, 36, 40, 42, 43], "while": [9, 26, 29, 33], "whitespac": 7, "whl": [22, 25], "who": 18, "whole": [34, 40], "whose": 6, "why": [0, 15, 23, 27, 29, 33], "wide": 0, "widgetsnbextens": 22, "width": [5, 22], "wiki": 24, "window": 9, "wise": [4, 9, 30, 40], "within": [5, 6, 9, 36, 40], "without": [4, 6, 7, 11, 18, 19, 27, 29, 34, 35, 36, 40, 42], "won": 40, "work": [6, 7, 9, 10, 11, 27, 33, 34, 36, 40], "workaround": 27, "would": [6, 19, 23, 27], "wrap": [5, 11, 19, 22, 36], "wrap_around_buff": 11, "wraparoundbuff": 11, "wrapper": [5, 36], "write": [7, 18, 20, 21, 22, 23, 25, 26, 34], "wrong": [7, 23, 27], "www": 25, "x": [6, 9, 20, 22, 26, 27, 40], "xavier_uniform_fil": 25, "y": [6, 20, 22, 26, 40], "yet": [4, 6, 9, 19, 23, 27, 40], "you": [4, 6, 7, 9, 12, 16, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27, 28, 29, 33, 34, 43], "your": [0, 7, 12, 16, 18, 23, 24, 27], "z": [6, 43], "z0": 43, "z1": 6, "z2": 6, "z3": 6, "za": 43, "zero": [4, 9, 23, 26, 40, 43], "\u00ecnstall": 16}, "titles": ["Aidge", "Aidge backend CPU", "Aidge backend OpenCV API", "Backend", "Data", "Export", "Graph", "Graph Matching", "Aidge core API", "Operators", "Recipes", "Scheduler", "Aidge Export TensorRT API", "Aidge ONNX API", "API", "Get Started", "Install", "Quick Start", "Why Aidge?", "Aidge demonstration", "Aidge ONNX tutorial", "Database MNIST", "Export a MNIST model to a CPP standalone project", "Graph matching and manipulation with Aidge", "Tutorials", "Training a simple Neural Network", "Post Training Quantization with AIDGE", "Understanding Aidge\u2019s scheduling", "Aidge tiling demonstration", "Framework architecture", "Benchmark neural network model", "Data", "Ensure robustness", "Runtime graph execution", "Perform an export", "User Guide", "Plateform interoperability", "Learn on edge", "Learn model", "Load and store model", "Computational graph", "Optimize graph", "Static analysis", "Transform graph"], "titleterms": {"": 27, "101": 24, "The": 26, "accuraci": 26, "ad": [24, 41], "adapt": 10, "add": [9, 10, 34], "advanc": 23, "aggreg": 42, "agnost": 18, "aidg": [0, 1, 2, 8, 12, 13, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28], "altern": 23, "an": [19, 20, 21, 34, 40], "analysi": [19, 42], "ani": 23, "api": [2, 8, 12, 13, 14], "appli": 26, "architectur": [29, 34], "art": 18, "attribut": [23, 34], "averag": 9, "backend": [1, 2, 3, 10, 29, 33], "base": [9, 11, 23], "batchnorm": [9, 10], "benchmark": 30, "block": 23, "build": 16, "c": [16, 19, 24, 27], "cast": [9, 10], "chang": 41, "character": 18, "class": [9, 11], "clone": 40, "code": 18, "compil": [16, 18, 19, 22], "complet": 34, "comput": [20, 26, 30, 34, 40, 42], "concat": 9, "condit": 27, "configur": 19, "connector": 6, "constant": 10, "constraint": 34, "consum": 18, "conv": [9, 10], "convdepthwis": 9, "convert": [10, 13], "copi": 40, "core": [8, 29, 40], "cpp": 22, "cpu": 1, "creat": [19, 20, 25, 27, 40], "creation": 26, "data": [4, 27, 31], "databas": [2, 4, 21, 25, 31], "dataflow": [18, 27], "dataprovid": [4, 31], "dataset": 26, "deep": 40, "default": 33, "defin": [18, 28], "definit": 40, "demand": 27, "demonstr": [19, 28], "describ": 43, "design": 34, "dimens": 20, "direct": 27, "div": 9, "dnn": 24, "do": 26, "done": 26, "download": [19, 22, 26], "draw": 22, "dropout": 10, "edg": [23, 37], "effect": 18, "engin": 18, "ensur": 32, "environ": 26, "erf": 9, "evalu": 21, "exampl": [6, 26, 40], "excut": 30, "execut": 33, "expand": [10, 43], "expans": 23, "explicit": [10, 40], "export": [5, 12, 13, 19, 22, 24, 34], "extra": 34, "factor": 23, "fc": [9, 10], "file": [19, 34], "first": 23, "flatten": 10, "fold": 10, "fonctionn": 24, "footprint": 42, "framework": 29, "from": [22, 39, 42], "function": [12, 13, 23, 28, 35, 40, 43], "fuse": [10, 41], "gather": 9, "gener": [9, 18, 19, 20, 22, 40], "get": [15, 42], "graph": [6, 7, 12, 18, 19, 23, 33, 34, 40, 41, 43], "graphview": 6, "guid": 35, "hardwar": [18, 34], "helper": [6, 12], "heurist": 18, "high": 35, "i": [0, 26], "ident": 9, "implement": [3, 20, 29, 33, 34, 40, 41], "import": [13, 19, 20, 26], "infer": [19, 26], "input": [3, 19, 22], "instal": [16, 21], "integr": 34, "interoper": [18, 36], "interpret": 43, "introduct": 40, "ir": 18, "isomorph": 41, "kera": 36, "kernel": 34, "kpi": 42, "lambda": 23, "last": 23, "layer": 41, "leakyrelu": 9, "learn": [25, 37, 38], "lenet": 21, "level": 35, "lexer": 43, "lib": 5, "librari": 34, "licens": 0, "like": 21, "linux": 16, "load": [22, 39], "loop": 25, "lstm": 9, "machin": 43, "main": 19, "make": [12, 40], "manipul": [22, 23], "map": [18, 34], "master": 27, "match": [7, 23, 43], "matmul": [9, 10, 41], "measur": 30, "memor": 9, "memori": 42, "mermaid": 28, "meta": [9, 10], "metanod": [20, 43], "method": 18, "metric": 30, "mnist": [2, 21, 22], "model": [18, 19, 20, 22, 25, 26, 27, 30, 34, 36, 38, 39, 41], "move": [9, 10], "mul": 9, "multi": 41, "need": [19, 26], "network": [19, 25, 26, 30], "neural": [25, 30], "new": 20, "node": [5, 6, 20, 23, 27, 34, 40, 42, 43], "note": 6, "notebook": [19, 20], "number": 22, "numpi": 36, "object": 25, "onc": 27, "onli": 27, "onnx": [13, 18, 19, 20, 39], "opencv": 2, "oper": [9, 10, 20, 40, 43], "operatortensor": 9, "optim": [19, 24, 41], "option": [12, 16, 19], "output": [3, 20], "overview": [30, 35, 42, 43], "own": 22, "p": 27, "pad": 9, "paddedavgpool": 9, "paddedconv": 9, "paddedconvdepthwis": 9, "paddedmaxpool": 9, "parallel": [11, 23], "paramet": [6, 34, 40], "parser": 43, "partit": 31, "pattern": 43, "perform": [21, 34], "phase": 34, "pipelin": [26, 27], "plateform": 36, "plugin": [12, 29, 40], "pool": 9, "pop": 9, "post": 26, "pow": 9, "power": 18, "predefin": 9, "produc": [9, 18, 27, 40], "project": [22, 34], "propos": 41, "provid": 20, "ptq": [18, 26], "python": 16, "pytorch": [18, 36], "qat": 18, "quantifi": 23, "quantiz": 26, "quick": 17, "recip": 10, "reducemean": 9, "regex": 43, "regist": [13, 20], "relu": 9, "remov": [10, 23, 43], "replac": [18, 23, 43], "requir": 21, "reset": 27, "reshap": 9, "retriev": 20, "return": 6, "robust": 32, "rule": [23, 34], "run": [19, 26], "runtim": 33, "scale": 9, "schedul": [5, 11, 18, 19, 26, 27, 33, 34], "score": 30, "seamless": 18, "search": 18, "select": 33, "sequenti": 11, "set": [19, 20, 25, 26], "setup": 26, "share": 40, "sigmoid": 9, "simpl": [18, 25], "slice": 9, "softmax": 9, "solver": 43, "some": [23, 26], "spatial": 41, "specif": 3, "specifiyng": 23, "sqrt": 9, "standalon": 22, "start": [15, 17], "state": [18, 43], "static": [19, 42], "stimuli": 31, "store": 39, "strategi": 34, "structur": 31, "sub": 9, "subgraph": 42, "syntax": 40, "tanh": 9, "tensor": [4, 19, 27, 31, 36], "tensorflow": 18, "tensorrt": 12, "test": [19, 22], "tile": [10, 18, 28, 41], "time": 30, "topologi": 41, "train": [25, 26], "transform": [19, 43], "transmitt": 40, "transpos": [9, 10], "tutori": [20, 24], "type": 23, "understand": 27, "up": [19, 20, 25, 26], "updat": 20, "usag": 23, "user": 35, "util": 2, "view": 40, "visual": 28, "well": 18, "what": [0, 26], "whole": 27, "why": 18, "work": [20, 26], "workflow": 35, "your": 22}})
\ No newline at end of file
+Search.setIndex({"alltitles": {"(Optional) Generate an input file for tests": [[19, "(Optional)-Generate-an-input-file-for-tests"]], "(if needed) Download the model": [[19, "(if-needed)-Download-the-model"], [31, "(if-needed)-Download-the-model"], [33, "(if-needed)-Download-the-model"]], "0. Requirements for this tutorial": [[27, "0.-Requirements-for-this-tutorial"]], "1. Exporting the model": [[27, "1.-Exporting-the-model"]], "2. Modifying the test script for quantization": [[27, "2.-Modifying-the-test-script-for-quantization"]], "3. Preparing the calibration dataset": [[27, "3.-Preparing-the-calibration-dataset"]], "4. Generating the quantized model": [[27, "4.-Generating-the-quantized-model"]], "API": [[14, null]], "Adapt to backend": [[10, "adapt-to-backend"]], "Add": [[9, "add"]], "Add Swish to the CPP export support": [[24, "Add-Swish-to-the-CPP-export-support"]], "Add a custom operator to the C++ export": [[24, null]], "Add extra files to complete the export": [[40, "add-extra-files-to-complete-the-export"]], "Advanced usage": [[28, "Advanced-usage"]], "Aggregate KPI from a subgraph": [[48, "aggregate-kpi-from-a-subgraph"]], "Aidge": [[0, null]], "Aidge Export TensorRT API": [[12, null]], "Aidge ONNX API": [[13, null]], "Aidge ONNX tutorial": [[20, null]], "Aidge backend CPU": [[1, null]], "Aidge backend OpenCV API": [[2, null]], "Aidge core API": [[8, null]], "Aidge database": [[30, "Aidge-database"]], "Aidge demonstration": [[19, null]], "Aidge tiling demonstration": [[34, null]], "Applying the PTQ to the model \u2026": [[31, "Applying-the-PTQ-to-the-model-..."]], "Average Pooling": [[9, "average-pooling"]], "Backend": [[3, null]], "Backend CUDA example": [[21, null]], "Base Matching Rules": [[28, "Base-Matching-Rules"]], "BatchNorm": [[9, "batchnorm"]], "Benchmark neural network model": [[36, null]], "Build on Linux": [[16, "build-on-linux"]], "C++ Compilation": [[16, "c-compilation"]], "Cast": [[9, "cast"]], "Change topology (model isomorphism)": [[47, "change-topology-model-isomorphism"]], "Clone a graph": [[46, "clone-a-graph"]], "Compilation options": [[16, "compilation-options"]], "Compile the export": [[19, "Compile-the-export"]], "Compile the export and test it": [[23, "Compile-the-export-and-test-it"], [26, "Compile-the-export-and-test-it"]], "Computational footprint": [[48, "computational-footprint"]], "Computational graph": [[46, null]], "Compute score metrics": [[36, "compute-score-metrics"]], "Computing output dimensions": [[20, "Computing-output-dimensions"]], "Computing the model accuracy \u2026": [[31, "Computing-the-model-accuracy-..."]], "Computing the quantized accuracy \u2026": [[31, "Computing-the-quantized-accuracy-..."]], "Concat": [[9, "concat"]], "Conditional nodes scheduling": [[32, "Conditional-nodes-scheduling"]], "Configure the model for inference": [[19, "Configure-the-model-for-inference"], [33, "Configure-the-model-for-inference"]], "Connector": [[6, "connector"]], "Constant folding": [[10, "constant-folding"]], "Conv": [[9, "conv"]], "ConvDepthWise": [[9, "convdepthwise"]], "Convert Conv to MatMul": [[10, "convert-conv-to-matmul"]], "Converters Aidge to ONNX": [[13, "converters-aidge-to-onnx"]], "Converters ONNX to Aidge": [[13, "converters-onnx-to-aidge"]], "Core": [[35, "core"]], "Core operator": [[46, "core-operator"]], "Create a dataflow pipelining": [[32, "Create-a-dataflow-pipelining"]], "Create a scheduler and run inference": [[19, "Create-a-scheduler-and-run-inference"]], "Create an input tensor": [[19, "Create-an-input-tensor"]], "Create database to quantize model": [[25, "Create-database-to-quantize-model"]], "Creating Aidge model": [[30, "Creating-Aidge-model"]], "Creating a MetaNode": [[20, "Creating-a-MetaNode"]], "Data": [[4, null], [37, null]], "Data Structure": [[37, "data-structure"]], "Data partitioning": [[37, "data-partitioning"]], "Data provider tutorial": [[22, null]], "DataProvider": [[4, "dataprovider"], [37, "dataprovider"]], "Database": [[4, "database"], [37, "database"]], "Databases": [[2, "databases"]], "Default scheduler": [[39, "default-scheduler"]], "Define mermaid visualizer function": [[34, "Define-mermaid-visualizer-function"]], "Definition": [[46, "definition"]], "Describe graph patterns": [[49, "describe-graph-patterns"]], "Design and export the computation kernels": [[40, "design-and-export-the-computation-kernels"]], "Direct tensors produce whole data only once": [[32, "Direct-tensors-produce-whole-data-only-once"]], "Div": [[9, "div"]], "Doing the PTQ with AIDGE": [[31, "Doing-the-PTQ-with-AIDGE"]], "Download the model": [[23, "Download-the-model"], [25, "Download-the-model"], [26, "Download-the-model"]], "Draw your own number": [[23, "Draw-your-own-number"], [26, "Draw-your-own-number"]], "Ensure robustness": [[38, null]], "Environment setup \u2026": [[31, "Environment-setup-..."]], "Erf": [[9, "erf"]], "Example of Operator": [[46, "example-of-operator"]], "Examples": [[6, "examples"]], "Expand meta operators": [[10, "expand-meta-operators"]], "Expand operator": [[49, "expand-operator"]], "Expansion": [[28, "Expansion"]], "Explicit Cast Move": [[10, "explicit-cast-move"]], "Explicit Transpose": [[10, "explicit-transpose"]], "Explicit syntax": [[46, "explicit-syntax"]], "Explore a handful of graph transformations": [[33, "Explore-a-handful-of-graph-transformations"]], "Export": [[5, null], [13, "export"], [19, "Export"]], "Export 101": [[23, null]], "Export function": [[12, "export-function"]], "Export implementation phase": [[40, "export-implementation-phase"]], "Export lib": [[5, "export-lib"]], "Export mapping phase": [[40, "export-mapping-phase"]], "Export node": [[5, "export-node"]], "Export scheduler": [[5, "export-scheduler"]], "Export strategy": [[40, "export-strategy"]], "Export the attributes of the nodes": [[40, "export-the-attributes-of-the-nodes"]], "Export the model": [[23, "Export-the-model"], [26, "Export-the-model"]], "Export the parameters of the model": [[40, "export-the-parameters-of-the-model"]], "Export the scheduling of the graph": [[40, "export-the-scheduling-of-the-graph"]], "Export to an integrated kernel library": [[40, "export-to-an-integrated-kernel-library"]], "FC": [[9, "fc"]], "Factorization": [[28, "Factorization"]], "Framework architecture": [[35, null]], "Functional syntax": [[46, "functional-syntax"]], "Fuse BatchNorm": [[10, "fuse-batchnorm"]], "Fuse MatMul & added": [[47, "fuse-matmul-added"]], "Fuse MatMul and Add to FC": [[10, "fuse-matmul-and-add-to-fc"]], "Fuse to meta operator": [[10, "fuse-to-meta-operator"]], "Gather": [[9, "gather"]], "Generate an export in C++": [[19, "Generate-an-export-in-C++"]], "Generate inputs for testing the model from your drawing": [[23, "Generate-inputs-for-testing-the-model-from-your-drawing"], [26, "Generate-inputs-for-testing-the-model-from-your-drawing"]], "Generate main file": [[19, "Generate-main-file"]], "Generic Operator": [[9, "generic-operator"]], "Generic hardware model and mapping heuristics": [[18, "generic-hardware-model-and-mapping-heuristics"]], "Generic operator": [[46, "generic-operator"]], "Generic, compiler-agnostic tiling methods": [[18, "generic-compiler-agnostic-tiling-methods"]], "Get Started": [[15, null]], "Get node KPI": [[48, "get-node-kpi"]], "Graph": [[6, null]], "Graph Matching": [[7, null], [49, "graph-matching"]], "Graph Regex": [[49, "graph-regex"]], "Graph Regex Lexer": [[49, "graph-regex-lexer"]], "Graph Regex Parser": [[49, "graph-regex-parser"]], "Graph View": [[46, "graph-view"]], "Graph functions": [[12, "graph-functions"]], "Graph helpers": [[6, "graph-helpers"]], "Graph manipulation": [[28, "Graph-manipulation"]], "Graph matching": [[28, "Graph-matching"]], "Graph matching and manipulation": [[28, null]], "Graph transformation": [[19, "Graph-transformation"], [49, "graph-transformation"]], "GraphView": [[6, "graphview"]], "High level functionalities": [[41, "high-level-functionalities"]], "Identity": [[9, "identity"]], "Implementation of an operator": [[46, "implementation-of-an-operator"]], "Implementation selection": [[39, "implementation-selection"]], "Implementation specification": [[3, "implementation-specification"]], "Implementations & Backends": [[35, "implementations-backends"]], "Implementations and backends": [[39, "implementations-and-backends"]], "Import": [[13, "import"]], "Import Aidge": [[19, "Import-Aidge"], [24, "Import-Aidge"]], "Import the ONNX model into Aidge": [[33, "Import-the-ONNX-model-into-Aidge"]], "Importing an ONNX": [[20, "Importing-an-ONNX"]], "Importing the model in AIDGE \u2026": [[31, "Importing-the-model-in-AIDGE-..."]], "Inference": [[19, "Inference"]], "Input/Output specification": [[3, "input-output-specification"]], "Install": [[16, null]], "Install Python": [[16, "install-python"]], "Installation and Requirements": [[22, "Installation-and-Requirements"]], "Introduction": [[46, "introduction"]], "Keras Tensor interoperability": [[42, "keras-tensor-interoperability"]], "Keras interoperability": [[42, "keras-interoperability"]], "Keras model interoperability": [[42, "keras-model-interoperability"]], "LSTM": [[9, "lstm"]], "LeakyReLU": [[9, "leakyrelu"]], "Learn model": [[44, null]], "Learn on edge": [[43, null]], "License": [[0, "license"]], "Load ONNX model": [[24, "Load-ONNX-model"]], "Load and store model": [[45, null]], "Load model from ONNX": [[45, "load-model-from-onnx"]], "Load the model in Aidge and manipulate it": [[23, "Load-the-model-in-Aidge-and-manipulate-it"], [25, "Load-the-model-in-Aidge-and-manipulate-it"], [26, "Load-the-model-in-Aidge-and-manipulate-it"]], "MAKE Options": [[12, "make-options"]], "MNIST": [[2, "mnist"]], "Make a deep copy": [[46, "make-a-deep-copy"]], "Make a deep copy with shared parameters": [[46, "make-a-deep-copy-with-shared-parameters"]], "Master the C-P model": [[32, "Master-the-C-P-model"]], "MatMul": [[9, "matmul"]], "MatMul tiling": [[10, "matmul-tiling"]], "Match alternative blocks": [[28, "Match-alternative-blocks"]], "Match any node type": [[28, "Match-any-node-type"]], "Match node attributes with a lambda function": [[28, "Match-node-attributes-with-a-lambda-function"]], "Match parallel blocks": [[28, "Match-parallel-blocks"]], "Match solver": [[49, "match-solver"]], "Match the first / last node of some type": [[28, "Match-the-first-/-last-node-of-some-type"]], "Match \u201cno edge\u201d": [[28, "Match-%22no-edge%22"]], "Measure excution time": [[36, "measure-excution-time"]], "Memorize": [[9, "memorize"]], "Memory footprint": [[48, "memory-footprint"]], "Meta Operator": [[9, "meta-operator"]], "MetaNode": [[49, "metanode"]], "Model hardware & architecture rules": [[40, "model-hardware-architecture-rules"]], "Move": [[9, "move"]], "Mul": [[9, "mul"]], "Multi-layer spatial tiling": [[47, "multi-layer-spatial-tiling"]], "Node": [[6, "node"], [46, "node"]], "Node Regex": [[49, "node-regex"]], "Node Regex Interpreter": [[49, "node-regex-interpreter"]], "Node Regex Lexer": [[49, "node-regex-lexer"]], "Node Regex Parser": [[49, "node-regex-parser"]], "Note": [[6, "note"]], "Numpy interoperability": [[42, "numpy-interoperability"]], "ONNX": [[45, "onnx"]], "ONNX Import": [[19, "ONNX-Import"]], "Operator": [[46, "operator"]], "Operator base class": [[9, "operator-base-class"]], "OperatorTensor base class": [[9, "operatortensor-base-class"]], "Operators": [[9, null], [46, "operators"]], "Optimize graph": [[47, null]], "Optimize network": [[19, "Optimize-network"]], "Overview": [[36, "overview"], [48, "overview"], [49, "overview"]], "Pad": [[9, "pad"]], "PaddedAvgPooling": [[9, "paddedavgpooling"]], "PaddedConv": [[9, "paddedconv"]], "PaddedConvDepthWise": [[9, "paddedconvdepthwise"]], "PaddedMaxPooling": [[9, "paddedmaxpooling"]], "Parallel scheduler": [[11, "parallel-scheduler"]], "Parameters": [[6, "parameters"]], "Perform an evaluation of the LeNet-like on Aidge": [[22, "Perform-an-evaluation-of-the-LeNet-like-on-Aidge"]], "Perform an export": [[40, null]], "Perform static analysis on a neural network model": [[33, null]], "Plateform interoperability": [[42, null]], "Plugin Operator": [[46, "plugin-operator"]], "Plugin helper": [[12, "plugin-helper"]], "Plugins": [[35, "plugins"]], "Pop": [[9, "pop"]], "Post Training Quantization with AIDGE": [[31, null]], "Pow": [[9, "pow"]], "Powerful graph search & replace engine": [[18, "powerful-graph-search-replace-engine"]], "Predefined meta-operators": [[9, "predefined-meta-operators"]], "Predefined operators": [[9, "predefined-operators"]], "Producer": [[9, "producer"], [46, "producer"]], "Producers produce whole tensor data on demand": [[32, "Producers-produce-whole-tensor-data-on-demand"]], "Project constraints": [[40, "project-constraints"]], "Proposed implementation": [[47, "proposed-implementation"]], "Providing an implementation": [[20, "Providing-an-implementation"]], "PyTorch interoperability": [[42, "pytorch-interoperability"]], "PyTorch model interoperability": [[42, "pytorch-model-interoperability"]], "PyTorch tensor interoperability": [[42, "pytorch-tensor-interoperability"]], "Quantifiers": [[28, "Quantifiers"]], "Quantization dataset creation \u2026": [[31, "Quantization-dataset-creation-..."]], "Quantize the model to int8": [[25, "Quantize-the-model-to-int8"]], "Quantized model C++ export": [[25, null]], "Quick Start": [[17, null]], "ReLU": [[9, "relu"]], "Recipes": [[10, null]], "ReduceMean": [[9, "reducemean"]], "Register export functions": [[13, "register-export-functions"]], "Register import functions": [[13, "register-import-functions"]], "Registering new node import": [[20, "Registering-new-node-import"]], "Remove Dropout": [[10, "remove-dropout"]], "Remove Flatten": [[10, "remove-flatten"]], "Remove nodes": [[28, "Remove-nodes"]], "Remove operator": [[49, "remove-operator"]], "Replace ReLU operators by Swish operators": [[24, "Replace-ReLU-operators-by-Swish-operators"]], "Replace nodes": [[28, "Replace-nodes"]], "Replace operator": [[49, "replace-operator"]], "Reset the C-P model": [[32, "Reset-the-C-P-model"]], "Reshape": [[9, "reshape"]], "Retrieve the onnx model": [[20, "Retrieve-the-onnx-model"]], "Returns": [[6, "returns"]], "Run static analysis": [[33, "Run-static-analysis"]], "Run the export": [[19, "Run-the-export"]], "Running some example inferences \u2026": [[31, "Running-some-example-inferences-..."]], "Running some quantized inferences \u2026": [[31, "Running-some-quantized-inferences-..."]], "Runtime graph execution": [[39, null]], "STM32 export": [[26, null]], "Schedule the graph": [[24, "Schedule-the-graph"]], "Scheduler": [[11, null], [39, "scheduler"], [40, "scheduler"]], "Scheduler base class": [[11, "scheduler-base-class"]], "Seamless interoperability with ONNX, PyTorch and TensorFlow": [[18, "seamless-interoperability-with-onnx-pytorch-and-tensorflow"]], "Sequential scheduler": [[11, "sequential-scheduler"]], "Set up learning objects": [[30, "Set-up-learning-objects"]], "Setting up the AIDGE scheduler \u2026": [[31, "Setting-up-the-AIDGE-scheduler-..."]], "Setting up the notebook": [[19, "Setting-up-the-notebook"], [20, "Setting-up-the-notebook"], [33, "Setting-up-the-notebook"]], "Sigmoid": [[9, "sigmoid"]], "Simple and effective code generation engine": [[18, "simple-and-effective-code-generation-engine"]], "Slice": [[9, "slice"]], "Softmax": [[9, "softmax"]], "Specifiyng Edges": [[28, "Specifiyng-Edges"]], "Sqrt": [[9, "sqrt"]], "State machine": [[49, "state-machine"]], "Static analysis": [[19, "Static-analysis"], [48, null]], "Stimuli": [[37, "stimuli"]], "Sub": [[9, "sub"]], "Syntax to create a computational graph": [[46, "syntax-to-create-a-computational-graph"]], "Tanh": [[9, "tanh"]], "Tensor": [[4, "tensor"], [37, "tensor"]], "TensorRT export": [[27, null]], "The Quantization Pipeline": [[31, "The-Quantization-Pipeline"]], "Tiling": [[47, "tiling"]], "Training a simple Neural Network": [[30, null]], "Training loop": [[30, "Training-loop"]], "Transform graph": [[49, null]], "Transformation functions": [[49, "transformation-functions"]], "Transmitter": [[46, "transmitter"]], "Transpose": [[9, "transpose"]], "Tutorials": [[29, null]], "UTILS": [[2, "utils"]], "Understanding Aidge\u2019s scheduling": [[32, null]], "Updating ONNX import": [[20, "Updating-ONNX-import"]], "User Guide": [[41, null]], "Well-characterized, state-of-the-art PTQ and QAT methods": [[18, "well-characterized-state-of-the-art-ptq-and-qat-methods"]], "Well-defined consumer-producer model and scheduling": [[18, "well-defined-consumer-producer-model-and-scheduling"]], "Well-defined dataflow graph IR model": [[18, "well-defined-dataflow-graph-ir-model"]], "What is Aidge?": [[0, "what-is-aidge"]], "What is Network Quantization ?": [[31, "What-is-Network-Quantization-?"]], "Why Aidge?": [[18, null]], "Work is done !": [[31, "Work-is-done-!"]], "Workflow overview": [[41, "workflow-overview"]], "Working with generic operator": [[20, "Working-with-generic-operator"]], "\u2699\ufe0f Optimization tutorials": [[29, "optimization-tutorials"]], "\ud83d\ude80 Export tutorials": [[29, "export-tutorials"]], "\ud83d\udee0 Aidge functionalities": [[29, "aidge-functionalities"]]}, "docnames": ["index", "source/API/BackendCPU/index", "source/API/BackendOPENCV/index", "source/API/Core/backend", "source/API/Core/data", "source/API/Core/export", "source/API/Core/graph", "source/API/Core/graphMatching", "source/API/Core/index", "source/API/Core/operator", "source/API/Core/recipes", "source/API/Core/scheduler", "source/API/ExportTensorRT/index", "source/API/Onnx/index", "source/API/index", "source/GetStarted/index", "source/GetStarted/install", "source/GetStarted/quickStart", "source/GetStarted/whyAidge", "source/Tutorial/101_first_step", "source/Tutorial/ONNX", "source/Tutorial/backend_cuda", "source/Tutorial/database", "source/Tutorial/export_cpp", "source/Tutorial/export_cpp_add_impl", "source/Tutorial/export_cpp_quant", "source/Tutorial/export_stm32", "source/Tutorial/export_trt", "source/Tutorial/graph_matching", "source/Tutorial/index", "source/Tutorial/learning", "source/Tutorial/ptq", "source/Tutorial/scheduling", "source/Tutorial/static_analysis", "source/Tutorial/tiling", "source/UserGuide/architecture", "source/UserGuide/benchmark", "source/UserGuide/data", "source/UserGuide/ensureRobustness", "source/UserGuide/executeGraph", "source/UserGuide/export", "source/UserGuide/index", "source/UserGuide/interoperability", "source/UserGuide/learnEdge", "source/UserGuide/learnModel", "source/UserGuide/loadStoreModel", "source/UserGuide/modelGraph", "source/UserGuide/optimizeGraph", "source/UserGuide/staticAnalysis", "source/UserGuide/transformGraph"], "envversion": {"nbsphinx": 4, "sphinx": 64, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.todo": 2, "sphinxcontrib.bibtex": 9}, "filenames": ["index.rst", "source/API/BackendCPU/index.rst", "source/API/BackendOPENCV/index.rst", "source/API/Core/backend.rst", "source/API/Core/data.rst", "source/API/Core/export.rst", "source/API/Core/graph.rst", "source/API/Core/graphMatching.rst", "source/API/Core/index.rst", "source/API/Core/operator.rst", "source/API/Core/recipes.rst", "source/API/Core/scheduler.rst", "source/API/ExportTensorRT/index.rst", "source/API/Onnx/index.rst", "source/API/index.rst", "source/GetStarted/index.rst", "source/GetStarted/install.rst", "source/GetStarted/quickStart.rst", "source/GetStarted/whyAidge.rst", "source/Tutorial/101_first_step.nblink", "source/Tutorial/ONNX.nblink", "source/Tutorial/backend_cuda.nblink", "source/Tutorial/database.nblink", "source/Tutorial/export_cpp.nblink", "source/Tutorial/export_cpp_add_impl.nblink", "source/Tutorial/export_cpp_quant.nblink", "source/Tutorial/export_stm32.nblink", "source/Tutorial/export_trt.nblink", "source/Tutorial/graph_matching.nblink", "source/Tutorial/index.rst", "source/Tutorial/learning.nblink", "source/Tutorial/ptq.nblink", "source/Tutorial/scheduling.nblink", "source/Tutorial/static_analysis.nblink", "source/Tutorial/tiling.nblink", "source/UserGuide/architecture.rst", "source/UserGuide/benchmark.rst", "source/UserGuide/data.rst", "source/UserGuide/ensureRobustness.rst", "source/UserGuide/executeGraph.rst", "source/UserGuide/export.rst", "source/UserGuide/index.rst", "source/UserGuide/interoperability.rst", "source/UserGuide/learnEdge.rst", "source/UserGuide/learnModel.rst", "source/UserGuide/loadStoreModel.rst", "source/UserGuide/modelGraph.rst", "source/UserGuide/optimizeGraph.rst", "source/UserGuide/staticAnalysis.rst", "source/UserGuide/transformGraph.rst"], "indexentries": {"__init__() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.__init__", false]], "__init__() (aidge_core.connector method)": [[6, "aidge_core.Connector.__init__", false]], "__init__() (aidge_core.dataprovider method)": [[4, "aidge_core.DataProvider.__init__", false]], "__init__() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.__init__", false]], "__init__() (aidge_core.export_utils.exportnode method)": [[5, "aidge_core.export_utils.ExportNode.__init__", false]], "__init__() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.__init__", false]], "__init__() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.__init__", false]], "__init__() (aidge_core.implspec method)": [[3, "aidge_core.ImplSpec.__init__", false]], "__init__() (aidge_core.iospec method)": [[3, "aidge_core.IOSpec.__init__", false]], "__init__() (aidge_core.node method)": [[6, "aidge_core.Node.__init__", false]], "__init__() (aidge_core.operator method)": [[9, "aidge_core.Operator.__init__", false]], "__init__() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.__init__", false]], "__init__() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.__init__", false]], "__init__() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.__init__", false]], "__init__() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.__init__", false]], "__init__() (aidge_core.singlepassgraphmatching method)": [[7, "aidge_core.SinglePassGraphMatching.__init__", false]], "__init__() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.__init__", false]], "abs() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.abs", false]], "adapt_to_backend() (in module aidge_core)": [[10, "aidge_core.adapt_to_backend", false]], "add() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.add", false]], "add() (in module aidge_core)": [[9, "aidge_core.Add", false]], "add_child() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.add_child", false]], "add_child() (aidge_core.node method)": [[6, "aidge_core.Node.add_child", false]], "add_kernel_to_copy() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.add_kernel_to_copy", false]], "add_node_lambda() (aidge_core.singlepassgraphmatching method)": [[7, "aidge_core.SinglePassGraphMatching.add_node_lambda", false]], "add_ordered_outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.add_ordered_outputs", false]], "aidge::adapttobackend (c++ function)": [[10, "_CPPv4N5Aidge14adaptToBackendENSt10shared_ptrI9GraphViewEE", false]], "aidge::add (c++ function)": [[9, "_CPPv4N5Aidge3AddERKNSt6stringE", false]], "aidge::avgpooling (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", false]], "aidge::batchnorm (c++ function)": [[9, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", false]], "aidge::cast (c++ function)": [[9, "_CPPv4N5Aidge4CastEK8DataTypeRKNSt6stringE", false]], "aidge::concat (c++ function)": [[9, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", false]], "aidge::connector (c++ class)": [[6, "_CPPv4N5Aidge9ConnectorE", false]], "aidge::connector::connector (c++ function)": [[6, "_CPPv4N5Aidge9Connector9ConnectorENSt10shared_ptrI4NodeEE", false], [6, "_CPPv4N5Aidge9Connector9ConnectorEv", false]], "aidge::connector::index (c++ function)": [[6, "_CPPv4NK5Aidge9Connector5indexEv", false]], "aidge::connector::node (c++ function)": [[6, "_CPPv4NK5Aidge9Connector4nodeEv", false]], "aidge::connector::operator[] (c++ function)": [[6, "_CPPv4NK5Aidge9ConnectorixE9IOIndex_t", false]], "aidge::connector::size (c++ function)": [[6, "_CPPv4NK5Aidge9Connector4sizeEv", false]], "aidge::connector::~connector (c++ function)": [[6, "_CPPv4N5Aidge9ConnectorD0Ev", false]], "aidge::constantfolding (c++ function)": [[10, "_CPPv4N5Aidge15constantFoldingENSt10shared_ptrI9GraphViewEEb", false]], "aidge::conv (c++ function)": [[9, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::convdepthwise (c++ function)": [[9, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::convtomatmul (c++ function)": [[10, "_CPPv4N5Aidge12convToMatMulENSt10shared_ptrI9GraphViewEE", false]], "aidge::database (c++ class)": [[4, "_CPPv4N5Aidge8DatabaseE", false]], "aidge::database::database (c++ function)": [[4, "_CPPv4N5Aidge8Database8DatabaseEv", false]], "aidge::database::getitem (c++ function)": [[4, "_CPPv4NK5Aidge8Database7getItemEKNSt6size_tE", false]], "aidge::database::getlen (c++ function)": [[4, "_CPPv4NK5Aidge8Database6getLenEv", false]], "aidge::database::getnbmodalities (c++ function)": [[4, "_CPPv4NK5Aidge8Database15getNbModalitiesEv", false]], "aidge::database::~database (c++ function)": [[4, "_CPPv4N5Aidge8DatabaseD0Ev", false]], "aidge::dataprovider (c++ class)": [[4, "_CPPv4N5Aidge12DataProviderE", false]], "aidge::dataprovider::dataprovider (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", false]], "aidge::dataprovider::done (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider4doneEv", false]], "aidge::dataprovider::getindexbatch (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider13getIndexBatchEv", false]], "aidge::dataprovider::getnbbatch (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider10getNbBatchEv", false]], "aidge::dataprovider::incrementindexbatch (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider19incrementIndexBatchEv", false]], "aidge::dataprovider::iter (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider4iterEv", false]], "aidge::dataprovider::next (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider4nextEv", false]], "aidge::dataprovider::readbatch (c++ function)": [[4, "_CPPv4NK5Aidge12DataProvider9readBatchEv", false]], "aidge::dataprovider::resetindexbatch (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider15resetIndexBatchEv", false]], "aidge::dataprovider::setbatches (c++ function)": [[4, "_CPPv4N5Aidge12DataProvider10setBatchesEv", false]], "aidge::div (c++ function)": [[9, "_CPPv4N5Aidge3DivERKNSt6stringE", false]], "aidge::erf (c++ function)": [[9, "_CPPv4N5Aidge3ErfERKNSt6stringE", false]], "aidge::expandmetaops (c++ function)": [[10, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb", false]], "aidge::explicitcastmove (c++ function)": [[10, "_CPPv4N5Aidge16explicitCastMoveENSt10shared_ptrI9GraphViewEE", false]], "aidge::explicittranspose (c++ function)": [[10, "_CPPv4N5Aidge17explicitTransposeENSt10shared_ptrI9GraphViewEE", false]], "aidge::fc (c++ function)": [[9, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", false]], "aidge::fusebatchnorm (c++ function)": [[10, "_CPPv4N5Aidge13fuseBatchNormENSt10shared_ptrI9GraphViewEE", false]], "aidge::fusetometaops (c++ function)": [[10, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", false]], "aidge::gather (c++ function)": [[9, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", false]], "aidge::generategraph (c++ function)": [[6, "_CPPv4N5Aidge13generateGraphERKNSt6vectorI9ConnectorEE", false]], "aidge::genericoperator (c++ function)": [[9, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", false], [9, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", false]], "aidge::getconnectedgraphview (c++ function)": [[6, "_CPPv4N5Aidge21getConnectedGraphViewENSt10shared_ptrI4NodeEE", false]], "aidge::graphview (c++ class)": [[6, "_CPPv4N5Aidge9GraphViewE", false]], "aidge::graphview::add (c++ function)": [[6, "_CPPv4N5Aidge9GraphView3addE7NodePtrb", false], [6, "_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb", false], [6, "_CPPv4N5Aidge9GraphView3addENSt3setI7NodePtrEEb", false], [6, "_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb", false]], "aidge::graphview::addchild (c++ function)": [[6, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", false], [6, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", false], [6, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", false]], "aidge::graphview::addorderedoutputs (c++ function)": [[6, "_CPPv4N5Aidge9GraphView17addOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEEi", false]], "aidge::graphview::clone (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView5cloneEv", false]], "aidge::graphview::clonecallback (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView13cloneCallbackEPF7NodePtr7NodePtrE", false]], "aidge::graphview::clonesharedoperators (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView20cloneSharedOperatorsEv", false]], "aidge::graphview::clonesharedproducers (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView20cloneSharedProducersEv", false]], "aidge::graphview::compile (c++ function)": [[6, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", false]], "aidge::graphview::datainputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10dataInputsEKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView10dataInputsEv", false]], "aidge::graphview::forwarddims (c++ function)": [[6, "_CPPv4N5Aidge9GraphView11forwardDimsERKNSt6vectorINSt6vectorI9DimSize_tEEEEb", false]], "aidge::graphview::forwarddtype (c++ function)": [[6, "_CPPv4N5Aidge9GraphView12forwardDTypeE8DataType", false], [6, "_CPPv4N5Aidge9GraphView12forwardDTypeERKNSt6vectorI8DataTypeEE", false]], "aidge::graphview::getchildren (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView11getChildrenEK7NodePtr", false], [6, "_CPPv4NK5Aidge9GraphView11getChildrenEKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView11getChildrenEv", false]], "aidge::graphview::getnbfreedatainputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView19getNbFreeDataInputsEv", false]], "aidge::graphview::getnode (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView7getNodeERKNSt6stringE", false]], "aidge::graphview::getnodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView8getNodesEv", false]], "aidge::graphview::getorderedinputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView16getOrderedInputsEv", false]], "aidge::graphview::getorderednodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView15getOrderedNodesEb", false]], "aidge::graphview::getorderedoutputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView17getOrderedOutputsEv", false]], "aidge::graphview::getorderedparents (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView17getOrderedParentsEv", false]], "aidge::graphview::getparents (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10getParentsEKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView10getParentsEv", false]], "aidge::graphview::getrankednodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView14getRankedNodesEv", false]], "aidge::graphview::getrankednodesname (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb", false]], "aidge::graphview::graphview (c++ function)": [[6, "_CPPv4N5Aidge9GraphView9GraphViewERKNSt6stringE", false]], "aidge::graphview::inputnodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10inputNodesE13InputCategory", false]], "aidge::graphview::inputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView6inputsERKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView6inputsEv", false]], "aidge::graphview::insertparent (c++ function)": [[6, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", false]], "aidge::graphview::inview (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView6inViewERK7NodePtr", false], [6, "_CPPv4NK5Aidge9GraphView6inViewERKNSt6stringE", false]], "aidge::graphview::isinputnode (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView11isInputNodeERK7NodePtr", false]], "aidge::graphview::isoutputnode (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView12isOutputNodeERK7NodePtr", false]], "aidge::graphview::link (c++ function)": [[6, "_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE", false]], "aidge::graphview::logoutputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10logOutputsERKNSt6stringE", false]], "aidge::graphview::name (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView4nameEv", false]], "aidge::graphview::operator() (c++ function)": [[6, "_CPPv4N5Aidge9GraphViewclEKNSt6vectorI9ConnectorEE", false]], "aidge::graphview::operator== (c++ function)": [[6, "_CPPv4NK5Aidge9GraphVieweqERK9GraphView", false]], "aidge::graphview::operator[] (c++ function)": [[6, "_CPPv4NK5Aidge9GraphViewixERKNSt6stringE", false]], "aidge::graphview::outputnodes (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView11outputNodesEv", false]], "aidge::graphview::outputs (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView7outputsERKNSt6stringE", false], [6, "_CPPv4NK5Aidge9GraphView7outputsEv", false]], "aidge::graphview::remove (c++ function)": [[6, "_CPPv4N5Aidge9GraphView6removeE7NodePtrb", false]], "aidge::graphview::replace (c++ function)": [[6, "_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE", false], [6, "_CPPv4N5Aidge9GraphView7replaceERKNSt3setI7NodePtrEERKNSt3setI7NodePtrEE", false]], "aidge::graphview::rootnode (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView8rootNodeEv", false]], "aidge::graphview::save (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", false]], "aidge::graphview::setbackend (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t", false]], "aidge::graphview::setdataformat (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView13setDataFormatERK10DataFormat", false]], "aidge::graphview::setdatatype (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView11setDataTypeERK8DataType", false]], "aidge::graphview::setinputid (c++ function)": [[6, "_CPPv4N5Aidge9GraphView10setInputIdE9IOIndex_t9IOIndex_t", false]], "aidge::graphview::setname (c++ function)": [[6, "_CPPv4N5Aidge9GraphView7setNameERKNSt6stringE", false]], "aidge::graphview::setnodesname (c++ function)": [[6, "_CPPv4NK5Aidge9GraphView12setNodesNameEv", false]], "aidge::graphview::setorderedinputs (c++ function)": [[6, "_CPPv4N5Aidge9GraphView16setOrderedInputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", false]], "aidge::graphview::setorderedoutputs (c++ function)": [[6, "_CPPv4N5Aidge9GraphView17setOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", false]], "aidge::graphview::setrootnode (c++ function)": [[6, "_CPPv4N5Aidge9GraphView11setRootNodeE7NodePtr", false]], "aidge::graphview::swap (c++ function)": [[6, "_CPPv4N5Aidge9GraphView4swapER4NodeR4Node", false]], "aidge::graphview::updatenodename (c++ function)": [[6, "_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE", false]], "aidge::identity (c++ function)": [[9, "_CPPv4N5Aidge8IdentityERKNSt6stringE", false]], "aidge::implspec (c++ struct)": [[3, "_CPPv4N5Aidge8ImplSpecE", false]], "aidge::implspec::attrs (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec5attrsE", false]], "aidge::implspec::implspec (c++ function)": [[3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK17DynamicAttributes", false], [3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK17DynamicAttributes", false], [3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", false], [3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKN5Aidge8ImplSpecE", false], [3, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", false]], "aidge::implspec::inputs (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec6inputsE", false]], "aidge::implspec::iospec (c++ struct)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpecE", false]], "aidge::implspec::iospec::dims (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpec4dimsE", false]], "aidge::implspec::iospec::format (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpec6formatE", false]], "aidge::implspec::iospec::iospec (c++ function)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", false]], "aidge::implspec::iospec::type (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec6IOSpec4typeE", false]], "aidge::implspec::outputs (c++ member)": [[3, "_CPPv4N5Aidge8ImplSpec7outputsE", false]], "aidge::implspec::~implspec (c++ function)": [[3, "_CPPv4N5Aidge8ImplSpecD0Ev", false]], "aidge::leakyrelu (c++ function)": [[9, "_CPPv4N5Aidge9LeakyReLUEfRKNSt6stringE", false]], "aidge::lstm (c++ function)": [[9, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", false]], "aidge::matmul (c++ function)": [[9, "_CPPv4N5Aidge6MatMulERKNSt6stringE", false]], "aidge::matmultiling (c++ function)": [[10, "_CPPv4N5Aidge12matMulTilingE7NodePtrRKNSt6vectorI9DimSize_tEE", false]], "aidge::matmultofc (c++ function)": [[10, "_CPPv4N5Aidge10matMulToFCENSt10shared_ptrI9GraphViewEE", false]], "aidge::memorize (c++ function)": [[9, "_CPPv4N5Aidge8MemorizeEKNSt8uint32_tERKNSt6stringE", false]], "aidge::metaoperator (c++ function)": [[9, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", false]], "aidge::mnist (c++ class)": [[2, "_CPPv4N5Aidge5MNISTE", false]], "aidge::mnist::datatype (c++ enum)": [[2, "_CPPv4N5Aidge5MNIST8DataTypeE", false]], "aidge::mnist::datatype::double (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType6DoubleE", false]], "aidge::mnist::datatype::float (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType5FloatE", false]], "aidge::mnist::datatype::int (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType3IntE", false]], "aidge::mnist::datatype::short (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType5ShortE", false]], "aidge::mnist::datatype::signed (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType6SignedE", false]], "aidge::mnist::datatype::unsigned (c++ enumerator)": [[2, "_CPPv4N5Aidge5MNIST8DataType8UnsignedE", false]], "aidge::mnist::getitem (c++ function)": [[2, "_CPPv4NK5Aidge5MNIST7getItemEKNSt6size_tE", false]], "aidge::mnist::getlen (c++ function)": [[2, "_CPPv4NK5Aidge5MNIST6getLenEv", false]], "aidge::mnist::getnbmodalities (c++ function)": [[2, "_CPPv4NK5Aidge5MNIST15getNbModalitiesEv", false]], "aidge::mnist::magicnumber (c++ union)": [[2, "_CPPv4N5Aidge5MNIST11MagicNumberE", false]], "aidge::mnist::magicnumber::byte (c++ member)": [[2, "_CPPv4N5Aidge5MNIST11MagicNumber4byteE", false]], "aidge::mnist::magicnumber::value (c++ member)": [[2, "_CPPv4N5Aidge5MNIST11MagicNumber5valueE", false]], "aidge::mnist::mnist (c++ function)": [[2, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", false]], "aidge::mnist::~mnist (c++ function)": [[2, "_CPPv4N5Aidge5MNISTD0Ev", false]], "aidge::move (c++ function)": [[9, "_CPPv4N5Aidge4MoveERKNSt6stringE", false]], "aidge::mul (c++ function)": [[9, "_CPPv4N5Aidge3MulERKNSt6stringE", false]], "aidge::node (c++ class)": [[6, "_CPPv4N5Aidge4NodeE", false]], "aidge::node::addafterbackward (c++ function)": [[6, "_CPPv4N5Aidge4Node16addAfterBackwardENSt8functionIFbvEEE", false]], "aidge::node::addafterforward (c++ function)": [[6, "_CPPv4N5Aidge4Node15addAfterForwardENSt8functionIFbvEEE", false]], "aidge::node::addbeforebackward (c++ function)": [[6, "_CPPv4N5Aidge4Node17addBeforeBackwardENSt8functionIFbvEEE", false]], "aidge::node::addbeforeforward (c++ function)": [[6, "_CPPv4N5Aidge4Node16addBeforeForwardENSt8functionIFbvEEE", false]], "aidge::node::addchild (c++ function)": [[6, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", false], [6, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", false]], "aidge::node::addview (c++ function)": [[6, "_CPPv4N5Aidge4Node7addViewERKNSt10shared_ptrI9GraphViewEE", false]], "aidge::node::attributes (c++ function)": [[6, "_CPPv4NK5Aidge4Node10attributesEv", false]], "aidge::node::backward (c++ function)": [[6, "_CPPv4N5Aidge4Node8backwardEv", false]], "aidge::node::clone (c++ function)": [[6, "_CPPv4N5Aidge4Node5cloneE7NodePtr", false], [6, "_CPPv4NK5Aidge4Node5cloneEv", false]], "aidge::node::clonesharedoperators (c++ function)": [[6, "_CPPv4N5Aidge4Node20cloneSharedOperatorsE7NodePtr", false], [6, "_CPPv4NK5Aidge4Node20cloneSharedOperatorsEv", false]], "aidge::node::clonesharedproducers (c++ function)": [[6, "_CPPv4N5Aidge4Node20cloneSharedProducersE7NodePtr", false], [6, "_CPPv4NK5Aidge4Node20cloneSharedProducersEv", false]], "aidge::node::createuniquename (c++ function)": [[6, "_CPPv4N5Aidge4Node16createUniqueNameENSt6stringE", false]], "aidge::node::datainputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node10dataInputsEv", false]], "aidge::node::forward (c++ function)": [[6, "_CPPv4N5Aidge4Node7forwardEv", false]], "aidge::node::getchildren (c++ function)": [[6, "_CPPv4NK5Aidge4Node11getChildrenEK9IOIndex_t", false], [6, "_CPPv4NK5Aidge4Node11getChildrenEv", false]], "aidge::node::getfirstfreedatainput (c++ function)": [[6, "_CPPv4NK5Aidge4Node21getFirstFreeDataInputEv", false]], "aidge::node::getnbfreedatainputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node19getNbFreeDataInputsEv", false]], "aidge::node::getoperator (c++ function)": [[6, "_CPPv4NK5Aidge4Node11getOperatorEv", false]], "aidge::node::getorderedchildren (c++ function)": [[6, "_CPPv4NK5Aidge4Node18getOrderedChildrenEv", false]], "aidge::node::getparent (c++ function)": [[6, "_CPPv4N5Aidge4Node9getParentEK9IOIndex_t", false]], "aidge::node::getparents (c++ function)": [[6, "_CPPv4NK5Aidge4Node10getParentsEv", false]], "aidge::node::input (c++ function)": [[6, "_CPPv4NK5Aidge4Node5inputEK9IOIndex_t", false]], "aidge::node::inputcategory (c++ function)": [[6, "_CPPv4NK5Aidge4Node13inputCategoryE9IOIndex_t", false]], "aidge::node::inputname (c++ function)": [[6, "_CPPv4N5Aidge4Node9inputNameEK9IOIndex_tRKNSt6stringE", false], [6, "_CPPv4NK5Aidge4Node9inputNameEK9IOIndex_t", false]], "aidge::node::inputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node6inputsEv", false]], "aidge::node::inputsnames (c++ function)": [[6, "_CPPv4NK5Aidge4Node11inputsNamesEv", false]], "aidge::node::name (c++ function)": [[6, "_CPPv4NK5Aidge4Node4nameEv", false]], "aidge::node::nbinputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node8nbInputsEv", false]], "aidge::node::nboutputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node9nbOutputsEv", false]], "aidge::node::nbvalidinputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node13nbValidInputsEv", false]], "aidge::node::nbvalidoutputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node14nbValidOutputsEv", false]], "aidge::node::node (c++ function)": [[6, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEENSt10shared_ptrI17DynamicAttributesEE", false], [6, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEERKNSt6stringE", false], [6, "_CPPv4N5Aidge4Node4NodeEv", false]], "aidge::node::operator() (c++ function)": [[6, "_CPPv4N5Aidge4NodeclERKNSt6vectorI9ConnectorEE", false]], "aidge::node::operator== (c++ function)": [[6, "_CPPv4N5Aidge4NodeeqERK4NodeRK4Node", false]], "aidge::node::output (c++ function)": [[6, "_CPPv4NK5Aidge4Node6outputE9IOIndex_t", false]], "aidge::node::outputname (c++ function)": [[6, "_CPPv4N5Aidge4Node10outputNameE9IOIndex_tRKNSt6stringE", false], [6, "_CPPv4NK5Aidge4Node10outputNameE9IOIndex_t", false]], "aidge::node::outputs (c++ function)": [[6, "_CPPv4NK5Aidge4Node7outputsEv", false]], "aidge::node::outputsnames (c++ function)": [[6, "_CPPv4NK5Aidge4Node12outputsNamesEv", false]], "aidge::node::parentisbackedge (c++ function)": [[6, "_CPPv4NK5Aidge4Node16parentIsBackEdgeE9IOIndex_t", false]], "aidge::node::removechild (c++ function)": [[6, "_CPPv4N5Aidge4Node11removeChildEK7NodePtrK9IOIndex_t", false]], "aidge::node::removeview (c++ function)": [[6, "_CPPv4N5Aidge4Node10removeViewERKNSt10shared_ptrI9GraphViewEE", false]], "aidge::node::resetconnections (c++ function)": [[6, "_CPPv4N5Aidge4Node16resetConnectionsEb", false]], "aidge::node::setname (c++ function)": [[6, "_CPPv4N5Aidge4Node7setNameERKNSt6stringE", false]], "aidge::node::type (c++ function)": [[6, "_CPPv4NK5Aidge4Node4typeEv", false]], "aidge::node::valid (c++ function)": [[6, "_CPPv4NK5Aidge4Node5validEv", false]], "aidge::node::views (c++ function)": [[6, "_CPPv4NK5Aidge4Node5viewsEv", false]], "aidge::node::~node (c++ function)": [[6, "_CPPv4N5Aidge4NodeD0Ev", false]], "aidge::operator (c++ class)": [[9, "_CPPv4N5Aidge8OperatorE", false]], "aidge::operator::associateinput (c++ function)": [[9, "_CPPv4N5Aidge8Operator14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operator::attributes (c++ function)": [[9, "_CPPv4NK5Aidge8Operator10attributesEv", false]], "aidge::operator::backend (c++ function)": [[9, "_CPPv4NK5Aidge8Operator7backendEv", false]], "aidge::operator::backward (c++ function)": [[9, "_CPPv4N5Aidge8Operator8backwardEv", false]], "aidge::operator::clone (c++ function)": [[9, "_CPPv4NK5Aidge8Operator5cloneEv", false]], "aidge::operator::forward (c++ function)": [[9, "_CPPv4N5Aidge8Operator7forwardEv", false]], "aidge::operator::getavailablebackends (c++ function)": [[9, "_CPPv4NK5Aidge8Operator20getAvailableBackendsEv", false]], "aidge::operator::getimpl (c++ function)": [[9, "_CPPv4NK5Aidge8Operator7getImplEv", false]], "aidge::operator::getnbconsumeddata (c++ function)": [[9, "_CPPv4NK5Aidge8Operator17getNbConsumedDataEK9IOIndex_t", false]], "aidge::operator::getnbproduceddata (c++ function)": [[9, "_CPPv4NK5Aidge8Operator17getNbProducedDataEK9IOIndex_t", false]], "aidge::operator::getnbrequireddata (c++ function)": [[9, "_CPPv4NK5Aidge8Operator17getNbRequiredDataEK9IOIndex_t", false]], "aidge::operator::getnbrequiredprotected (c++ function)": [[9, "_CPPv4NK5Aidge8Operator22getNbRequiredProtectedEK9IOIndex_t", false]], "aidge::operator::getrawinput (c++ function)": [[9, "_CPPv4NK5Aidge8Operator11getRawInputEK9IOIndex_t", false]], "aidge::operator::getrawoutput (c++ function)": [[9, "_CPPv4NK5Aidge8Operator12getRawOutputEK9IOIndex_t", false]], "aidge::operator::getrequiredmemory (c++ function)": [[9, "_CPPv4NK5Aidge8Operator17getRequiredMemoryEK9IOIndex_tRKNSt6vectorI9DimSize_tEE", false]], "aidge::operator::inheritedattributes (c++ function)": [[9, "_CPPv4NK5Aidge8Operator19inheritedAttributesEv", false]], "aidge::operator::inputcategory (c++ function)": [[9, "_CPPv4NK5Aidge8Operator13inputCategoryE9IOIndex_t", false], [9, "_CPPv4NK5Aidge8Operator13inputCategoryEv", false]], "aidge::operator::isatomic (c++ function)": [[9, "_CPPv4NK5Aidge8Operator8isAtomicEv", false]], "aidge::operator::isbackedge (c++ function)": [[9, "_CPPv4NK5Aidge8Operator10isBackEdgeE9IOIndex_t", false]], "aidge::operator::isoptionalinput (c++ function)": [[9, "_CPPv4NK5Aidge8Operator15isOptionalInputENSt6size_tE", false]], "aidge::operator::nbinputs (c++ function)": [[9, "_CPPv4NK5Aidge8Operator8nbInputsEv", false]], "aidge::operator::nboutputs (c++ function)": [[9, "_CPPv4NK5Aidge8Operator9nbOutputsEv", false]], "aidge::operator::operator (c++ function)": [[9, "_CPPv4N5Aidge8Operator8OperatorERK8Operator", false], [9, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", false], [9, "_CPPv4N5Aidge8Operator8OperatorEv", false]], "aidge::operator::operatortype (c++ function)": [[9, "_CPPv4NK5Aidge8Operator12operatorTypeEv", false]], "aidge::operator::resetconsummerproducer (c++ function)": [[9, "_CPPv4N5Aidge8Operator22resetConsummerProducerEv", false]], "aidge::operator::resetinput (c++ function)": [[9, "_CPPv4N5Aidge8Operator10resetInputEK9IOIndex_t", false]], "aidge::operator::setbackedges (c++ function)": [[9, "_CPPv4N5Aidge8Operator12setBackEdgesERKNSt3setI9IOIndex_tEE", false]], "aidge::operator::setbackend (c++ function)": [[9, "_CPPv4N5Aidge8Operator10setBackendERKNSt6stringE11DeviceIdx_t", false], [9, "_CPPv4N5Aidge8Operator10setBackendERKNSt6vectorINSt4pairINSt6stringE11DeviceIdx_tEEEE", false]], "aidge::operator::setdataformat (c++ function)": [[9, "_CPPv4NK5Aidge8Operator13setDataFormatERK10DataFormat", false]], "aidge::operator::setdatatype (c++ function)": [[9, "_CPPv4NK5Aidge8Operator11setDataTypeERK8DataType", false]], "aidge::operator::setimpl (c++ function)": [[9, "_CPPv4N5Aidge8Operator7setImplENSt10shared_ptrI12OperatorImplEE", false]], "aidge::operator::setinheritedattrs (c++ function)": [[9, "_CPPv4N5Aidge8Operator17setInheritedAttrsERNSt10shared_ptrI17DynamicAttributesEE", false]], "aidge::operator::setinput (c++ function)": [[9, "_CPPv4N5Aidge8Operator8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operator::setoutput (c++ function)": [[9, "_CPPv4NK5Aidge8Operator9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operator::type (c++ function)": [[9, "_CPPv4NK5Aidge8Operator4typeEv", false]], "aidge::operator::updateconsummerproducer (c++ function)": [[9, "_CPPv4N5Aidge8Operator23updateConsummerProducerEv", false]], "aidge::operator::~operator (c++ function)": [[9, "_CPPv4N5Aidge8OperatorD0Ev", false]], "aidge::operatortensor (c++ class)": [[9, "_CPPv4N5Aidge14OperatorTensorE", false]], "aidge::operatortensor::associateinput (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operatortensor::computereceptivefield (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", false]], "aidge::operatortensor::dimsforwarded (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor13dimsForwardedEv", false]], "aidge::operatortensor::forward (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor7forwardEv", false]], "aidge::operatortensor::forwarddims (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor11forwardDimsEb", false]], "aidge::operatortensor::forwarddtype (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor12forwardDTypeEv", false]], "aidge::operatortensor::getinput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor8getInputEK9IOIndex_t", false]], "aidge::operatortensor::getinputs (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor9getInputsEv", false]], "aidge::operatortensor::getoutput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor9getOutputEK9IOIndex_t", false]], "aidge::operatortensor::getoutputs (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor10getOutputsEv", false]], "aidge::operatortensor::getrawinput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor11getRawInputEK9IOIndex_t", false]], "aidge::operatortensor::getrawoutput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor12getRawOutputEKN5Aidge9IOIndex_tE", false]], "aidge::operatortensor::operatortensor (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERK14OperatorTensor", false], [9, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", false], [9, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorEv", false]], "aidge::operatortensor::resetinput (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor10resetInputEK9IOIndex_t", false]], "aidge::operatortensor::setdataformat (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor13setDataFormatERK10DataFormat", false]], "aidge::operatortensor::setdatatype (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor11setDataTypeERK8DataType", false]], "aidge::operatortensor::setinput (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensor8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operatortensor::setoutput (c++ function)": [[9, "_CPPv4NK5Aidge14OperatorTensor9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", false]], "aidge::operatortensor::~operatortensor (c++ function)": [[9, "_CPPv4N5Aidge14OperatorTensorD0Ev", false]], "aidge::pad (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", false]], "aidge::paddedavgpooling (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", false]], "aidge::paddedconv (c++ function)": [[9, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::paddedconvdepthwise (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", false]], "aidge::paddedmaxpooling (c++ function)": [[9, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", false]], "aidge::parallel (c++ function)": [[6, "_CPPv4N5Aidge8ParallelENSt6vectorI6OpArgsEENSt6stringE", false]], "aidge::parallelscheduler (c++ class)": [[11, "_CPPv4N5Aidge17ParallelSchedulerE", false]], "aidge::parallelscheduler::forward (c++ function)": [[11, "_CPPv4N5Aidge17ParallelScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", false]], "aidge::parallelscheduler::parallelscheduler (c++ function)": [[11, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", false]], "aidge::parallelscheduler::~parallelscheduler (c++ function)": [[11, "_CPPv4N5Aidge17ParallelSchedulerD0Ev", false]], "aidge::pop (c++ function)": [[9, "_CPPv4N5Aidge3PopERKNSt6stringE", false]], "aidge::pow (c++ function)": [[9, "_CPPv4N5Aidge3PowERKNSt6stringE", false]], "aidge::producer (c++ function)": [[9, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", false], [9, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", false]], "aidge::reducemean (c++ function)": [[9, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE", false]], "aidge::relu (c++ function)": [[9, "_CPPv4N5Aidge4ReLUERKNSt6stringE", false]], "aidge::removedropout (c++ function)": [[10, "_CPPv4N5Aidge13removeDropoutENSt10shared_ptrI9GraphViewEE", false]], "aidge::removeflatten (c++ function)": [[10, "_CPPv4N5Aidge13removeFlattenENSt10shared_ptrI9GraphViewEE", false]], "aidge::reshape (c++ function)": [[9, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", false]], "aidge::residual (c++ function)": [[6, "_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE", false]], "aidge::scheduler (c++ class)": [[11, "_CPPv4N5Aidge9SchedulerE", false]], "aidge::scheduler::availabledatastatus (c++ enum)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatusE", false]], "aidge::scheduler::availabledatastatus::connected (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus9ConnectedE", false]], "aidge::scheduler::availabledatastatus::notconnected (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus12NotConnectedE", false]], "aidge::scheduler::availabledatastatus::uppernodeinputconnected (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus23UpperNodeInputConnectedE", false]], "aidge::scheduler::availabledatastatus::uppernodeinputfound (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus19UpperNodeInputFoundE", false]], "aidge::scheduler::availabledatastatus::validtensor (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus11ValidTensorE", false]], "aidge::scheduler::clearscheduling (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler15clearSchedulingEv", false]], "aidge::scheduler::connectinputs (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler13connectInputsERKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", false]], "aidge::scheduler::exectime (c++ class)": [[11, "_CPPv4N5Aidge9Scheduler8ExecTimeE", false]], "aidge::scheduler::exectime::get (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler8ExecTime3getEv", false]], "aidge::scheduler::exectime::update (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler8ExecTime6updateERKNSt6vectorI17SchedulingElementEE", false]], "aidge::scheduler::generatescheduling (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler18generateSchedulingEv", false]], "aidge::scheduler::getbackwardscheduling (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler21getBackwardSchedulingEv", false]], "aidge::scheduler::getforwardscheduling (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler20getForwardSchedulingEv", false]], "aidge::scheduler::getsequentialstaticscheduling (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler29getSequentialStaticSchedulingENSt6size_tE16SchedulingPolicy", false]], "aidge::scheduler::getstaticscheduling (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler19getStaticSchedulingENSt6size_tE", false]], "aidge::scheduler::graphview (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler9graphViewEv", false]], "aidge::scheduler::nodeexectime (c++ struct)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTimeE", false]], "aidge::scheduler::nodeexectime::mcount (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime6mCountE", false]], "aidge::scheduler::nodeexectime::mean (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler12NodeExecTime4meanEv", false]], "aidge::scheduler::nodeexectime::mm2 (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime3mM2E", false]], "aidge::scheduler::nodeexectime::mmean (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime5mMeanE", false]], "aidge::scheduler::nodeexectime::nodeexectime (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime12NodeExecTimeEv", false]], "aidge::scheduler::nodeexectime::stddev (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler12NodeExecTime6stdDevEv", false]], "aidge::scheduler::nodeexectime::update (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler12NodeExecTime6updateENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", false]], "aidge::scheduler::priorproducersconsumers (c++ struct)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumersE", false]], "aidge::scheduler::priorproducersconsumers::isprior (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers7isPriorE", false]], "aidge::scheduler::priorproducersconsumers::priorconsumers (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers14priorConsumersE", false]], "aidge::scheduler::priorproducersconsumers::priorproducersconsumers (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers23PriorProducersConsumersERK23PriorProducersConsumers", false], [11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers23PriorProducersConsumersEv", false]], "aidge::scheduler::priorproducersconsumers::requiredproducers (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers17requiredProducersE", false]], "aidge::scheduler::priorproducersconsumers::~priorproducersconsumers (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumersD0Ev", false]], "aidge::scheduler::resetscheduling (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler15resetSchedulingEv", false]], "aidge::scheduler::savefactorizedstaticschedulingdiagram (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", false]], "aidge::scheduler::saveschedulingdiagram (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler21saveSchedulingDiagramERKNSt6stringEb", false]], "aidge::scheduler::savestaticschedulingdiagram (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler27saveStaticSchedulingDiagramERKNSt6stringEb", false]], "aidge::scheduler::scheduler (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", false], [11, "_CPPv4N5Aidge9Scheduler9SchedulerEv", false]], "aidge::scheduler::schedulingelement (c++ struct)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElementE", false]], "aidge::scheduler::schedulingelement::end (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElement3endE", false]], "aidge::scheduler::schedulingelement::node (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElement4nodeE", false]], "aidge::scheduler::schedulingelement::schedulingelement (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", false]], "aidge::scheduler::schedulingelement::start (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElement5startE", false]], "aidge::scheduler::schedulingelement::~schedulingelement (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler17SchedulingElementD0Ev", false]], "aidge::scheduler::schedulingpolicy (c++ enum)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicyE", false]], "aidge::scheduler::schedulingpolicy::aslateaspossible (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy16AsLateAsPossibleE", false]], "aidge::scheduler::schedulingpolicy::assoonaspossible (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy16AsSoonAsPossibleE", false]], "aidge::scheduler::schedulingpolicy::default (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy7DefaultE", false]], "aidge::scheduler::schedulingpolicy::longuestbranchfirst (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy19LonguestBranchFirstE", false]], "aidge::scheduler::schedulingpolicy::shortestbranchfirst (c++ enumerator)": [[11, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy19ShortestBranchFirstE", false]], "aidge::scheduler::staticschedulingelement (c++ struct)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElementE", false]], "aidge::scheduler::staticschedulingelement::earlierthan (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement11earlierThanE", false]], "aidge::scheduler::staticschedulingelement::early (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement5earlyE", false]], "aidge::scheduler::staticschedulingelement::late (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement4lateE", false]], "aidge::scheduler::staticschedulingelement::laterthan (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement9laterThanE", false]], "aidge::scheduler::staticschedulingelement::node (c++ member)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement4nodeE", false]], "aidge::scheduler::staticschedulingelement::staticschedulingelement (c++ function)": [[11, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", false]], "aidge::scheduler::tagconditionalnodes (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler19tagConditionalNodesEv", false]], "aidge::scheduler::tagforkbranches (c++ function)": [[11, "_CPPv4NK5Aidge9Scheduler15tagForkBranchesEv", false]], "aidge::scheduler::~scheduler (c++ function)": [[11, "_CPPv4N5Aidge9SchedulerD0Ev", false]], "aidge::sequential (c++ function)": [[6, "_CPPv4N5Aidge10SequentialENSt6vectorI6OpArgsEENSt6stringE", false]], "aidge::sequentialscheduler (c++ class)": [[11, "_CPPv4N5Aidge19SequentialSchedulerE", false]], "aidge::sequentialscheduler::backward (c++ function)": [[11, "_CPPv4N5Aidge19SequentialScheduler8backwardEv", false]], "aidge::sequentialscheduler::forward (c++ function)": [[11, "_CPPv4N5Aidge19SequentialScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", false]], "aidge::sequentialscheduler::generatememory (c++ function)": [[11, "_CPPv4NK5Aidge19SequentialScheduler14generateMemoryEbb", false]], "aidge::sequentialscheduler::generatememoryautoconcat (c++ function)": [[11, "_CPPv4NK5Aidge19SequentialScheduler24generateMemoryAutoConcatEbb", false]], "aidge::sequentialscheduler::getsequentialstaticscheduling (c++ function)": [[11, "_CPPv4NK5Aidge19SequentialScheduler29getSequentialStaticSchedulingENSt6size_tE", false]], "aidge::sequentialscheduler::sequentialscheduler (c++ function)": [[11, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", false]], "aidge::sequentialscheduler::setschedulingpolicy (c++ function)": [[11, "_CPPv4N5Aidge19SequentialScheduler19setSchedulingPolicyE16SchedulingPolicy", false]], "aidge::sequentialscheduler::~sequentialscheduler (c++ function)": [[11, "_CPPv4N5Aidge19SequentialSchedulerD0Ev", false]], "aidge::sigmoid (c++ function)": [[9, "_CPPv4N5Aidge7SigmoidERKNSt6stringE", false]], "aidge::singlepassgraphmatching (c++ class)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatchingE", false]], "aidge::singlepassgraphmatching::addnodelambda (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching13addNodeLambdaERKNSt6stringENSt8functionIFbRKNSt10shared_ptrI4NodeEEEEE", false]], "aidge::singlepassgraphmatching::context (c++ struct)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextE", false]], "aidge::singlepassgraphmatching::context::anchors (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7anchorsE", false]], "aidge::singlepassgraphmatching::context::context (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7ContextERK7Context", false], [7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7ContextEv", false]], "aidge::singlepassgraphmatching::context::depth (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context5depthE", false]], "aidge::singlepassgraphmatching::context::edgeleftidx (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context11edgeLeftIdxE", false]], "aidge::singlepassgraphmatching::context::edgerightidx (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12edgeRightIdxE", false]], "aidge::singlepassgraphmatching::context::firstnode (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context9firstNodeE", false]], "aidge::singlepassgraphmatching::context::firstsequence (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context13firstSequenceE", false]], "aidge::singlepassgraphmatching::context::insequence (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context10inSequenceE", false]], "aidge::singlepassgraphmatching::context::lookforchild (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12lookForChildE", false]], "aidge::singlepassgraphmatching::context::operator= (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextaSERK7Context", false]], "aidge::singlepassgraphmatching::context::query (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context5queryE", false]], "aidge::singlepassgraphmatching::context::singleoutput (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12singleOutputE", false]], "aidge::singlepassgraphmatching::context::startnode (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7Context9startNodeE", false]], "aidge::singlepassgraphmatching::context::~context (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextD0Ev", false]], "aidge::singlepassgraphmatching::filterlonguestdisjoint (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching22filterLonguestDisjointERKNSt3setI14MatchingResultEE", false]], "aidge::singlepassgraphmatching::match (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching5matchERKNSt6stringEb", false]], "aidge::singlepassgraphmatching::matchfrom (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching9matchFromENSt10shared_ptrI4NodeEERKNSt6stringE", false]], "aidge::singlepassgraphmatching::matchingresult (c++ struct)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultE", false]], "aidge::singlepassgraphmatching::matchingresult::anchors (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult7anchorsE", false]], "aidge::singlepassgraphmatching::matchingresult::graph (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult5graphE", false]], "aidge::singlepassgraphmatching::matchingresult::matchingresult (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultERK14MatchingResult", false], [7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultEv", false]], "aidge::singlepassgraphmatching::matchingresult::operator= (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultaSERK14MatchingResult", false]], "aidge::singlepassgraphmatching::matchingresult::startnode (c++ member)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult9startNodeE", false]], "aidge::singlepassgraphmatching::matchingresult::~matchingresult (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultD0Ev", false]], "aidge::singlepassgraphmatching::operator= (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatchingaSERK23SinglePassGraphMatching", false]], "aidge::singlepassgraphmatching::singlepassgraphmatching (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingENSt10shared_ptrI9GraphViewEE", false], [7, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingERK23SinglePassGraphMatching", false], [7, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingEv", false]], "aidge::singlepassgraphmatching::~singlepassgraphmatching (c++ function)": [[7, "_CPPv4N5Aidge23SinglePassGraphMatchingD0Ev", false]], "aidge::slice (c++ function)": [[9, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", false]], "aidge::softmax (c++ function)": [[9, "_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE", false]], "aidge::sqrt (c++ function)": [[9, "_CPPv4N5Aidge4SqrtERKNSt6stringE", false]], "aidge::sub (c++ function)": [[9, "_CPPv4N5Aidge3SubERKNSt6stringE", false]], "aidge::tanh (c++ function)": [[9, "_CPPv4N5Aidge4TanhERKNSt6stringE", false]], "aidge::tensor (c++ class)": [[4, "_CPPv4N5Aidge6TensorE", false]], "aidge::tensor::abs (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor3absEv", false]], "aidge::tensor::backend (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7backendEv", false]], "aidge::tensor::capacity (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor8capacityEv", false]], "aidge::tensor::clip (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor4clipEff", false]], "aidge::tensor::clone (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor5cloneEv", false]], "aidge::tensor::copycast (c++ function)": [[4, "_CPPv4N5Aidge6Tensor8copyCastERK6Tensor", false]], "aidge::tensor::copycastfrom (c++ function)": [[4, "_CPPv4N5Aidge6Tensor12copyCastFromERK6Tensor", false], [4, "_CPPv4N5Aidge6Tensor12copyCastFromERK6TensorRNSt10shared_ptrI6TensorEE", false]], "aidge::tensor::copyfrom (c++ function)": [[4, "_CPPv4N5Aidge6Tensor8copyFromERK6Tensor", false]], "aidge::tensor::copytranspose (c++ function)": [[4, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRK19DataFormatTranspose", false], [4, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRKNSt6vectorI9DimSize_tEE", false]], "aidge::tensor::dataformat (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor10dataFormatEv", false]], "aidge::tensor::datatype (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor8dataTypeEv", false]], "aidge::tensor::device (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6deviceEv", false]], "aidge::tensor::dim (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor3dimE8DimIdx_t", false]], "aidge::tensor::dims (c++ function)": [[4, "_CPPv4I_8DimIdx_tENK5Aidge6Tensor4dimsENSt5arrayI9DimSize_t3DIMEEv", false], [4, "_CPPv4NK5Aidge6Tensor4dimsEv", false]], "aidge::tensor::empty (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor5emptyEv", false]], "aidge::tensor::extract (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEE", false], [4, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEERKNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::get (c++ function)": [[4, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6size_tE", false], [4, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::getavailablebackends (c++ function)": [[4, "_CPPv4N5Aidge6Tensor20getAvailableBackendsEv", false]], "aidge::tensor::getcoord (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor8getCoordENSt6size_tE", false]], "aidge::tensor::getidx (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6getIdxERKNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::getimpl (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7getImplEv", false]], "aidge::tensor::getimploffset (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor13getImplOffsetEv", false]], "aidge::tensor::getstorageidx (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor13getStorageIdxERKNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::grad (c++ function)": [[4, "_CPPv4N5Aidge6Tensor4gradEv", false]], "aidge::tensor::hasimpl (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7hasImplEv", false]], "aidge::tensor::iscontiguous (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor12isContiguousEv", false]], "aidge::tensor::isinbounds (c++ function)": [[4, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", false], [4, "_CPPv4N5Aidge6Tensor10isInBoundsERKNSt6vectorI9DimSize_tEEKNSt6size_tE", false]], "aidge::tensor::makecontiguous (c++ function)": [[4, "_CPPv4N5Aidge6Tensor14makeContiguousEv", false]], "aidge::tensor::mean (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor4meanEv", false]], "aidge::tensor::nbdims (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6nbDimsEv", false]], "aidge::tensor::operator* (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", false], [4, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", false], [4, "_CPPv4NK5Aidge6TensormlERK6Tensor", false]], "aidge::tensor::operator*= (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", false], [4, "_CPPv4N5Aidge6TensormLERK6Tensor", false]], "aidge::tensor::operator+ (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", false], [4, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", false], [4, "_CPPv4NK5Aidge6TensorplERK6Tensor", false]], "aidge::tensor::operator+= (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", false], [4, "_CPPv4N5Aidge6TensorpLERK6Tensor", false]], "aidge::tensor::operator- (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", false], [4, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", false], [4, "_CPPv4NK5Aidge6TensormiERK6Tensor", false]], "aidge::tensor::operator-= (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", false], [4, "_CPPv4N5Aidge6TensormIERK6Tensor", false]], "aidge::tensor::operator/ (c++ function)": [[4, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", false], [4, "_CPPv4NK5Aidge6TensordvERK6Tensor", false]], "aidge::tensor::operator/= (c++ function)": [[4, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", false], [4, "_CPPv4N5Aidge6TensordVERK6Tensor", false]], "aidge::tensor::operator= (c++ function)": [[4, "_CPPv4I0EN5Aidge6TensoraSER6TensorRR6VectorI1TE", false], [4, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", false], [4, "_CPPv4N5Aidge6TensoraSERK6Tensor", false], [4, "_CPPv4N5Aidge6TensoraSERR6Tensor", false]], "aidge::tensor::operator== (c++ function)": [[4, "_CPPv4NK5Aidge6TensoreqERK6Tensor", false]], "aidge::tensor::print (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor5printEv", false]], "aidge::tensor::ref (c++ function)": [[4, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", false], [4, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", false], [4, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", false], [4, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", false]], "aidge::tensor::refcast (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", false], [4, "_CPPv4NK5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", false]], "aidge::tensor::refcastfrom (c++ function)": [[4, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", false], [4, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", false], [4, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", false], [4, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", false]], "aidge::tensor::refcontiguous (c++ function)": [[4, "_CPPv4N5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", false], [4, "_CPPv4NK5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", false]], "aidge::tensor::reffrom (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", false], [4, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", false]], "aidge::tensor::repeat (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6repeatEi", false]], "aidge::tensor::resize (c++ function)": [[4, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge6Tensor6resizeEvRKNSt5arrayI9DimSize_t3DIMEE", false], [4, "_CPPv4N5Aidge6Tensor6resizeERKNSt6vectorI9DimSize_tEENSt6vectorI9DimSize_tEE", false]], "aidge::tensor::set (c++ function)": [[4, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", false], [4, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", false]], "aidge::tensor::setbackend (c++ function)": [[4, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", false]], "aidge::tensor::setdataformat (c++ function)": [[4, "_CPPv4N5Aidge6Tensor13setDataFormatEK10DataFormatb", false]], "aidge::tensor::setdatatype (c++ function)": [[4, "_CPPv4N5Aidge6Tensor11setDataTypeEK8DataTypeb", false]], "aidge::tensor::setgrad (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7setGradENSt10shared_ptrI6TensorEE", false]], "aidge::tensor::setimpl (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7setImplENSt10shared_ptrI10TensorImplEENSt6size_tE", false]], "aidge::tensor::size (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor4sizeEv", false]], "aidge::tensor::sqrt (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor4sqrtEv", false]], "aidge::tensor::stride (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor6strideE8DimIdx_t", false]], "aidge::tensor::strides (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor7stridesEv", false]], "aidge::tensor::tensor (c++ function)": [[4, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", false], [4, "_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE", false], [4, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", false], [4, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", false], [4, "_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat", false], [4, "_CPPv4N5Aidge6Tensor6TensorERK6Tensor", false], [4, "_CPPv4N5Aidge6Tensor6TensorERKNSt6vectorI9DimSize_tEE", false], [4, "_CPPv4N5Aidge6Tensor6TensorERR6Tensor", false]], "aidge::tensor::tocoord (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE", false]], "aidge::tensor::toindex (c++ function)": [[4, "_CPPv4N5Aidge6Tensor7toIndexERKNSt6vectorI9DimSize_tEERKNSt6vectorINSt6size_tEEE", false]], "aidge::tensor::tostring (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor8toStringEiNSt6size_tE", false]], "aidge::tensor::type (c++ member)": [[4, "_CPPv4N5Aidge6Tensor4TypeE", false]], "aidge::tensor::undefined (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor9undefinedEv", false]], "aidge::tensor::zeros (c++ function)": [[4, "_CPPv4NK5Aidge6Tensor5zerosEv", false]], "aidge::tensor::~tensor (c++ function)": [[4, "_CPPv4N5Aidge6TensorD0Ev", false]], "aidge::tensoropencv (c++ function)": [[2, "_CPPv4N5Aidge12tensorOpencvEN2cv3MatE", false]], "aidge::transpose (c++ function)": [[9, "_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE", false]], "aidge_onnx.node_import.onnx_node_converter_ (built-in variable)": [[13, "aidge_onnx.node_import.ONNX_NODE_CONVERTER_", false]], "associate_input() (aidge_core.operator method)": [[9, "aidge_core.Operator.associate_input", false]], "associate_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.associate_input", false]], "attributes() (aidge_core.node method)": [[6, "aidge_core.Node.attributes", false]], "auto_register_export() (in module aidge_onnx.node_export)": [[13, "aidge_onnx.node_export.auto_register_export", false]], "auto_register_import() (in module aidge_onnx.node_import)": [[13, "aidge_onnx.node_import.auto_register_import", false]], "avgpooling1d() (in module aidge_core)": [[9, "aidge_core.AvgPooling1D", false]], "avgpooling2d() (in module aidge_core)": [[9, "aidge_core.AvgPooling2D", false]], "avgpooling3d() (in module aidge_core)": [[9, "aidge_core.AvgPooling3D", false]], "backend() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.backend", false]], "backend() (aidge_core.operator method)": [[9, "aidge_core.Operator.backend", false]], "backend() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.backend", false]], "backend() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.backend", false]], "backward() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.backward", false]], "backward() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.backward", false]], "batchnorm2d() (in module aidge_core)": [[9, "aidge_core.BatchNorm2D", false]], "calibrate (c++ function)": [[12, "_CPPv49calibrate23calibration_folder_path15cache_file_path10batch_size", false]], "capacity() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.capacity", false]], "clear_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.clear_scheduling", false]], "clear_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.clear_scheduling", false]], "clear_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.clear_scheduling", false]], "clone() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.clone", false]], "clone() (aidge_core.node method)": [[6, "aidge_core.Node.clone", false]], "clone() (aidge_core.operator method)": [[9, "aidge_core.Operator.clone", false]], "clone() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.clone", false]], "clone() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.clone", false]], "compile() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.compile", false]], "concat() (in module aidge_core)": [[9, "aidge_core.Concat", false]], "connector (class in aidge_core)": [[6, "aidge_core.Connector", false]], "conv1d() (in module aidge_core)": [[9, "aidge_core.Conv1D", false]], "conv2d() (in module aidge_core)": [[9, "aidge_core.Conv2D", false]], "convdepthwise1d() (in module aidge_core)": [[9, "aidge_core.ConvDepthWise1D", false]], "convdepthwise2d() (in module aidge_core)": [[9, "aidge_core.ConvDepthWise2D", false]], "cpy_transpose() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.cpy_transpose", false]], "create_unique_name() (aidge_core.node method)": [[6, "aidge_core.Node.create_unique_name", false]], "dataprovider (class in aidge_core)": [[4, "aidge_core.DataProvider", false]], "device (c++ function)": [[12, "_CPPv46device2id", false]], "dformat() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.dformat", false]], "dims() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.dims", false]], "dims_forwarded() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.dims_forwarded", false]], "div() (in module aidge_core)": [[9, "aidge_core.Div", false]], "dtype() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.dtype", false]], "erf() (in module aidge_core)": [[9, "aidge_core.Erf", false]], "expand_metaops() (in module aidge_core)": [[10, "aidge_core.expand_metaops", false]], "export() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.export", false]], "export() (in module aidge_export_tensorrt)": [[12, "aidge_export_tensorrt.export", false]], "export_onnx() (in module aidge_onnx)": [[13, "aidge_onnx.export_onnx", false]], "exportlib (class in aidge_core.export_utils)": [[5, "aidge_core.export_utils.ExportLib", false]], "exportnode (class in aidge_core.export_utils)": [[5, "aidge_core.export_utils.ExportNode", false]], "exportnodecpp (class in aidge_core.export_utils)": [[5, "aidge_core.export_utils.ExportNodeCpp", false]], "fc() (in module aidge_core)": [[9, "aidge_core.FC", false]], "forward() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.forward", false]], "forward() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.forward", false]], "forward() (aidge_core.operator method)": [[9, "aidge_core.Operator.forward", false]], "forward() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.forward", false]], "forward() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.forward", false]], "forward() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.forward", false]], "forward_dims() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.forward_dims", false]], "forward_dims() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.forward_dims", false]], "forward_dtype() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.forward_dtype", false]], "forward_dtype() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.forward_dtype", false]], "fuse_batchnorm() (in module aidge_core)": [[10, "aidge_core.fuse_batchnorm", false]], "fuse_to_metaops() (in module aidge_core)": [[10, "aidge_core.fuse_to_metaops", false]], "gather() (in module aidge_core)": [[9, "aidge_core.Gather", false]], "generate_graph() (in module aidge_core)": [[6, "aidge_core.generate_graph", false]], "generate_memory() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.generate_memory", false]], "generate_memory_auto_concat() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.generate_memory_auto_concat", false]], "generate_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.generate_scheduling", false]], "generate_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.generate_scheduling", false]], "generate_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.generate_scheduling", false]], "generic_export() (in module aidge_onnx.node_export.generic_export)": [[13, "aidge_onnx.node_export.generic_export.generic_export", false]], "genericoperator() (in module aidge_core)": [[9, "aidge_core.GenericOperator", false]], "get_adaptation() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_adaptation", false]], "get_available_backends() (aidge_core.tensor static method)": [[4, "aidge_core.Tensor.get_available_backends", false]], "get_available_impl_specs() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_available_impl_specs", false]], "get_backward_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.get_backward_scheduling", false]], "get_backward_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.get_backward_scheduling", false]], "get_backward_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.get_backward_scheduling", false]], "get_best_adaptation() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_best_adaptation", false]], "get_best_match() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_best_match", false]], "get_children() (aidge_core.node method)": [[6, "aidge_core.Node.get_children", false]], "get_connected_graph_view() (in module aidge_core)": [[6, "aidge_core.get_connected_graph_view", false]], "get_coord() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.get_coord", false]], "get_export_node() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_export_node", false]], "get_forward_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.get_forward_scheduling", false]], "get_forward_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.get_forward_scheduling", false]], "get_forward_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.get_forward_scheduling", false]], "get_idx() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.get_idx", false]], "get_impl() (aidge_core.operator method)": [[9, "aidge_core.Operator.get_impl", false]], "get_impl() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_impl", false]], "get_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_input", false]], "get_input_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_input_nodes", false]], "get_inputs() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_inputs", false]], "get_item() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.get_item", false]], "get_len() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.get_len", false]], "get_nb_inputs() (aidge_core.node method)": [[6, "aidge_core.Node.get_nb_inputs", false]], "get_nb_modalities() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.get_nb_modalities", false]], "get_nb_outputs() (aidge_core.node method)": [[6, "aidge_core.Node.get_nb_outputs", false]], "get_node() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_node", false]], "get_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_nodes", false]], "get_operator() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_operator", false]], "get_operator() (aidge_core.node method)": [[6, "aidge_core.Node.get_operator", false]], "get_ordered_children() (aidge_core.node method)": [[6, "aidge_core.Node.get_ordered_children", false]], "get_ordered_inputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ordered_inputs", false]], "get_ordered_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ordered_nodes", false]], "get_ordered_outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ordered_outputs", false]], "get_output() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_output", false]], "get_output_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_output_nodes", false]], "get_outputs() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_outputs", false]], "get_parent() (aidge_core.node method)": [[6, "aidge_core.Node.get_parent", false]], "get_parents() (aidge_core.node method)": [[6, "aidge_core.Node.get_parents", false]], "get_prod_conso() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_prod_conso", false]], "get_ranked_nodes() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ranked_nodes", false]], "get_ranked_nodes_name() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.get_ranked_nodes_name", false]], "get_raw_input() (aidge_core.operator method)": [[9, "aidge_core.Operator.get_raw_input", false]], "get_raw_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_raw_input", false]], "get_raw_output() (aidge_core.operator method)": [[9, "aidge_core.Operator.get_raw_output", false]], "get_raw_output() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.get_raw_output", false]], "get_required_spec() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.get_required_spec", false]], "get_sequential_static_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.get_sequential_static_scheduling", false]], "get_sequential_static_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.get_sequential_static_scheduling", false]], "get_sequential_static_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.get_sequential_static_scheduling", false]], "get_static_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.get_static_scheduling", false]], "get_static_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.get_static_scheduling", false]], "get_static_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.get_static_scheduling", false]], "grad() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.grad", false]], "graph_view() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.graph_view", false]], "graph_view() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.graph_view", false]], "graph_view() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.graph_view", false]], "graphview (class in aidge_core)": [[6, "aidge_core.GraphView", false]], "has_impl() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.has_impl", false]], "identity() (in module aidge_core)": [[9, "aidge_core.Identity", false]], "implspec (class in aidge_core)": [[3, "aidge_core.ImplSpec", false]], "import_generic() (in module aidge_onnx.node_import.generic)": [[13, "aidge_onnx.node_import.generic.import_generic", false]], "in_view() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.in_view", false]], "initialize (c++ function)": [[12, "_CPPv410initializev", false]], "input() (aidge_core.node method)": [[6, "aidge_core.Node.input", false]], "input_category() (aidge_core.node method)": [[6, "aidge_core.Node.input_category", false]], "input_category() (aidge_core.operator method)": [[9, "aidge_core.Operator.input_category", false]], "input_category() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.input_category", false]], "input_name() (aidge_core.node method)": [[6, "aidge_core.Node.input_name", false]], "inputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.inputs", false]], "inputs() (aidge_core.node method)": [[6, "aidge_core.Node.inputs", false]], "inputs_names() (aidge_core.node method)": [[6, "aidge_core.Node.inputs_names", false]], "insert_parent() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.insert_parent", false]], "iospec (class in aidge_core)": [[3, "aidge_core.IOSpec", false]], "is_atomic() (aidge_core.operator method)": [[9, "aidge_core.Operator.is_atomic", false]], "is_atomic() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.is_atomic", false]], "is_back_edge() (aidge_core.operator method)": [[9, "aidge_core.Operator.is_back_edge", false]], "is_back_edge() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.is_back_edge", false]], "is_optional_input() (aidge_core.operator method)": [[9, "aidge_core.Operator.is_optional_input", false]], "is_optional_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.is_optional_input", false]], "leakyrelu() (in module aidge_core)": [[9, "aidge_core.LeakyReLU", false]], "len() (aidge_backend_opencv.mnist method)": [[2, "aidge_backend_opencv.MNIST.len", false]], "load (c++ function)": [[12, "_CPPv44load8filepath", false]], "load_onnx() (in module aidge_onnx)": [[13, "aidge_onnx.load_onnx", false]], "log_outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.log_outputs", false]], "lstm() (in module aidge_core)": [[9, "aidge_core.LSTM", false]], "match() (aidge_core.singlepassgraphmatching method)": [[7, "aidge_core.SinglePassGraphMatching.match", false]], "matmul() (in module aidge_core)": [[9, "aidge_core.MatMul", false]], "matmul_to_fc() (in module aidge_core)": [[10, "aidge_core.matmul_to_fc", false]], "mean() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.mean", false]], "meta_operator() (in module aidge_core)": [[9, "aidge_core.meta_operator", false]], "mnist (class in aidge_backend_opencv)": [[2, "aidge_backend_opencv.MNIST", false]], "mul() (in module aidge_core)": [[9, "aidge_core.Mul", false]], "name() (aidge_core.node method)": [[6, "aidge_core.Node.name", false]], "nb_inputs() (aidge_core.operator method)": [[9, "aidge_core.Operator.nb_inputs", false]], "nb_inputs() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.nb_inputs", false]], "nb_outputs() (aidge_core.operator method)": [[9, "aidge_core.Operator.nb_outputs", false]], "nb_outputs() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.nb_outputs", false]], "node (class in aidge_core)": [[6, "aidge_core.Node", false]], "operator (class in aidge_core)": [[9, "aidge_core.Operator", false]], "operatortensor (class in aidge_core)": [[9, "aidge_core.OperatorTensor", false]], "output() (aidge_core.node method)": [[6, "aidge_core.Node.output", false]], "output_name() (aidge_core.node method)": [[6, "aidge_core.Node.output_name", false]], "outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.outputs", false]], "outputs() (aidge_core.node method)": [[6, "aidge_core.Node.outputs", false]], "outputs_names() (aidge_core.node method)": [[6, "aidge_core.Node.outputs_names", false]], "paddedavgpooling2d() (in module aidge_core)": [[9, "aidge_core.PaddedAvgPooling2D", false]], "paddedconv1d() (in module aidge_core)": [[9, "aidge_core.PaddedConv1D", false]], "paddedconv2d() (in module aidge_core)": [[9, "aidge_core.PaddedConv2D", false]], "paddedconvdepthwise1d() (in module aidge_core)": [[9, "aidge_core.PaddedConvDepthWise1D", false]], "paddedconvdepthwise2d() (in module aidge_core)": [[9, "aidge_core.PaddedConvDepthWise2D", false]], "paddedmaxpooling2d() (in module aidge_core)": [[9, "aidge_core.PaddedMaxPooling2D", false]], "parallel() (in module aidge_core)": [[6, "aidge_core.parallel", false]], "parallelscheduler (class in aidge_core)": [[11, "aidge_core.ParallelScheduler", false]], "pop() (in module aidge_core)": [[9, "aidge_core.Pop", false]], "pow() (in module aidge_core)": [[9, "aidge_core.Pow", false]], "prod_conso() (aidge_core.export_utils.exportlib method)": [[5, "aidge_core.export_utils.ExportLib.prod_conso", false]], "producer() (in module aidge_core)": [[9, "aidge_core.Producer", false]], "profile (c++ function)": [[12, "_CPPv47profile13nb_iterations4mode", false]], "reducemean() (in module aidge_core)": [[9, "aidge_core.ReduceMean", false]], "reformat_kernels_to_copy() (aidge_core.export_utils.exportnodecpp method)": [[5, "aidge_core.export_utils.ExportNodeCpp.reformat_kernels_to_copy", false]], "register() (aidge_core.export_utils.exportlib class method)": [[5, "aidge_core.export_utils.ExportLib.register", false]], "register_export() (in module aidge_onnx.node_export)": [[13, "aidge_onnx.node_export.register_export", false]], "register_generic() (aidge_core.export_utils.exportlib class method)": [[5, "aidge_core.export_utils.ExportLib.register_generic", false]], "register_import() (in module aidge_onnx.node_import)": [[13, "aidge_onnx.node_import.register_import", false]], "register_metaop() (aidge_core.export_utils.exportlib class method)": [[5, "aidge_core.export_utils.ExportLib.register_metaop", false]], "relu() (in module aidge_core)": [[9, "aidge_core.ReLU", false]], "remove_flatten() (in module aidge_core)": [[10, "aidge_core.remove_flatten", false]], "replace() (aidge_core.graphview static method)": [[6, "aidge_core.GraphView.replace", false]], "reset_scheduling() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.reset_scheduling", false]], "reset_scheduling() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.reset_scheduling", false]], "reset_scheduling() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.reset_scheduling", false]], "reshape() (in module aidge_core)": [[9, "aidge_core.Reshape", false]], "residual() (in module aidge_core)": [[6, "aidge_core.residual", false]], "resize() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.resize", false]], "root_node() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.root_node", false]], "run_sync (c++ function)": [[12, "_CPPv48run_sync6inputs", false]], "save (c++ function)": [[12, "_CPPv44save8filepath", false]], "save() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.save", false]], "save_factorized_static_scheduling_diagram() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.save_factorized_static_scheduling_diagram", false]], "save_factorized_static_scheduling_diagram() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.save_factorized_static_scheduling_diagram", false]], "save_factorized_static_scheduling_diagram() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.save_factorized_static_scheduling_diagram", false]], "save_scheduling_diagram() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.save_scheduling_diagram", false]], "save_scheduling_diagram() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.save_scheduling_diagram", false]], "save_scheduling_diagram() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.save_scheduling_diagram", false]], "save_static_scheduling_diagram() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.save_static_scheduling_diagram", false]], "save_static_scheduling_diagram() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.save_static_scheduling_diagram", false]], "save_static_scheduling_diagram() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.save_static_scheduling_diagram", false]], "scheduler (class in aidge_core)": [[11, "aidge_core.Scheduler", false]], "scheduler_export() (in module aidge_core.export_utils)": [[5, "aidge_core.export_utils.scheduler_export", false]], "sequential() (in module aidge_core)": [[6, "aidge_core.sequential", false]], "sequentialscheduler (class in aidge_core)": [[11, "aidge_core.SequentialScheduler", false]], "set_back_edges() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_back_edges", false]], "set_back_edges() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_back_edges", false]], "set_backend() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_backend", false]], "set_backend() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_backend", false]], "set_backend() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_backend", false]], "set_backend() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.set_backend", false]], "set_data_format() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.set_data_format", false]], "set_dataformat() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_dataformat", false]], "set_dataformat() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_dataformat", false]], "set_dataformat() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_dataformat", false]], "set_datatype() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_datatype", false]], "set_datatype() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_datatype", false]], "set_datatype() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_datatype", false]], "set_datatype() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.set_datatype", false]], "set_grad() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.set_grad", false]], "set_impl() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_impl", false]], "set_impl() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_impl", false]], "set_input() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_input", false]], "set_input() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_input", false]], "set_name() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_name", false]], "set_name() (aidge_core.node method)": [[6, "aidge_core.Node.set_name", false]], "set_ordered_inputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_ordered_inputs", false]], "set_ordered_outputs() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_ordered_outputs", false]], "set_output() (aidge_core.operator method)": [[9, "aidge_core.Operator.set_output", false]], "set_output() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.set_output", false]], "set_root_node() (aidge_core.graphview method)": [[6, "aidge_core.GraphView.set_root_node", false]], "set_scheduling_policy() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.set_scheduling_policy", false]], "sigmoid() (in module aidge_core)": [[9, "aidge_core.Sigmoid", false]], "singlepassgraphmatching (class in aidge_core)": [[7, "aidge_core.SinglePassGraphMatching", false]], "size() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.size", false]], "slice() (in module aidge_core)": [[9, "aidge_core.Slice", false]], "softmax() (in module aidge_core)": [[9, "aidge_core.Softmax", false]], "sqrt() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.sqrt", false]], "sqrt() (in module aidge_core)": [[9, "aidge_core.Sqrt", false]], "stride() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.stride", false]], "strides() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.strides", false]], "sub() (in module aidge_core)": [[9, "aidge_core.Sub", false]], "supported_operators() (in module aidge_onnx.node_export)": [[13, "aidge_onnx.node_export.supported_operators", false]], "supported_operators() (in module aidge_onnx.node_import)": [[13, "aidge_onnx.node_import.supported_operators", false]], "tag_conditional_nodes() (aidge_core.parallelscheduler method)": [[11, "aidge_core.ParallelScheduler.tag_conditional_nodes", false]], "tag_conditional_nodes() (aidge_core.scheduler method)": [[11, "aidge_core.Scheduler.tag_conditional_nodes", false]], "tag_conditional_nodes() (aidge_core.sequentialscheduler method)": [[11, "aidge_core.SequentialScheduler.tag_conditional_nodes", false]], "tanh() (in module aidge_core)": [[9, "aidge_core.Tanh", false]], "tensor (class in aidge_core)": [[4, "aidge_core.Tensor", false]], "transpose() (in module aidge_core)": [[9, "aidge_core.Transpose", false]], "type() (aidge_core.node method)": [[6, "aidge_core.Node.type", false]], "type() (aidge_core.operator method)": [[9, "aidge_core.Operator.type", false]], "type() (aidge_core.operatortensor method)": [[9, "aidge_core.OperatorTensor.type", false]], "undefined() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.undefined", false]], "zeros() (aidge_core.tensor method)": [[4, "aidge_core.Tensor.zeros", false]]}, "objects": {"": [[9, 0, 1, "_CPPv4N5Aidge3AddERKNSt6stringE", "Aidge::Add"], [9, 1, 1, "_CPPv4N5Aidge3AddERKNSt6stringE", "Aidge::Add::name"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", "Aidge::AvgPooling"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", "Aidge::AvgPooling::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", "Aidge::AvgPooling::ceil_mode"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", "Aidge::AvgPooling::dilations"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", "Aidge::AvgPooling::kernel_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", "Aidge::AvgPooling::name"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", "Aidge::AvgPooling::roundingMode"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode", "Aidge::AvgPooling::stride_dims"], [9, 0, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm"], [9, 2, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::DIM"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::epsilon"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::momentum"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::name"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::nbFeatures"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge9BatchNormENSt10shared_ptrI4NodeEEK9DimSize_tKfKfKbRKNSt6stringE", "Aidge::BatchNorm::trainingMode"], [9, 0, 1, "_CPPv4N5Aidge4CastEK8DataTypeRKNSt6stringE", "Aidge::Cast"], [9, 1, 1, "_CPPv4N5Aidge4CastEK8DataTypeRKNSt6stringE", "Aidge::Cast::name"], [9, 1, 1, "_CPPv4N5Aidge4CastEK8DataTypeRKNSt6stringE", "Aidge::Cast::targetType"], [9, 0, 1, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", "Aidge::Concat"], [9, 1, 1, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", "Aidge::Concat::axis"], [9, 1, 1, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", "Aidge::Concat::name"], [9, 1, 1, "_CPPv4N5Aidge6ConcatEK9IOIndex_tKNSt7int32_tERKNSt6stringE", "Aidge::Concat::nbIn"], [6, 3, 1, "_CPPv4N5Aidge9ConnectorE", "Aidge::Connector"], [6, 0, 1, "_CPPv4N5Aidge9Connector9ConnectorENSt10shared_ptrI4NodeEE", "Aidge::Connector::Connector"], [6, 0, 1, "_CPPv4N5Aidge9Connector9ConnectorEv", "Aidge::Connector::Connector"], [6, 1, 1, "_CPPv4N5Aidge9Connector9ConnectorENSt10shared_ptrI4NodeEE", "Aidge::Connector::Connector::node"], [6, 0, 1, "_CPPv4NK5Aidge9Connector5indexEv", "Aidge::Connector::index"], [6, 0, 1, "_CPPv4NK5Aidge9Connector4nodeEv", "Aidge::Connector::node"], [6, 0, 1, "_CPPv4NK5Aidge9ConnectorixE9IOIndex_t", "Aidge::Connector::operator[]"], [6, 1, 1, "_CPPv4NK5Aidge9ConnectorixE9IOIndex_t", "Aidge::Connector::operator[]::index"], [6, 0, 1, "_CPPv4NK5Aidge9Connector4sizeEv", "Aidge::Connector::size"], [6, 0, 1, "_CPPv4N5Aidge9ConnectorD0Ev", "Aidge::Connector::~Connector"], [9, 0, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv"], [9, 2, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::DIM"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::dilationDims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::inChannels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::kernelDims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::name"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::noBias"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::outChannels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge4ConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::Conv::strideDims"], [9, 0, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise"], [9, 2, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::DIM"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::dilationDims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::kernelDims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::name"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::nbChannels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::noBias"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge13ConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::ConvDepthWise::strideDims"], [4, 3, 1, "_CPPv4N5Aidge12DataProviderE", "Aidge::DataProvider"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::backend"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::batchSize"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::database"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::dropLast"], [4, 1, 1, "_CPPv4N5Aidge12DataProvider12DataProviderERK8DatabaseKNSt6size_tERKNSt6stringEKbKb", "Aidge::DataProvider::DataProvider::shuffle"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider4doneEv", "Aidge::DataProvider::done"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider13getIndexBatchEv", "Aidge::DataProvider::getIndexBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider10getNbBatchEv", "Aidge::DataProvider::getNbBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider19incrementIndexBatchEv", "Aidge::DataProvider::incrementIndexBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider4iterEv", "Aidge::DataProvider::iter"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider4nextEv", "Aidge::DataProvider::next"], [4, 0, 1, "_CPPv4NK5Aidge12DataProvider9readBatchEv", "Aidge::DataProvider::readBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider15resetIndexBatchEv", "Aidge::DataProvider::resetIndexBatch"], [4, 0, 1, "_CPPv4N5Aidge12DataProvider10setBatchesEv", "Aidge::DataProvider::setBatches"], [4, 3, 1, "_CPPv4N5Aidge8DatabaseE", "Aidge::Database"], [4, 0, 1, "_CPPv4N5Aidge8Database8DatabaseEv", "Aidge::Database::Database"], [4, 0, 1, "_CPPv4NK5Aidge8Database7getItemEKNSt6size_tE", "Aidge::Database::getItem"], [4, 1, 1, "_CPPv4NK5Aidge8Database7getItemEKNSt6size_tE", "Aidge::Database::getItem::index"], [4, 0, 1, "_CPPv4NK5Aidge8Database6getLenEv", "Aidge::Database::getLen"], [4, 0, 1, "_CPPv4NK5Aidge8Database15getNbModalitiesEv", "Aidge::Database::getNbModalities"], [4, 0, 1, "_CPPv4N5Aidge8DatabaseD0Ev", "Aidge::Database::~Database"], [9, 0, 1, "_CPPv4N5Aidge3DivERKNSt6stringE", "Aidge::Div"], [9, 1, 1, "_CPPv4N5Aidge3DivERKNSt6stringE", "Aidge::Div::name"], [9, 0, 1, "_CPPv4N5Aidge3ErfERKNSt6stringE", "Aidge::Erf"], [9, 1, 1, "_CPPv4N5Aidge3ErfERKNSt6stringE", "Aidge::Erf::name"], [9, 0, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC"], [9, 1, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC::inChannels"], [9, 1, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC::name"], [9, 1, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC::noBias"], [9, 1, 1, "_CPPv4N5Aidge2FCEK9DimSize_tK9DimSize_tbRKNSt6stringE", "Aidge::FC::outChannels"], [9, 0, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather"], [9, 1, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather::axis"], [9, 1, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather::gatheredShape"], [9, 1, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather::indices"], [9, 1, 1, "_CPPv4N5Aidge6GatherENSt6int8_tERKNSt6vectorI7int64_tEERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Gather::name"], [9, 0, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator"], [9, 0, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", "Aidge::GenericOperator"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::name"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", "Aidge::GenericOperator::name"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::nbData"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::nbOut"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::nbParam"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", "Aidge::GenericOperator::op"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringE9IOIndex_t9IOIndex_t9IOIndex_tRKNSt6stringE", "Aidge::GenericOperator::type"], [9, 1, 1, "_CPPv4N5Aidge15GenericOperatorERKNSt6stringENSt10shared_ptrI14OperatorTensorEERKNSt6stringE", "Aidge::GenericOperator::type"], [6, 3, 1, "_CPPv4N5Aidge9GraphViewE", "Aidge::GraphView"], [6, 0, 1, "_CPPv4N5Aidge9GraphView9GraphViewERKNSt6stringE", "Aidge::GraphView::GraphView"], [6, 1, 1, "_CPPv4N5Aidge9GraphView9GraphViewERKNSt6stringE", "Aidge::GraphView::GraphView::name"], [6, 0, 1, "_CPPv4N5Aidge9GraphView3addE7NodePtrb", "Aidge::GraphView::add"], [6, 0, 1, "_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb", "Aidge::GraphView::add"], [6, 0, 1, "_CPPv4N5Aidge9GraphView3addENSt3setI7NodePtrEEb", "Aidge::GraphView::add"], [6, 0, 1, "_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb", "Aidge::GraphView::add"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addE7NodePtrb", "Aidge::GraphView::add::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb", "Aidge::GraphView::add::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt3setI7NodePtrEEb", "Aidge::GraphView::add::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb", "Aidge::GraphView::add::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb", "Aidge::GraphView::add::otherGraph"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addE7NodePtrb", "Aidge::GraphView::add::otherNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt3setI7NodePtrEEb", "Aidge::GraphView::add::otherNodes"], [6, 1, 1, "_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb", "Aidge::GraphView::add::otherNodes"], [6, 0, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild"], [6, 0, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild"], [6, 0, 1, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", "Aidge::GraphView::addChild"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::fromOutNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", "Aidge::GraphView::addChild::fromOutNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::fromOutNodeName"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::fromTensor"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::fromTensor"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", "Aidge::GraphView::addChild::toNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::toOtherNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::toOtherNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE", "Aidge::GraphView::addChild::toOtherView"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::toTensor"], [6, 1, 1, "_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t", "Aidge::GraphView::addChild::toTensor"], [6, 0, 1, "_CPPv4N5Aidge9GraphView17addOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEEi", "Aidge::GraphView::addOrderedOutputs"], [6, 1, 1, "_CPPv4N5Aidge9GraphView17addOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEEi", "Aidge::GraphView::addOrderedOutputs::outputs"], [6, 1, 1, "_CPPv4N5Aidge9GraphView17addOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEEi", "Aidge::GraphView::addOrderedOutputs::pos"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView5cloneEv", "Aidge::GraphView::clone"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView13cloneCallbackEPF7NodePtr7NodePtrE", "Aidge::GraphView::cloneCallback"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView13cloneCallbackEPF7NodePtr7NodePtrE", "Aidge::GraphView::cloneCallback::cloneNode"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView20cloneSharedOperatorsEv", "Aidge::GraphView::cloneSharedOperators"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView20cloneSharedProducersEv", "Aidge::GraphView::cloneSharedProducers"], [6, 0, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile::backend"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile::datatype"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile::device"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE", "Aidge::GraphView::compile::dims"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10dataInputsEKNSt6stringE", "Aidge::GraphView::dataInputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10dataInputsEv", "Aidge::GraphView::dataInputs"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10dataInputsEKNSt6stringE", "Aidge::GraphView::dataInputs::name"], [6, 0, 1, "_CPPv4N5Aidge9GraphView12forwardDTypeE8DataType", "Aidge::GraphView::forwardDType"], [6, 0, 1, "_CPPv4N5Aidge9GraphView12forwardDTypeERKNSt6vectorI8DataTypeEE", "Aidge::GraphView::forwardDType"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12forwardDTypeE8DataType", "Aidge::GraphView::forwardDType::inputType"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12forwardDTypeERKNSt6vectorI8DataTypeEE", "Aidge::GraphView::forwardDType::inputTypes"], [6, 0, 1, "_CPPv4N5Aidge9GraphView11forwardDimsERKNSt6vectorINSt6vectorI9DimSize_tEEEEb", "Aidge::GraphView::forwardDims"], [6, 1, 1, "_CPPv4N5Aidge9GraphView11forwardDimsERKNSt6vectorINSt6vectorI9DimSize_tEEEEb", "Aidge::GraphView::forwardDims::allowDataDependency"], [6, 1, 1, "_CPPv4N5Aidge9GraphView11forwardDimsERKNSt6vectorINSt6vectorI9DimSize_tEEEEb", "Aidge::GraphView::forwardDims::dims"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEK7NodePtr", "Aidge::GraphView::getChildren"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEKNSt6stringE", "Aidge::GraphView::getChildren"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEv", "Aidge::GraphView::getChildren"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEKNSt6stringE", "Aidge::GraphView::getChildren::nodeName"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView11getChildrenEK7NodePtr", "Aidge::GraphView::getChildren::otherNode"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView19getNbFreeDataInputsEv", "Aidge::GraphView::getNbFreeDataInputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView7getNodeERKNSt6stringE", "Aidge::GraphView::getNode"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView7getNodeERKNSt6stringE", "Aidge::GraphView::getNode::nodeName"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView8getNodesEv", "Aidge::GraphView::getNodes"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView16getOrderedInputsEv", "Aidge::GraphView::getOrderedInputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView15getOrderedNodesEb", "Aidge::GraphView::getOrderedNodes"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView15getOrderedNodesEb", "Aidge::GraphView::getOrderedNodes::reversed"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView17getOrderedOutputsEv", "Aidge::GraphView::getOrderedOutputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView17getOrderedParentsEv", "Aidge::GraphView::getOrderedParents"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10getParentsEKNSt6stringE", "Aidge::GraphView::getParents"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10getParentsEv", "Aidge::GraphView::getParents"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10getParentsEKNSt6stringE", "Aidge::GraphView::getParents::nodeName"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView14getRankedNodesEv", "Aidge::GraphView::getRankedNodes"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb", "Aidge::GraphView::getRankedNodesName"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb", "Aidge::GraphView::getRankedNodesName::format"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb", "Aidge::GraphView::getRankedNodesName::markNonUnicity"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView6inViewERK7NodePtr", "Aidge::GraphView::inView"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView6inViewERKNSt6stringE", "Aidge::GraphView::inView"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView6inViewERKNSt6stringE", "Aidge::GraphView::inView::nodeName"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView6inViewERK7NodePtr", "Aidge::GraphView::inView::nodePtr"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10inputNodesE13InputCategory", "Aidge::GraphView::inputNodes"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10inputNodesE13InputCategory", "Aidge::GraphView::inputNodes::filter"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView6inputsERKNSt6stringE", "Aidge::GraphView::inputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView6inputsEv", "Aidge::GraphView::inputs"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView6inputsERKNSt6stringE", "Aidge::GraphView::inputs::name"], [6, 0, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::childInputTensorIdx"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::childNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::newParentInputTensorIdx"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::newParentNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t", "Aidge::GraphView::insertParent::newParentOutputTensorIdx"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11isInputNodeERK7NodePtr", "Aidge::GraphView::isInputNode"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView11isInputNodeERK7NodePtr", "Aidge::GraphView::isInputNode::nodePtr"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView12isOutputNodeERK7NodePtr", "Aidge::GraphView::isOutputNode"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView12isOutputNodeERK7NodePtr", "Aidge::GraphView::isOutputNode::nodePtr"], [6, 0, 1, "_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE", "Aidge::GraphView::link"], [6, 1, 1, "_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE", "Aidge::GraphView::link::name1_inID"], [6, 1, 1, "_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE", "Aidge::GraphView::link::name2_outID"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10logOutputsERKNSt6stringE", "Aidge::GraphView::logOutputs"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10logOutputsERKNSt6stringE", "Aidge::GraphView::logOutputs::dirName"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView4nameEv", "Aidge::GraphView::name"], [6, 0, 1, "_CPPv4N5Aidge9GraphViewclEKNSt6vectorI9ConnectorEE", "Aidge::GraphView::operator()"], [6, 1, 1, "_CPPv4N5Aidge9GraphViewclEKNSt6vectorI9ConnectorEE", "Aidge::GraphView::operator()::ctors"], [6, 0, 1, "_CPPv4NK5Aidge9GraphVieweqERK9GraphView", "Aidge::GraphView::operator=="], [6, 1, 1, "_CPPv4NK5Aidge9GraphVieweqERK9GraphView", "Aidge::GraphView::operator==::gv"], [6, 0, 1, "_CPPv4NK5Aidge9GraphViewixERKNSt6stringE", "Aidge::GraphView::operator[]"], [6, 1, 1, "_CPPv4NK5Aidge9GraphViewixERKNSt6stringE", "Aidge::GraphView::operator[]::nodeName"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11outputNodesEv", "Aidge::GraphView::outputNodes"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView7outputsERKNSt6stringE", "Aidge::GraphView::outputs"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView7outputsEv", "Aidge::GraphView::outputs"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView7outputsERKNSt6stringE", "Aidge::GraphView::outputs::nodeName"], [6, 0, 1, "_CPPv4N5Aidge9GraphView6removeE7NodePtrb", "Aidge::GraphView::remove"], [6, 1, 1, "_CPPv4N5Aidge9GraphView6removeE7NodePtrb", "Aidge::GraphView::remove::includeLearnableParam"], [6, 1, 1, "_CPPv4N5Aidge9GraphView6removeE7NodePtrb", "Aidge::GraphView::remove::nodePtr"], [6, 0, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE", "Aidge::GraphView::replace"], [6, 0, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt3setI7NodePtrEERKNSt3setI7NodePtrEE", "Aidge::GraphView::replace"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE", "Aidge::GraphView::replace::newG"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt3setI7NodePtrEERKNSt3setI7NodePtrEE", "Aidge::GraphView::replace::newNodes"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE", "Aidge::GraphView::replace::oldG"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7replaceERKNSt3setI7NodePtrEERKNSt3setI7NodePtrEE", "Aidge::GraphView::replace::oldNodes"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView8rootNodeEv", "Aidge::GraphView::rootNode"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", "Aidge::GraphView::save"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", "Aidge::GraphView::save::path"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", "Aidge::GraphView::save::showProducers"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView4saveERKNSt6stringEbb", "Aidge::GraphView::save::verbose"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t", "Aidge::GraphView::setBackend"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t", "Aidge::GraphView::setBackend::backend"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t", "Aidge::GraphView::setBackend::device"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView13setDataFormatERK10DataFormat", "Aidge::GraphView::setDataFormat"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView13setDataFormatERK10DataFormat", "Aidge::GraphView::setDataFormat::dataformat"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView11setDataTypeERK8DataType", "Aidge::GraphView::setDataType"], [6, 1, 1, "_CPPv4NK5Aidge9GraphView11setDataTypeERK8DataType", "Aidge::GraphView::setDataType::datatype"], [6, 0, 1, "_CPPv4N5Aidge9GraphView10setInputIdE9IOIndex_t9IOIndex_t", "Aidge::GraphView::setInputId"], [6, 1, 1, "_CPPv4N5Aidge9GraphView10setInputIdE9IOIndex_t9IOIndex_t", "Aidge::GraphView::setInputId::inID"], [6, 1, 1, "_CPPv4N5Aidge9GraphView10setInputIdE9IOIndex_t9IOIndex_t", "Aidge::GraphView::setInputId::newNodeOutID"], [6, 0, 1, "_CPPv4N5Aidge9GraphView7setNameERKNSt6stringE", "Aidge::GraphView::setName"], [6, 1, 1, "_CPPv4N5Aidge9GraphView7setNameERKNSt6stringE", "Aidge::GraphView::setName::name"], [6, 0, 1, "_CPPv4NK5Aidge9GraphView12setNodesNameEv", "Aidge::GraphView::setNodesName"], [6, 0, 1, "_CPPv4N5Aidge9GraphView16setOrderedInputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", "Aidge::GraphView::setOrderedInputs"], [6, 1, 1, "_CPPv4N5Aidge9GraphView16setOrderedInputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", "Aidge::GraphView::setOrderedInputs::inputs"], [6, 0, 1, "_CPPv4N5Aidge9GraphView17setOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", "Aidge::GraphView::setOrderedOutputs"], [6, 1, 1, "_CPPv4N5Aidge9GraphView17setOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE", "Aidge::GraphView::setOrderedOutputs::outputs"], [6, 0, 1, "_CPPv4N5Aidge9GraphView11setRootNodeE7NodePtr", "Aidge::GraphView::setRootNode"], [6, 1, 1, "_CPPv4N5Aidge9GraphView11setRootNodeE7NodePtr", "Aidge::GraphView::setRootNode::node"], [6, 0, 1, "_CPPv4N5Aidge9GraphView4swapER4NodeR4Node", "Aidge::GraphView::swap"], [6, 1, 1, "_CPPv4N5Aidge9GraphView4swapER4NodeR4Node", "Aidge::GraphView::swap::node"], [6, 1, 1, "_CPPv4N5Aidge9GraphView4swapER4NodeR4Node", "Aidge::GraphView::swap::otherNode"], [6, 0, 1, "_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::GraphView::updateNodeName"], [6, 1, 1, "_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::GraphView::updateNodeName::newName"], [6, 1, 1, "_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::GraphView::updateNodeName::node"], [9, 0, 1, "_CPPv4N5Aidge8IdentityERKNSt6stringE", "Aidge::Identity"], [9, 1, 1, "_CPPv4N5Aidge8IdentityERKNSt6stringE", "Aidge::Identity::name"], [3, 3, 1, "_CPPv4N5Aidge8ImplSpecE", "Aidge::ImplSpec"], [3, 3, 1, "_CPPv4N5Aidge8ImplSpec6IOSpecE", "Aidge::ImplSpec::IOSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", "Aidge::ImplSpec::IOSpec::IOSpec"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", "Aidge::ImplSpec::IOSpec::IOSpec::dims_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", "Aidge::ImplSpec::IOSpec::IOSpec::format_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6IOSpecE8DataType10DataFormatRKNSt6vectorINSt4pairIiiEEEE", "Aidge::ImplSpec::IOSpec::IOSpec::type_"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec4dimsE", "Aidge::ImplSpec::IOSpec::dims"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec6formatE", "Aidge::ImplSpec::IOSpec::format"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec6IOSpec4typeE", "Aidge::ImplSpec::IOSpec::type"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKN5Aidge8ImplSpecE", "Aidge::ImplSpec::ImplSpec"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::attrs_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::attrs_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::attrs_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::attrs_"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::i"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::i"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::io"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERK6IOSpecRK6IOSpecRK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::o"], [3, 1, 1, "_CPPv4N5Aidge8ImplSpec8ImplSpecERKNSt6vectorI6IOSpecEERKNSt6vectorI6IOSpecEERK17DynamicAttributes", "Aidge::ImplSpec::ImplSpec::o"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec5attrsE", "Aidge::ImplSpec::attrs"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec6inputsE", "Aidge::ImplSpec::inputs"], [3, 4, 1, "_CPPv4N5Aidge8ImplSpec7outputsE", "Aidge::ImplSpec::outputs"], [3, 0, 1, "_CPPv4N5Aidge8ImplSpecD0Ev", "Aidge::ImplSpec::~ImplSpec"], [9, 0, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::hidden_channels"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::in_channels"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::name"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::noBias"], [9, 1, 1, "_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE", "Aidge::LSTM::seq_length"], [9, 0, 1, "_CPPv4N5Aidge9LeakyReLUEfRKNSt6stringE", "Aidge::LeakyReLU"], [9, 1, 1, "_CPPv4N5Aidge9LeakyReLUEfRKNSt6stringE", "Aidge::LeakyReLU::name"], [9, 1, 1, "_CPPv4N5Aidge9LeakyReLUEfRKNSt6stringE", "Aidge::LeakyReLU::negativeSlope"], [2, 3, 1, "_CPPv4N5Aidge5MNISTE", "Aidge::MNIST"], [2, 5, 1, "_CPPv4N5Aidge5MNIST8DataTypeE", "Aidge::MNIST::DataType"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType6DoubleE", "Aidge::MNIST::DataType::Double"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType5FloatE", "Aidge::MNIST::DataType::Float"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType3IntE", "Aidge::MNIST::DataType::Int"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType5ShortE", "Aidge::MNIST::DataType::Short"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType6SignedE", "Aidge::MNIST::DataType::Signed"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType8UnsignedE", "Aidge::MNIST::DataType::Unsigned"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType6DoubleE", "Aidge::MNIST::Double"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType5FloatE", "Aidge::MNIST::Float"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType3IntE", "Aidge::MNIST::Int"], [2, 0, 1, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", "Aidge::MNIST::MNIST"], [2, 1, 1, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", "Aidge::MNIST::MNIST::dataPath"], [2, 1, 1, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", "Aidge::MNIST::MNIST::loadDataInMemory"], [2, 1, 1, "_CPPv4N5Aidge5MNIST5MNISTERKNSt6stringEbb", "Aidge::MNIST::MNIST::train"], [2, 7, 1, "_CPPv4N5Aidge5MNIST11MagicNumberE", "Aidge::MNIST::MagicNumber"], [2, 4, 1, "_CPPv4N5Aidge5MNIST11MagicNumber4byteE", "Aidge::MNIST::MagicNumber::byte"], [2, 4, 1, "_CPPv4N5Aidge5MNIST11MagicNumber5valueE", "Aidge::MNIST::MagicNumber::value"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType5ShortE", "Aidge::MNIST::Short"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType6SignedE", "Aidge::MNIST::Signed"], [2, 6, 1, "_CPPv4N5Aidge5MNIST8DataType8UnsignedE", "Aidge::MNIST::Unsigned"], [2, 0, 1, "_CPPv4NK5Aidge5MNIST7getItemEKNSt6size_tE", "Aidge::MNIST::getItem"], [2, 1, 1, "_CPPv4NK5Aidge5MNIST7getItemEKNSt6size_tE", "Aidge::MNIST::getItem::index"], [2, 0, 1, "_CPPv4NK5Aidge5MNIST6getLenEv", "Aidge::MNIST::getLen"], [2, 0, 1, "_CPPv4NK5Aidge5MNIST15getNbModalitiesEv", "Aidge::MNIST::getNbModalities"], [2, 0, 1, "_CPPv4N5Aidge5MNISTD0Ev", "Aidge::MNIST::~MNIST"], [9, 0, 1, "_CPPv4N5Aidge6MatMulERKNSt6stringE", "Aidge::MatMul"], [9, 1, 1, "_CPPv4N5Aidge6MatMulERKNSt6stringE", "Aidge::MatMul::name"], [9, 0, 1, "_CPPv4N5Aidge8MemorizeEKNSt8uint32_tERKNSt6stringE", "Aidge::Memorize"], [9, 1, 1, "_CPPv4N5Aidge8MemorizeEKNSt8uint32_tERKNSt6stringE", "Aidge::Memorize::endStep"], [9, 1, 1, "_CPPv4N5Aidge8MemorizeEKNSt8uint32_tERKNSt6stringE", "Aidge::Memorize::name"], [9, 0, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator"], [9, 1, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator::forcedInputsCategory"], [9, 1, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator::graph"], [9, 1, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator::name"], [9, 1, 1, "_CPPv4N5Aidge12MetaOperatorEPKcRKNSt10shared_ptrI9GraphViewEERKNSt6vectorI13InputCategoryEERKNSt6stringE", "Aidge::MetaOperator::type"], [9, 0, 1, "_CPPv4N5Aidge4MoveERKNSt6stringE", "Aidge::Move"], [9, 1, 1, "_CPPv4N5Aidge4MoveERKNSt6stringE", "Aidge::Move::name"], [9, 0, 1, "_CPPv4N5Aidge3MulERKNSt6stringE", "Aidge::Mul"], [9, 1, 1, "_CPPv4N5Aidge3MulERKNSt6stringE", "Aidge::Mul::name"], [6, 3, 1, "_CPPv4N5Aidge4NodeE", "Aidge::Node"], [6, 0, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEENSt10shared_ptrI17DynamicAttributesEE", "Aidge::Node::Node"], [6, 0, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEERKNSt6stringE", "Aidge::Node::Node"], [6, 0, 1, "_CPPv4N5Aidge4Node4NodeEv", "Aidge::Node::Node"], [6, 1, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEENSt10shared_ptrI17DynamicAttributesEE", "Aidge::Node::Node::attrs"], [6, 1, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEERKNSt6stringE", "Aidge::Node::Node::name"], [6, 1, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEENSt10shared_ptrI17DynamicAttributesEE", "Aidge::Node::Node::op"], [6, 1, 1, "_CPPv4N5Aidge4Node4NodeENSt10shared_ptrI8OperatorEERKNSt6stringE", "Aidge::Node::Node::op"], [6, 0, 1, "_CPPv4N5Aidge4Node16addAfterBackwardENSt8functionIFbvEEE", "Aidge::Node::addAfterBackward"], [6, 1, 1, "_CPPv4N5Aidge4Node16addAfterBackwardENSt8functionIFbvEEE", "Aidge::Node::addAfterBackward::func"], [6, 0, 1, "_CPPv4N5Aidge4Node15addAfterForwardENSt8functionIFbvEEE", "Aidge::Node::addAfterForward"], [6, 1, 1, "_CPPv4N5Aidge4Node15addAfterForwardENSt8functionIFbvEEE", "Aidge::Node::addAfterForward::func"], [6, 0, 1, "_CPPv4N5Aidge4Node17addBeforeBackwardENSt8functionIFbvEEE", "Aidge::Node::addBeforeBackward"], [6, 1, 1, "_CPPv4N5Aidge4Node17addBeforeBackwardENSt8functionIFbvEEE", "Aidge::Node::addBeforeBackward::func"], [6, 0, 1, "_CPPv4N5Aidge4Node16addBeforeForwardENSt8functionIFbvEEE", "Aidge::Node::addBeforeForward"], [6, 1, 1, "_CPPv4N5Aidge4Node16addBeforeForwardENSt8functionIFbvEEE", "Aidge::Node::addBeforeForward::func"], [6, 0, 1, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", "Aidge::Node::addChild"], [6, 0, 1, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::Node::addChild"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", "Aidge::Node::addChild::otherInId"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::Node::addChild::otherInId"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::Node::addChild::otherNode"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", "Aidge::Node::addChild::otherView"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildENSt10shared_ptrI9GraphViewEEK9IOIndex_tNSt4pairI7NodePtr9IOIndex_tEE", "Aidge::Node::addChild::outId"], [6, 1, 1, "_CPPv4N5Aidge4Node8addChildERK7NodePtrK9IOIndex_t9IOIndex_t", "Aidge::Node::addChild::outId"], [6, 0, 1, "_CPPv4N5Aidge4Node7addViewERKNSt10shared_ptrI9GraphViewEE", "Aidge::Node::addView"], [6, 1, 1, "_CPPv4N5Aidge4Node7addViewERKNSt10shared_ptrI9GraphViewEE", "Aidge::Node::addView::graphPtr"], [6, 0, 1, "_CPPv4NK5Aidge4Node10attributesEv", "Aidge::Node::attributes"], [6, 0, 1, "_CPPv4N5Aidge4Node8backwardEv", "Aidge::Node::backward"], [6, 0, 1, "_CPPv4N5Aidge4Node5cloneE7NodePtr", "Aidge::Node::clone"], [6, 0, 1, "_CPPv4NK5Aidge4Node5cloneEv", "Aidge::Node::clone"], [6, 1, 1, "_CPPv4N5Aidge4Node5cloneE7NodePtr", "Aidge::Node::clone::node"], [6, 0, 1, "_CPPv4N5Aidge4Node20cloneSharedOperatorsE7NodePtr", "Aidge::Node::cloneSharedOperators"], [6, 0, 1, "_CPPv4NK5Aidge4Node20cloneSharedOperatorsEv", "Aidge::Node::cloneSharedOperators"], [6, 1, 1, "_CPPv4N5Aidge4Node20cloneSharedOperatorsE7NodePtr", "Aidge::Node::cloneSharedOperators::node"], [6, 0, 1, "_CPPv4N5Aidge4Node20cloneSharedProducersE7NodePtr", "Aidge::Node::cloneSharedProducers"], [6, 0, 1, "_CPPv4NK5Aidge4Node20cloneSharedProducersEv", "Aidge::Node::cloneSharedProducers"], [6, 1, 1, "_CPPv4N5Aidge4Node20cloneSharedProducersE7NodePtr", "Aidge::Node::cloneSharedProducers::node"], [6, 0, 1, "_CPPv4N5Aidge4Node16createUniqueNameENSt6stringE", "Aidge::Node::createUniqueName"], [6, 1, 1, "_CPPv4N5Aidge4Node16createUniqueNameENSt6stringE", "Aidge::Node::createUniqueName::name"], [6, 0, 1, "_CPPv4NK5Aidge4Node10dataInputsEv", "Aidge::Node::dataInputs"], [6, 0, 1, "_CPPv4N5Aidge4Node7forwardEv", "Aidge::Node::forward"], [6, 0, 1, "_CPPv4NK5Aidge4Node11getChildrenEK9IOIndex_t", "Aidge::Node::getChildren"], [6, 0, 1, "_CPPv4NK5Aidge4Node11getChildrenEv", "Aidge::Node::getChildren"], [6, 1, 1, "_CPPv4NK5Aidge4Node11getChildrenEK9IOIndex_t", "Aidge::Node::getChildren::outId"], [6, 0, 1, "_CPPv4NK5Aidge4Node21getFirstFreeDataInputEv", "Aidge::Node::getFirstFreeDataInput"], [6, 0, 1, "_CPPv4NK5Aidge4Node19getNbFreeDataInputsEv", "Aidge::Node::getNbFreeDataInputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node11getOperatorEv", "Aidge::Node::getOperator"], [6, 0, 1, "_CPPv4NK5Aidge4Node18getOrderedChildrenEv", "Aidge::Node::getOrderedChildren"], [6, 0, 1, "_CPPv4N5Aidge4Node9getParentEK9IOIndex_t", "Aidge::Node::getParent"], [6, 1, 1, "_CPPv4N5Aidge4Node9getParentEK9IOIndex_t", "Aidge::Node::getParent::inId"], [6, 0, 1, "_CPPv4NK5Aidge4Node10getParentsEv", "Aidge::Node::getParents"], [6, 0, 1, "_CPPv4NK5Aidge4Node5inputEK9IOIndex_t", "Aidge::Node::input"], [6, 1, 1, "_CPPv4NK5Aidge4Node5inputEK9IOIndex_t", "Aidge::Node::input::inID"], [6, 0, 1, "_CPPv4NK5Aidge4Node13inputCategoryE9IOIndex_t", "Aidge::Node::inputCategory"], [6, 1, 1, "_CPPv4NK5Aidge4Node13inputCategoryE9IOIndex_t", "Aidge::Node::inputCategory::idx"], [6, 0, 1, "_CPPv4N5Aidge4Node9inputNameEK9IOIndex_tRKNSt6stringE", "Aidge::Node::inputName"], [6, 0, 1, "_CPPv4NK5Aidge4Node9inputNameEK9IOIndex_t", "Aidge::Node::inputName"], [6, 1, 1, "_CPPv4N5Aidge4Node9inputNameEK9IOIndex_tRKNSt6stringE", "Aidge::Node::inputName::inID"], [6, 1, 1, "_CPPv4NK5Aidge4Node9inputNameEK9IOIndex_t", "Aidge::Node::inputName::inID"], [6, 1, 1, "_CPPv4N5Aidge4Node9inputNameEK9IOIndex_tRKNSt6stringE", "Aidge::Node::inputName::newName"], [6, 0, 1, "_CPPv4NK5Aidge4Node6inputsEv", "Aidge::Node::inputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node11inputsNamesEv", "Aidge::Node::inputsNames"], [6, 0, 1, "_CPPv4NK5Aidge4Node4nameEv", "Aidge::Node::name"], [6, 0, 1, "_CPPv4NK5Aidge4Node8nbInputsEv", "Aidge::Node::nbInputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node9nbOutputsEv", "Aidge::Node::nbOutputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node13nbValidInputsEv", "Aidge::Node::nbValidInputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node14nbValidOutputsEv", "Aidge::Node::nbValidOutputs"], [6, 0, 1, "_CPPv4N5Aidge4NodeclERKNSt6vectorI9ConnectorEE", "Aidge::Node::operator()"], [6, 1, 1, "_CPPv4N5Aidge4NodeclERKNSt6vectorI9ConnectorEE", "Aidge::Node::operator()::ctors"], [6, 0, 1, "_CPPv4N5Aidge4NodeeqERK4NodeRK4Node", "Aidge::Node::operator=="], [6, 1, 1, "_CPPv4N5Aidge4NodeeqERK4NodeRK4Node", "Aidge::Node::operator==::lhs"], [6, 1, 1, "_CPPv4N5Aidge4NodeeqERK4NodeRK4Node", "Aidge::Node::operator==::rhs"], [6, 0, 1, "_CPPv4NK5Aidge4Node6outputE9IOIndex_t", "Aidge::Node::output"], [6, 1, 1, "_CPPv4NK5Aidge4Node6outputE9IOIndex_t", "Aidge::Node::output::outId"], [6, 0, 1, "_CPPv4N5Aidge4Node10outputNameE9IOIndex_tRKNSt6stringE", "Aidge::Node::outputName"], [6, 0, 1, "_CPPv4NK5Aidge4Node10outputNameE9IOIndex_t", "Aidge::Node::outputName"], [6, 1, 1, "_CPPv4N5Aidge4Node10outputNameE9IOIndex_tRKNSt6stringE", "Aidge::Node::outputName::newName"], [6, 1, 1, "_CPPv4N5Aidge4Node10outputNameE9IOIndex_tRKNSt6stringE", "Aidge::Node::outputName::outId"], [6, 1, 1, "_CPPv4NK5Aidge4Node10outputNameE9IOIndex_t", "Aidge::Node::outputName::outId"], [6, 0, 1, "_CPPv4NK5Aidge4Node7outputsEv", "Aidge::Node::outputs"], [6, 0, 1, "_CPPv4NK5Aidge4Node12outputsNamesEv", "Aidge::Node::outputsNames"], [6, 0, 1, "_CPPv4NK5Aidge4Node16parentIsBackEdgeE9IOIndex_t", "Aidge::Node::parentIsBackEdge"], [6, 1, 1, "_CPPv4NK5Aidge4Node16parentIsBackEdgeE9IOIndex_t", "Aidge::Node::parentIsBackEdge::idx"], [6, 0, 1, "_CPPv4N5Aidge4Node11removeChildEK7NodePtrK9IOIndex_t", "Aidge::Node::removeChild"], [6, 1, 1, "_CPPv4N5Aidge4Node11removeChildEK7NodePtrK9IOIndex_t", "Aidge::Node::removeChild::nodePtr"], [6, 1, 1, "_CPPv4N5Aidge4Node11removeChildEK7NodePtrK9IOIndex_t", "Aidge::Node::removeChild::outId"], [6, 0, 1, "_CPPv4N5Aidge4Node10removeViewERKNSt10shared_ptrI9GraphViewEE", "Aidge::Node::removeView"], [6, 1, 1, "_CPPv4N5Aidge4Node10removeViewERKNSt10shared_ptrI9GraphViewEE", "Aidge::Node::removeView::graphPtr"], [6, 0, 1, "_CPPv4N5Aidge4Node16resetConnectionsEb", "Aidge::Node::resetConnections"], [6, 1, 1, "_CPPv4N5Aidge4Node16resetConnectionsEb", "Aidge::Node::resetConnections::includeLearnableParam"], [6, 0, 1, "_CPPv4N5Aidge4Node7setNameERKNSt6stringE", "Aidge::Node::setName"], [6, 1, 1, "_CPPv4N5Aidge4Node7setNameERKNSt6stringE", "Aidge::Node::setName::name"], [6, 0, 1, "_CPPv4NK5Aidge4Node4typeEv", "Aidge::Node::type"], [6, 0, 1, "_CPPv4NK5Aidge4Node5validEv", "Aidge::Node::valid"], [6, 0, 1, "_CPPv4NK5Aidge4Node5viewsEv", "Aidge::Node::views"], [6, 0, 1, "_CPPv4N5Aidge4NodeD0Ev", "Aidge::Node::~Node"], [9, 3, 1, "_CPPv4N5Aidge8OperatorE", "Aidge::Operator"], [9, 0, 1, "_CPPv4N5Aidge8Operator8OperatorERK8Operator", "Aidge::Operator::Operator"], [9, 0, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator"], [9, 0, 1, "_CPPv4N5Aidge8Operator8OperatorEv", "Aidge::Operator::Operator"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator::inputsCategory"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator::nbOut"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERK8Operator", "Aidge::Operator::Operator::op"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator::operatorType"], [9, 1, 1, "_CPPv4N5Aidge8Operator8OperatorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_tK12OperatorType", "Aidge::Operator::Operator::type"], [9, 0, 1, "_CPPv4N5Aidge8Operator14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::associateInput"], [9, 1, 1, "_CPPv4N5Aidge8Operator14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::associateInput::data"], [9, 1, 1, "_CPPv4N5Aidge8Operator14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::associateInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator10attributesEv", "Aidge::Operator::attributes"], [9, 0, 1, "_CPPv4NK5Aidge8Operator7backendEv", "Aidge::Operator::backend"], [9, 0, 1, "_CPPv4N5Aidge8Operator8backwardEv", "Aidge::Operator::backward"], [9, 0, 1, "_CPPv4NK5Aidge8Operator5cloneEv", "Aidge::Operator::clone"], [9, 0, 1, "_CPPv4N5Aidge8Operator7forwardEv", "Aidge::Operator::forward"], [9, 0, 1, "_CPPv4NK5Aidge8Operator20getAvailableBackendsEv", "Aidge::Operator::getAvailableBackends"], [9, 0, 1, "_CPPv4NK5Aidge8Operator7getImplEv", "Aidge::Operator::getImpl"], [9, 0, 1, "_CPPv4NK5Aidge8Operator17getNbConsumedDataEK9IOIndex_t", "Aidge::Operator::getNbConsumedData"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getNbConsumedDataEK9IOIndex_t", "Aidge::Operator::getNbConsumedData::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator17getNbProducedDataEK9IOIndex_t", "Aidge::Operator::getNbProducedData"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getNbProducedDataEK9IOIndex_t", "Aidge::Operator::getNbProducedData::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator17getNbRequiredDataEK9IOIndex_t", "Aidge::Operator::getNbRequiredData"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getNbRequiredDataEK9IOIndex_t", "Aidge::Operator::getNbRequiredData::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator22getNbRequiredProtectedEK9IOIndex_t", "Aidge::Operator::getNbRequiredProtected"], [9, 1, 1, "_CPPv4NK5Aidge8Operator22getNbRequiredProtectedEK9IOIndex_t", "Aidge::Operator::getNbRequiredProtected::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator11getRawInputEK9IOIndex_t", "Aidge::Operator::getRawInput"], [9, 1, 1, "_CPPv4NK5Aidge8Operator11getRawInputEK9IOIndex_t", "Aidge::Operator::getRawInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator12getRawOutputEK9IOIndex_t", "Aidge::Operator::getRawOutput"], [9, 1, 1, "_CPPv4NK5Aidge8Operator12getRawOutputEK9IOIndex_t", "Aidge::Operator::getRawOutput::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator17getRequiredMemoryEK9IOIndex_tRKNSt6vectorI9DimSize_tEE", "Aidge::Operator::getRequiredMemory"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getRequiredMemoryEK9IOIndex_tRKNSt6vectorI9DimSize_tEE", "Aidge::Operator::getRequiredMemory::inputsSize"], [9, 1, 1, "_CPPv4NK5Aidge8Operator17getRequiredMemoryEK9IOIndex_tRKNSt6vectorI9DimSize_tEE", "Aidge::Operator::getRequiredMemory::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator19inheritedAttributesEv", "Aidge::Operator::inheritedAttributes"], [9, 0, 1, "_CPPv4NK5Aidge8Operator13inputCategoryE9IOIndex_t", "Aidge::Operator::inputCategory"], [9, 0, 1, "_CPPv4NK5Aidge8Operator13inputCategoryEv", "Aidge::Operator::inputCategory"], [9, 1, 1, "_CPPv4NK5Aidge8Operator13inputCategoryE9IOIndex_t", "Aidge::Operator::inputCategory::idx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator8isAtomicEv", "Aidge::Operator::isAtomic"], [9, 0, 1, "_CPPv4NK5Aidge8Operator10isBackEdgeE9IOIndex_t", "Aidge::Operator::isBackEdge"], [9, 1, 1, "_CPPv4NK5Aidge8Operator10isBackEdgeE9IOIndex_t", "Aidge::Operator::isBackEdge::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator15isOptionalInputENSt6size_tE", "Aidge::Operator::isOptionalInput"], [9, 1, 1, "_CPPv4NK5Aidge8Operator15isOptionalInputENSt6size_tE", "Aidge::Operator::isOptionalInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator8nbInputsEv", "Aidge::Operator::nbInputs"], [9, 0, 1, "_CPPv4NK5Aidge8Operator9nbOutputsEv", "Aidge::Operator::nbOutputs"], [9, 0, 1, "_CPPv4NK5Aidge8Operator12operatorTypeEv", "Aidge::Operator::operatorType"], [9, 0, 1, "_CPPv4N5Aidge8Operator22resetConsummerProducerEv", "Aidge::Operator::resetConsummerProducer"], [9, 0, 1, "_CPPv4N5Aidge8Operator10resetInputEK9IOIndex_t", "Aidge::Operator::resetInput"], [9, 1, 1, "_CPPv4N5Aidge8Operator10resetInputEK9IOIndex_t", "Aidge::Operator::resetInput::inputIdx"], [9, 0, 1, "_CPPv4N5Aidge8Operator12setBackEdgesERKNSt3setI9IOIndex_tEE", "Aidge::Operator::setBackEdges"], [9, 1, 1, "_CPPv4N5Aidge8Operator12setBackEdgesERKNSt3setI9IOIndex_tEE", "Aidge::Operator::setBackEdges::backEdges"], [9, 0, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6stringE11DeviceIdx_t", "Aidge::Operator::setBackend"], [9, 0, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6vectorINSt4pairINSt6stringE11DeviceIdx_tEEEE", "Aidge::Operator::setBackend"], [9, 1, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6vectorINSt4pairINSt6stringE11DeviceIdx_tEEEE", "Aidge::Operator::setBackend::backends"], [9, 1, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6stringE11DeviceIdx_t", "Aidge::Operator::setBackend::device"], [9, 1, 1, "_CPPv4N5Aidge8Operator10setBackendERKNSt6stringE11DeviceIdx_t", "Aidge::Operator::setBackend::name"], [9, 0, 1, "_CPPv4NK5Aidge8Operator13setDataFormatERK10DataFormat", "Aidge::Operator::setDataFormat"], [9, 1, 1, "_CPPv4NK5Aidge8Operator13setDataFormatERK10DataFormat", "Aidge::Operator::setDataFormat::dataFormat"], [9, 0, 1, "_CPPv4NK5Aidge8Operator11setDataTypeERK8DataType", "Aidge::Operator::setDataType"], [9, 1, 1, "_CPPv4NK5Aidge8Operator11setDataTypeERK8DataType", "Aidge::Operator::setDataType::dataType"], [9, 0, 1, "_CPPv4N5Aidge8Operator7setImplENSt10shared_ptrI12OperatorImplEE", "Aidge::Operator::setImpl"], [9, 1, 1, "_CPPv4N5Aidge8Operator7setImplENSt10shared_ptrI12OperatorImplEE", "Aidge::Operator::setImpl::impl"], [9, 0, 1, "_CPPv4N5Aidge8Operator17setInheritedAttrsERNSt10shared_ptrI17DynamicAttributesEE", "Aidge::Operator::setInheritedAttrs"], [9, 1, 1, "_CPPv4N5Aidge8Operator17setInheritedAttrsERNSt10shared_ptrI17DynamicAttributesEE", "Aidge::Operator::setInheritedAttrs::attr"], [9, 0, 1, "_CPPv4N5Aidge8Operator8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setInput"], [9, 1, 1, "_CPPv4N5Aidge8Operator8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setInput::data"], [9, 1, 1, "_CPPv4N5Aidge8Operator8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setOutput"], [9, 1, 1, "_CPPv4NK5Aidge8Operator9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setOutput::data"], [9, 1, 1, "_CPPv4NK5Aidge8Operator9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::Operator::setOutput::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge8Operator4typeEv", "Aidge::Operator::type"], [9, 0, 1, "_CPPv4N5Aidge8Operator23updateConsummerProducerEv", "Aidge::Operator::updateConsummerProducer"], [9, 0, 1, "_CPPv4N5Aidge8OperatorD0Ev", "Aidge::Operator::~Operator"], [9, 3, 1, "_CPPv4N5Aidge14OperatorTensorE", "Aidge::OperatorTensor"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERK14OperatorTensor", "Aidge::OperatorTensor::OperatorTensor"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", "Aidge::OperatorTensor::OperatorTensor"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorEv", "Aidge::OperatorTensor::OperatorTensor"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", "Aidge::OperatorTensor::OperatorTensor::inputsCategory"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", "Aidge::OperatorTensor::OperatorTensor::nbOut"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERK14OperatorTensor", "Aidge::OperatorTensor::OperatorTensor::other"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14OperatorTensorERKNSt6stringERKNSt6vectorI13InputCategoryEEK9IOIndex_t", "Aidge::OperatorTensor::OperatorTensor::type"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::associateInput"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::associateInput::data"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor14associateInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::associateInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", "Aidge::OperatorTensor::computeReceptiveField"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", "Aidge::OperatorTensor::computeReceptiveField::firstEltDims"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", "Aidge::OperatorTensor::computeReceptiveField::outputDims"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor21computeReceptiveFieldERKNSt6vectorI9DimSize_tEERKNSt6vectorI9DimSize_tEEK9IOIndex_t", "Aidge::OperatorTensor::computeReceptiveField::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor13dimsForwardedEv", "Aidge::OperatorTensor::dimsForwarded"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor7forwardEv", "Aidge::OperatorTensor::forward"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor12forwardDTypeEv", "Aidge::OperatorTensor::forwardDType"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor11forwardDimsEb", "Aidge::OperatorTensor::forwardDims"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor11forwardDimsEb", "Aidge::OperatorTensor::forwardDims::allowDataDependency"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor8getInputEK9IOIndex_t", "Aidge::OperatorTensor::getInput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor8getInputEK9IOIndex_t", "Aidge::OperatorTensor::getInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor9getInputsEv", "Aidge::OperatorTensor::getInputs"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor9getOutputEK9IOIndex_t", "Aidge::OperatorTensor::getOutput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor9getOutputEK9IOIndex_t", "Aidge::OperatorTensor::getOutput::outputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor10getOutputsEv", "Aidge::OperatorTensor::getOutputs"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor11getRawInputEK9IOIndex_t", "Aidge::OperatorTensor::getRawInput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor11getRawInputEK9IOIndex_t", "Aidge::OperatorTensor::getRawInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor12getRawOutputEKN5Aidge9IOIndex_tE", "Aidge::OperatorTensor::getRawOutput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor12getRawOutputEKN5Aidge9IOIndex_tE", "Aidge::OperatorTensor::getRawOutput::outputIdx"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor10resetInputEK9IOIndex_t", "Aidge::OperatorTensor::resetInput"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor10resetInputEK9IOIndex_t", "Aidge::OperatorTensor::resetInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor13setDataFormatERK10DataFormat", "Aidge::OperatorTensor::setDataFormat"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor13setDataFormatERK10DataFormat", "Aidge::OperatorTensor::setDataFormat::dataFormat"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor11setDataTypeERK8DataType", "Aidge::OperatorTensor::setDataType"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor11setDataTypeERK8DataType", "Aidge::OperatorTensor::setDataType::dataType"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensor8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setInput"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setInput::data"], [9, 1, 1, "_CPPv4N5Aidge14OperatorTensor8setInputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setInput::inputIdx"], [9, 0, 1, "_CPPv4NK5Aidge14OperatorTensor9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setOutput"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setOutput::data"], [9, 1, 1, "_CPPv4NK5Aidge14OperatorTensor9setOutputEK9IOIndex_tRKNSt10shared_ptrI4DataEE", "Aidge::OperatorTensor::setOutput::outputIdx"], [9, 0, 1, "_CPPv4N5Aidge14OperatorTensorD0Ev", "Aidge::OperatorTensor::~OperatorTensor"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::beginEndTuples"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::borderType"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::borderValue"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge3PadENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt6stringE13PadBorderTyped", "Aidge::Pad::name"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::ceil_mode"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::dilations"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::kernel_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::name"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::padding_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedAvgPooling::stride_dims"], [9, 0, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv"], [9, 2, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::DIM"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::dilation_dims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::in_channels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::kernel_dims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::name"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::no_bias"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::out_channels"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::padding_dims"], [9, 1, 1, "_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConv::stride_dims"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::dilation_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::kernel_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::name"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::nb_channels"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::no_bias"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::padding_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb", "Aidge::PaddedConvDepthWise::stride_dims"], [9, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling"], [9, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::DIM"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::ceil_mode"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::dilations"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::kernel_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::name"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::padding_dims"], [9, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb", "Aidge::PaddedMaxPooling::stride_dims"], [6, 0, 1, "_CPPv4N5Aidge8ParallelENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Parallel"], [6, 1, 1, "_CPPv4N5Aidge8ParallelENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Parallel::inputs"], [6, 1, 1, "_CPPv4N5Aidge8ParallelENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Parallel::name"], [11, 3, 1, "_CPPv4N5Aidge17ParallelSchedulerE", "Aidge::ParallelScheduler"], [11, 0, 1, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::ParallelScheduler::ParallelScheduler"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::ParallelScheduler::ParallelScheduler::graphView"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::ParallelScheduler::ParallelScheduler::resetCPModel"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler17ParallelSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::ParallelScheduler::ParallelScheduler::upperNode"], [11, 0, 1, "_CPPv4N5Aidge17ParallelScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::ParallelScheduler::forward"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::ParallelScheduler::forward::data"], [11, 1, 1, "_CPPv4N5Aidge17ParallelScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::ParallelScheduler::forward::forwardDims"], [11, 0, 1, "_CPPv4N5Aidge17ParallelSchedulerD0Ev", "Aidge::ParallelScheduler::~ParallelScheduler"], [9, 0, 1, "_CPPv4N5Aidge3PopERKNSt6stringE", "Aidge::Pop"], [9, 1, 1, "_CPPv4N5Aidge3PopERKNSt6stringE", "Aidge::Pop::name"], [9, 0, 1, "_CPPv4N5Aidge3PowERKNSt6stringE", "Aidge::Pow"], [9, 1, 1, "_CPPv4N5Aidge3PowERKNSt6stringE", "Aidge::Pow::name"], [9, 0, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer"], [9, 0, 1, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", "Aidge::Producer"], [9, 2, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer::DIM"], [9, 1, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer::constant"], [9, 1, 1, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", "Aidge::Producer::constant"], [9, 1, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer::dims"], [9, 1, 1, "_CPPv4I_NSt6size_tEEN5Aidge8ProducerENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringEb", "Aidge::Producer::name"], [9, 1, 1, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", "Aidge::Producer::name"], [9, 1, 1, "_CPPv4N5Aidge8ProducerEKNSt10shared_ptrI6TensorEERKNSt6stringEb", "Aidge::Producer::tensor"], [9, 0, 1, "_CPPv4N5Aidge4ReLUERKNSt6stringE", "Aidge::ReLU"], [9, 1, 1, "_CPPv4N5Aidge4ReLUERKNSt6stringE", "Aidge::ReLU::name"], [9, 0, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE", "Aidge::ReduceMean"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE", "Aidge::ReduceMean::axes"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE", "Aidge::ReduceMean::keep_dims"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE", "Aidge::ReduceMean::name"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE", "Aidge::ReduceMean::noop_with_empty_axes"], [9, 1, 1, "_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE", "Aidge::ReduceMean::roundingMode"], [9, 0, 1, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", "Aidge::Reshape"], [9, 1, 1, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", "Aidge::Reshape::allowzero"], [9, 1, 1, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", "Aidge::Reshape::name"], [9, 1, 1, "_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE", "Aidge::Reshape::shape"], [6, 0, 1, "_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Residual"], [6, 1, 1, "_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Residual::inputs"], [6, 1, 1, "_CPPv4N5Aidge8ResidualENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Residual::name"], [11, 3, 1, "_CPPv4N5Aidge9SchedulerE", "Aidge::Scheduler"], [11, 5, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatusE", "Aidge::Scheduler::AvailableDataStatus"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus9ConnectedE", "Aidge::Scheduler::AvailableDataStatus::Connected"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus12NotConnectedE", "Aidge::Scheduler::AvailableDataStatus::NotConnected"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus23UpperNodeInputConnectedE", "Aidge::Scheduler::AvailableDataStatus::UpperNodeInputConnected"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus19UpperNodeInputFoundE", "Aidge::Scheduler::AvailableDataStatus::UpperNodeInputFound"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler19AvailableDataStatus11ValidTensorE", "Aidge::Scheduler::AvailableDataStatus::ValidTensor"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler8ExecTimeE", "Aidge::Scheduler::ExecTime"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler8ExecTime3getEv", "Aidge::Scheduler::ExecTime::get"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler8ExecTime6updateERKNSt6vectorI17SchedulingElementEE", "Aidge::Scheduler::ExecTime::update"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler8ExecTime6updateERKNSt6vectorI17SchedulingElementEE", "Aidge::Scheduler::ExecTime::update::scheduling"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTimeE", "Aidge::Scheduler::NodeExecTime"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime12NodeExecTimeEv", "Aidge::Scheduler::NodeExecTime::NodeExecTime"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime6mCountE", "Aidge::Scheduler::NodeExecTime::mCount"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime3mM2E", "Aidge::Scheduler::NodeExecTime::mM2"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime5mMeanE", "Aidge::Scheduler::NodeExecTime::mMean"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler12NodeExecTime4meanEv", "Aidge::Scheduler::NodeExecTime::mean"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler12NodeExecTime6stdDevEv", "Aidge::Scheduler::NodeExecTime::stdDev"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime6updateENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::NodeExecTime::update"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime6updateENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::NodeExecTime::update::end"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler12NodeExecTime6updateENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::NodeExecTime::update::start"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumersE", "Aidge::Scheduler::PriorProducersConsumers"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers23PriorProducersConsumersERK23PriorProducersConsumers", "Aidge::Scheduler::PriorProducersConsumers::PriorProducersConsumers"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers23PriorProducersConsumersEv", "Aidge::Scheduler::PriorProducersConsumers::PriorProducersConsumers"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers7isPriorE", "Aidge::Scheduler::PriorProducersConsumers::isPrior"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers14priorConsumersE", "Aidge::Scheduler::PriorProducersConsumers::priorConsumers"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumers17requiredProducersE", "Aidge::Scheduler::PriorProducersConsumers::requiredProducers"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler23PriorProducersConsumersD0Ev", "Aidge::Scheduler::PriorProducersConsumers::~PriorProducersConsumers"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::Scheduler::Scheduler"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler9SchedulerEv", "Aidge::Scheduler::Scheduler"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::Scheduler::Scheduler::graphView"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::Scheduler::Scheduler::resetCPModel"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler9SchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::Scheduler::Scheduler::upperNode"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElementE", "Aidge::Scheduler::SchedulingElement"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::SchedulingElement::SchedulingElement"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::SchedulingElement::SchedulingElement::end_"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::SchedulingElement::SchedulingElement::node_"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement17SchedulingElementENSt10shared_ptrI4NodeEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEENSt6chrono10time_pointINSt6chrono21high_resolution_clockEEE", "Aidge::Scheduler::SchedulingElement::SchedulingElement::start_"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement3endE", "Aidge::Scheduler::SchedulingElement::end"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement4nodeE", "Aidge::Scheduler::SchedulingElement::node"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElement5startE", "Aidge::Scheduler::SchedulingElement::start"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler17SchedulingElementD0Ev", "Aidge::Scheduler::SchedulingElement::~SchedulingElement"], [11, 5, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicyE", "Aidge::Scheduler::SchedulingPolicy"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy16AsLateAsPossibleE", "Aidge::Scheduler::SchedulingPolicy::AsLateAsPossible"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy16AsSoonAsPossibleE", "Aidge::Scheduler::SchedulingPolicy::AsSoonAsPossible"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy7DefaultE", "Aidge::Scheduler::SchedulingPolicy::Default"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy19LonguestBranchFirstE", "Aidge::Scheduler::SchedulingPolicy::LonguestBranchFirst"], [11, 6, 1, "_CPPv4N5Aidge9Scheduler16SchedulingPolicy19ShortestBranchFirstE", "Aidge::Scheduler::SchedulingPolicy::ShortestBranchFirst"], [11, 3, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElementE", "Aidge::Scheduler::StaticSchedulingElement"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", "Aidge::Scheduler::StaticSchedulingElement::StaticSchedulingElement"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", "Aidge::Scheduler::StaticSchedulingElement::StaticSchedulingElement::early_"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", "Aidge::Scheduler::StaticSchedulingElement::StaticSchedulingElement::late_"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement23StaticSchedulingElementENSt10shared_ptrI4NodeEENSt6size_tENSt6size_tE", "Aidge::Scheduler::StaticSchedulingElement::StaticSchedulingElement::node_"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement11earlierThanE", "Aidge::Scheduler::StaticSchedulingElement::earlierThan"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement5earlyE", "Aidge::Scheduler::StaticSchedulingElement::early"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement4lateE", "Aidge::Scheduler::StaticSchedulingElement::late"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement9laterThanE", "Aidge::Scheduler::StaticSchedulingElement::laterThan"], [11, 4, 1, "_CPPv4N5Aidge9Scheduler23StaticSchedulingElement4nodeE", "Aidge::Scheduler::StaticSchedulingElement::node"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler15clearSchedulingEv", "Aidge::Scheduler::clearScheduling"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler13connectInputsERKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::Scheduler::connectInputs"], [11, 1, 1, "_CPPv4N5Aidge9Scheduler13connectInputsERKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::Scheduler::connectInputs::data"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler18generateSchedulingEv", "Aidge::Scheduler::generateScheduling"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler21getBackwardSchedulingEv", "Aidge::Scheduler::getBackwardScheduling"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler20getForwardSchedulingEv", "Aidge::Scheduler::getForwardScheduling"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler29getSequentialStaticSchedulingENSt6size_tE16SchedulingPolicy", "Aidge::Scheduler::getSequentialStaticScheduling"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler29getSequentialStaticSchedulingENSt6size_tE16SchedulingPolicy", "Aidge::Scheduler::getSequentialStaticScheduling::policy"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler29getSequentialStaticSchedulingENSt6size_tE16SchedulingPolicy", "Aidge::Scheduler::getSequentialStaticScheduling::step"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler19getStaticSchedulingENSt6size_tE", "Aidge::Scheduler::getStaticScheduling"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler19getStaticSchedulingENSt6size_tE", "Aidge::Scheduler::getStaticScheduling::step"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler9graphViewEv", "Aidge::Scheduler::graphView"], [11, 0, 1, "_CPPv4N5Aidge9Scheduler15resetSchedulingEv", "Aidge::Scheduler::resetScheduling"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", "Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", "Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram::fileName"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", "Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram::ignoreProducers"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler37saveFactorizedStaticSchedulingDiagramERKNSt6stringEb6size_t", "Aidge::Scheduler::saveFactorizedStaticSchedulingDiagram::minRepeat"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler21saveSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveSchedulingDiagram"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler21saveSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveSchedulingDiagram::fileName"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler21saveSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveSchedulingDiagram::ignoreProducers"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler27saveStaticSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveStaticSchedulingDiagram"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler27saveStaticSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveStaticSchedulingDiagram::fileName"], [11, 1, 1, "_CPPv4NK5Aidge9Scheduler27saveStaticSchedulingDiagramERKNSt6stringEb", "Aidge::Scheduler::saveStaticSchedulingDiagram::ignoreProducers"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler19tagConditionalNodesEv", "Aidge::Scheduler::tagConditionalNodes"], [11, 0, 1, "_CPPv4NK5Aidge9Scheduler15tagForkBranchesEv", "Aidge::Scheduler::tagForkBranches"], [11, 0, 1, "_CPPv4N5Aidge9SchedulerD0Ev", "Aidge::Scheduler::~Scheduler"], [6, 0, 1, "_CPPv4N5Aidge10SequentialENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Sequential"], [6, 1, 1, "_CPPv4N5Aidge10SequentialENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Sequential::inputs"], [6, 1, 1, "_CPPv4N5Aidge10SequentialENSt6vectorI6OpArgsEENSt6stringE", "Aidge::Sequential::name"], [11, 3, 1, "_CPPv4N5Aidge19SequentialSchedulerE", "Aidge::SequentialScheduler"], [11, 0, 1, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::SequentialScheduler::SequentialScheduler"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::SequentialScheduler::SequentialScheduler::graphView"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::SequentialScheduler::SequentialScheduler::resetCPModel"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler19SequentialSchedulerENSt10shared_ptrI9GraphViewEEbNSt10shared_ptrI4NodeEE", "Aidge::SequentialScheduler::SequentialScheduler::upperNode"], [11, 0, 1, "_CPPv4N5Aidge19SequentialScheduler8backwardEv", "Aidge::SequentialScheduler::backward"], [11, 0, 1, "_CPPv4N5Aidge19SequentialScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::SequentialScheduler::forward"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::SequentialScheduler::forward::data"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler7forwardEbRKNSt6vectorINSt10shared_ptrIN5Aidge6TensorEEEEE", "Aidge::SequentialScheduler::forward::forwardDims"], [11, 0, 1, "_CPPv4NK5Aidge19SequentialScheduler14generateMemoryEbb", "Aidge::SequentialScheduler::generateMemory"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler14generateMemoryEbb", "Aidge::SequentialScheduler::generateMemory::incProducers"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler14generateMemoryEbb", "Aidge::SequentialScheduler::generateMemory::wrapAroundBuffer"], [11, 0, 1, "_CPPv4NK5Aidge19SequentialScheduler24generateMemoryAutoConcatEbb", "Aidge::SequentialScheduler::generateMemoryAutoConcat"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler24generateMemoryAutoConcatEbb", "Aidge::SequentialScheduler::generateMemoryAutoConcat::incProducers"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler24generateMemoryAutoConcatEbb", "Aidge::SequentialScheduler::generateMemoryAutoConcat::wrapAroundBuffer"], [11, 0, 1, "_CPPv4NK5Aidge19SequentialScheduler29getSequentialStaticSchedulingENSt6size_tE", "Aidge::SequentialScheduler::getSequentialStaticScheduling"], [11, 1, 1, "_CPPv4NK5Aidge19SequentialScheduler29getSequentialStaticSchedulingENSt6size_tE", "Aidge::SequentialScheduler::getSequentialStaticScheduling::step"], [11, 0, 1, "_CPPv4N5Aidge19SequentialScheduler19setSchedulingPolicyE16SchedulingPolicy", "Aidge::SequentialScheduler::setSchedulingPolicy"], [11, 1, 1, "_CPPv4N5Aidge19SequentialScheduler19setSchedulingPolicyE16SchedulingPolicy", "Aidge::SequentialScheduler::setSchedulingPolicy::policy"], [11, 0, 1, "_CPPv4N5Aidge19SequentialSchedulerD0Ev", "Aidge::SequentialScheduler::~SequentialScheduler"], [9, 0, 1, "_CPPv4N5Aidge7SigmoidERKNSt6stringE", "Aidge::Sigmoid"], [9, 1, 1, "_CPPv4N5Aidge7SigmoidERKNSt6stringE", "Aidge::Sigmoid::name"], [7, 3, 1, "_CPPv4N5Aidge23SinglePassGraphMatchingE", "Aidge::SinglePassGraphMatching"], [7, 3, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextE", "Aidge::SinglePassGraphMatching::Context"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7ContextERK7Context", "Aidge::SinglePassGraphMatching::Context::Context"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7ContextEv", "Aidge::SinglePassGraphMatching::Context::Context"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context7anchorsE", "Aidge::SinglePassGraphMatching::Context::anchors"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context5depthE", "Aidge::SinglePassGraphMatching::Context::depth"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context11edgeLeftIdxE", "Aidge::SinglePassGraphMatching::Context::edgeLeftIdx"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12edgeRightIdxE", "Aidge::SinglePassGraphMatching::Context::edgeRightIdx"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context9firstNodeE", "Aidge::SinglePassGraphMatching::Context::firstNode"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context13firstSequenceE", "Aidge::SinglePassGraphMatching::Context::firstSequence"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context10inSequenceE", "Aidge::SinglePassGraphMatching::Context::inSequence"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12lookForChildE", "Aidge::SinglePassGraphMatching::Context::lookForChild"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextaSERK7Context", "Aidge::SinglePassGraphMatching::Context::operator="], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context5queryE", "Aidge::SinglePassGraphMatching::Context::query"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context12singleOutputE", "Aidge::SinglePassGraphMatching::Context::singleOutput"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7Context9startNodeE", "Aidge::SinglePassGraphMatching::Context::startNode"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching7ContextD0Ev", "Aidge::SinglePassGraphMatching::Context::~Context"], [7, 3, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultE", "Aidge::SinglePassGraphMatching::MatchingResult"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultERK14MatchingResult", "Aidge::SinglePassGraphMatching::MatchingResult::MatchingResult"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultEv", "Aidge::SinglePassGraphMatching::MatchingResult::MatchingResult"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult14MatchingResultERK14MatchingResult", "Aidge::SinglePassGraphMatching::MatchingResult::MatchingResult::other"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult7anchorsE", "Aidge::SinglePassGraphMatching::MatchingResult::anchors"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult5graphE", "Aidge::SinglePassGraphMatching::MatchingResult::graph"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultaSERK14MatchingResult", "Aidge::SinglePassGraphMatching::MatchingResult::operator="], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultaSERK14MatchingResult", "Aidge::SinglePassGraphMatching::MatchingResult::operator=::other"], [7, 4, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResult9startNodeE", "Aidge::SinglePassGraphMatching::MatchingResult::startNode"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching14MatchingResultD0Ev", "Aidge::SinglePassGraphMatching::MatchingResult::~MatchingResult"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingENSt10shared_ptrI9GraphViewEE", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingERK23SinglePassGraphMatching", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingEv", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingENSt10shared_ptrI9GraphViewEE", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching::graph"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching23SinglePassGraphMatchingERK23SinglePassGraphMatching", "Aidge::SinglePassGraphMatching::SinglePassGraphMatching::other"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching13addNodeLambdaERKNSt6stringENSt8functionIFbRKNSt10shared_ptrI4NodeEEEEE", "Aidge::SinglePassGraphMatching::addNodeLambda"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching13addNodeLambdaERKNSt6stringENSt8functionIFbRKNSt10shared_ptrI4NodeEEEEE", "Aidge::SinglePassGraphMatching::addNodeLambda::func"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching13addNodeLambdaERKNSt6stringENSt8functionIFbRKNSt10shared_ptrI4NodeEEEEE", "Aidge::SinglePassGraphMatching::addNodeLambda::name"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching22filterLonguestDisjointERKNSt3setI14MatchingResultEE", "Aidge::SinglePassGraphMatching::filterLonguestDisjoint"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching22filterLonguestDisjointERKNSt3setI14MatchingResultEE", "Aidge::SinglePassGraphMatching::filterLonguestDisjoint::matches"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching5matchERKNSt6stringEb", "Aidge::SinglePassGraphMatching::match"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching5matchERKNSt6stringEb", "Aidge::SinglePassGraphMatching::match::disjoint"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching5matchERKNSt6stringEb", "Aidge::SinglePassGraphMatching::match::query"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatching9matchFromENSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::SinglePassGraphMatching::matchFrom"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching9matchFromENSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::SinglePassGraphMatching::matchFrom::query"], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatching9matchFromENSt10shared_ptrI4NodeEERKNSt6stringE", "Aidge::SinglePassGraphMatching::matchFrom::startNode"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatchingaSERK23SinglePassGraphMatching", "Aidge::SinglePassGraphMatching::operator="], [7, 1, 1, "_CPPv4N5Aidge23SinglePassGraphMatchingaSERK23SinglePassGraphMatching", "Aidge::SinglePassGraphMatching::operator=::other"], [7, 0, 1, "_CPPv4N5Aidge23SinglePassGraphMatchingD0Ev", "Aidge::SinglePassGraphMatching::~SinglePassGraphMatching"], [9, 0, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::axes"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::ends"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::name"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::starts"], [9, 1, 1, "_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE", "Aidge::Slice::steps"], [9, 0, 1, "_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE", "Aidge::Softmax"], [9, 1, 1, "_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE", "Aidge::Softmax::axis"], [9, 1, 1, "_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE", "Aidge::Softmax::name"], [9, 0, 1, "_CPPv4N5Aidge4SqrtERKNSt6stringE", "Aidge::Sqrt"], [9, 1, 1, "_CPPv4N5Aidge4SqrtERKNSt6stringE", "Aidge::Sqrt::name"], [9, 0, 1, "_CPPv4N5Aidge3SubERKNSt6stringE", "Aidge::Sub"], [9, 1, 1, "_CPPv4N5Aidge3SubERKNSt6stringE", "Aidge::Sub::name"], [9, 0, 1, "_CPPv4N5Aidge4TanhERKNSt6stringE", "Aidge::Tanh"], [9, 1, 1, "_CPPv4N5Aidge4TanhERKNSt6stringE", "Aidge::Tanh::name"], [4, 3, 1, "_CPPv4N5Aidge6TensorE", "Aidge::Tensor"], [4, 0, 1, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6TensorERK6Tensor", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6TensorERKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::Tensor"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6TensorERR6Tensor", "Aidge::Tensor::Tensor"], [4, 2, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", "Aidge::Tensor::Tensor::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", "Aidge::Tensor::Tensor::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", "Aidge::Tensor::Tensor::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::SIZE_3"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", "Aidge::Tensor::Tensor::SIZE_3"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", "Aidge::Tensor::Tensor::SIZE_4"], [4, 2, 1, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", "Aidge::Tensor::Tensor::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", "Aidge::Tensor::Tensor::VT"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor6TensorERR6VectorI1TE", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array1DI1T6SIZE_0E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E", "Aidge::Tensor::Tensor::arr"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat", "Aidge::Tensor::Tensor::dformat"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorERKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::Tensor::dims"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorE8DataType10DataFormat", "Aidge::Tensor::Tensor::dtype"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorERK6Tensor", "Aidge::Tensor::Tensor::other"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6TensorERR6Tensor", "Aidge::Tensor::Tensor::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6Tensor6TensorE1T", "Aidge::Tensor::Tensor::val"], [4, 4, 1, "_CPPv4N5Aidge6Tensor4TypeE", "Aidge::Tensor::Type"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor3absEv", "Aidge::Tensor::abs"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7backendEv", "Aidge::Tensor::backend"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor8capacityEv", "Aidge::Tensor::capacity"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4clipEff", "Aidge::Tensor::clip"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor4clipEff", "Aidge::Tensor::clip::max"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor4clipEff", "Aidge::Tensor::clip::min"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor5cloneEv", "Aidge::Tensor::clone"], [4, 0, 1, "_CPPv4N5Aidge6Tensor8copyCastERK6Tensor", "Aidge::Tensor::copyCast"], [4, 1, 1, "_CPPv4N5Aidge6Tensor8copyCastERK6Tensor", "Aidge::Tensor::copyCast::src"], [4, 0, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6Tensor", "Aidge::Tensor::copyCastFrom"], [4, 0, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6TensorRNSt10shared_ptrI6TensorEE", "Aidge::Tensor::copyCastFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6TensorRNSt10shared_ptrI6TensorEE", "Aidge::Tensor::copyCastFrom::movedSrc"], [4, 1, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6Tensor", "Aidge::Tensor::copyCastFrom::src"], [4, 1, 1, "_CPPv4N5Aidge6Tensor12copyCastFromERK6TensorRNSt10shared_ptrI6TensorEE", "Aidge::Tensor::copyCastFrom::src"], [4, 0, 1, "_CPPv4N5Aidge6Tensor8copyFromERK6Tensor", "Aidge::Tensor::copyFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor8copyFromERK6Tensor", "Aidge::Tensor::copyFrom::src"], [4, 0, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRK19DataFormatTranspose", "Aidge::Tensor::copyTranspose"], [4, 0, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::copyTranspose"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRK19DataFormatTranspose", "Aidge::Tensor::copyTranspose::src"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::copyTranspose::src"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRK19DataFormatTranspose", "Aidge::Tensor::copyTranspose::transpose"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13copyTransposeERK6TensorRKNSt6vectorI9DimSize_tEE", "Aidge::Tensor::copyTranspose::transpose"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor10dataFormatEv", "Aidge::Tensor::dataFormat"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor8dataTypeEv", "Aidge::Tensor::dataType"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6deviceEv", "Aidge::Tensor::device"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor3dimE8DimIdx_t", "Aidge::Tensor::dim"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3dimE8DimIdx_t", "Aidge::Tensor::dim::idx"], [4, 0, 1, "_CPPv4I_8DimIdx_tENK5Aidge6Tensor4dimsENSt5arrayI9DimSize_t3DIMEEv", "Aidge::Tensor::dims"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4dimsEv", "Aidge::Tensor::dims"], [4, 2, 1, "_CPPv4I_8DimIdx_tENK5Aidge6Tensor4dimsENSt5arrayI9DimSize_t3DIMEEv", "Aidge::Tensor::dims::DIM"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor5emptyEv", "Aidge::Tensor::empty"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract::coordIdx"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract::coordIdx"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7extractERKNSt6vectorINSt6size_tEEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::extract::dims"], [4, 0, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6size_tE", "Aidge::Tensor::get"], [4, 0, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6vectorINSt6size_tEEE", "Aidge::Tensor::get"], [4, 1, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6vectorINSt6size_tEEE", "Aidge::Tensor::get::coordIdx"], [4, 2, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6size_tE", "Aidge::Tensor::get::expectedType"], [4, 2, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6vectorINSt6size_tEEE", "Aidge::Tensor::get::expectedType"], [4, 1, 1, "_CPPv4I0ENK5Aidge6Tensor3getERK12expectedTypeNSt6size_tE", "Aidge::Tensor::get::idx"], [4, 0, 1, "_CPPv4N5Aidge6Tensor20getAvailableBackendsEv", "Aidge::Tensor::getAvailableBackends"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor8getCoordENSt6size_tE", "Aidge::Tensor::getCoord"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor8getCoordENSt6size_tE", "Aidge::Tensor::getCoord::index"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6getIdxERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::getIdx"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor6getIdxERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::getIdx::coords"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7getImplEv", "Aidge::Tensor::getImpl"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor13getImplOffsetEv", "Aidge::Tensor::getImplOffset"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor13getStorageIdxERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::getStorageIdx"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor13getStorageIdxERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::getStorageIdx::coordIdx"], [4, 0, 1, "_CPPv4N5Aidge6Tensor4gradEv", "Aidge::Tensor::grad"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7hasImplEv", "Aidge::Tensor::hasImpl"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor12isContiguousEv", "Aidge::Tensor::isContiguous"], [4, 0, 1, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", "Aidge::Tensor::isInBounds"], [4, 0, 1, "_CPPv4N5Aidge6Tensor10isInBoundsERKNSt6vectorI9DimSize_tEEKNSt6size_tE", "Aidge::Tensor::isInBounds"], [4, 2, 1, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", "Aidge::Tensor::isInBounds::T"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", "Aidge::Tensor::isInBounds::coords"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor10isInBoundsEbRKNSt6vectorI9DimSize_tEERKNSt6vectorI1TEE", "Aidge::Tensor::isInBounds::dimensions"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10isInBoundsERKNSt6vectorI9DimSize_tEEKNSt6size_tE", "Aidge::Tensor::isInBounds::dimensions"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10isInBoundsERKNSt6vectorI9DimSize_tEEKNSt6size_tE", "Aidge::Tensor::isInBounds::index"], [4, 0, 1, "_CPPv4N5Aidge6Tensor14makeContiguousEv", "Aidge::Tensor::makeContiguous"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4meanEv", "Aidge::Tensor::mean"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6nbDimsEv", "Aidge::Tensor::nbDims"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*"], [4, 0, 1, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", "Aidge::Tensor::operator*"], [4, 0, 1, "_CPPv4NK5Aidge6TensormlERK6Tensor", "Aidge::Tensor::operator*"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*::T"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", "Aidge::Tensor::operator*::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*::VT"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", "Aidge::Tensor::operator*::VT"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*::other"], [4, 1, 1, "_CPPv4NK5Aidge6TensormlERK6Tensor", "Aidge::Tensor::operator*::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormlE6Tensor1TRK6Tensor", "Aidge::Tensor::operator*::val"], [4, 1, 1, "_CPPv4I00ENK5Aidge6TensormlE6Tensor1T", "Aidge::Tensor::operator*::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", "Aidge::Tensor::operator*="], [4, 0, 1, "_CPPv4N5Aidge6TensormLERK6Tensor", "Aidge::Tensor::operator*="], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", "Aidge::Tensor::operator*=::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", "Aidge::Tensor::operator*=::VT"], [4, 1, 1, "_CPPv4N5Aidge6TensormLERK6Tensor", "Aidge::Tensor::operator*=::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormLER6Tensor1T", "Aidge::Tensor::operator*=::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+"], [4, 0, 1, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", "Aidge::Tensor::operator+"], [4, 0, 1, "_CPPv4NK5Aidge6TensorplERK6Tensor", "Aidge::Tensor::operator+"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+::T"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", "Aidge::Tensor::operator+::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+::VT"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", "Aidge::Tensor::operator+::VT"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+::other"], [4, 1, 1, "_CPPv4NK5Aidge6TensorplERK6Tensor", "Aidge::Tensor::operator+::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensorplE6Tensor1TRK6Tensor", "Aidge::Tensor::operator+::val"], [4, 1, 1, "_CPPv4I00ENK5Aidge6TensorplE6Tensor1T", "Aidge::Tensor::operator+::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", "Aidge::Tensor::operator+="], [4, 0, 1, "_CPPv4N5Aidge6TensorpLERK6Tensor", "Aidge::Tensor::operator+="], [4, 2, 1, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", "Aidge::Tensor::operator+=::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", "Aidge::Tensor::operator+=::VT"], [4, 1, 1, "_CPPv4N5Aidge6TensorpLERK6Tensor", "Aidge::Tensor::operator+=::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensorpLER6Tensor1T", "Aidge::Tensor::operator+=::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-"], [4, 0, 1, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", "Aidge::Tensor::operator-"], [4, 0, 1, "_CPPv4NK5Aidge6TensormiERK6Tensor", "Aidge::Tensor::operator-"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-::T"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", "Aidge::Tensor::operator-::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-::VT"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", "Aidge::Tensor::operator-::VT"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-::other"], [4, 1, 1, "_CPPv4NK5Aidge6TensormiERK6Tensor", "Aidge::Tensor::operator-::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormiE6Tensor1TRK6Tensor", "Aidge::Tensor::operator-::val"], [4, 1, 1, "_CPPv4I00ENK5Aidge6TensormiE6Tensor1T", "Aidge::Tensor::operator-::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", "Aidge::Tensor::operator-="], [4, 0, 1, "_CPPv4N5Aidge6TensormIERK6Tensor", "Aidge::Tensor::operator-="], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", "Aidge::Tensor::operator-=::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", "Aidge::Tensor::operator-=::VT"], [4, 1, 1, "_CPPv4N5Aidge6TensormIERK6Tensor", "Aidge::Tensor::operator-=::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensormIER6Tensor1T", "Aidge::Tensor::operator-=::val"], [4, 0, 1, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", "Aidge::Tensor::operator/"], [4, 0, 1, "_CPPv4NK5Aidge6TensordvERK6Tensor", "Aidge::Tensor::operator/"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", "Aidge::Tensor::operator/::T"], [4, 2, 1, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", "Aidge::Tensor::operator/::VT"], [4, 1, 1, "_CPPv4NK5Aidge6TensordvERK6Tensor", "Aidge::Tensor::operator/::other"], [4, 1, 1, "_CPPv4I00ENK5Aidge6TensordvE6Tensor1T", "Aidge::Tensor::operator/::val"], [4, 0, 1, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", "Aidge::Tensor::operator/="], [4, 0, 1, "_CPPv4N5Aidge6TensordVERK6Tensor", "Aidge::Tensor::operator/="], [4, 2, 1, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", "Aidge::Tensor::operator/=::T"], [4, 2, 1, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", "Aidge::Tensor::operator/=::VT"], [4, 1, 1, "_CPPv4N5Aidge6TensordVERK6Tensor", "Aidge::Tensor::operator/=::other"], [4, 1, 1, "_CPPv4I00EN5Aidge6TensordVER6Tensor1T", "Aidge::Tensor::operator/=::val"], [4, 0, 1, "_CPPv4I0EN5Aidge6TensoraSER6TensorRR6VectorI1TE", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4N5Aidge6TensoraSERK6Tensor", "Aidge::Tensor::operator="], [4, 0, 1, "_CPPv4N5Aidge6TensoraSERR6Tensor", "Aidge::Tensor::operator="], [4, 2, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", "Aidge::Tensor::operator=::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator=::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::SIZE_0"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator=::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::SIZE_1"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::SIZE_2"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::SIZE_3"], [4, 2, 1, "_CPPv4I0EN5Aidge6TensoraSER6TensorRR6VectorI1TE", "Aidge::Tensor::operator=::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", "Aidge::Tensor::operator=::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator=::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::T"], [4, 2, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::T"], [4, 1, 1, "_CPPv4I0EN5Aidge6TensoraSER6TensorRR6VectorI1TE", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array1DI1T6SIZE_0E", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array2DI1T6SIZE_06SIZE_1E", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array3DI1T6SIZE_06SIZE_16SIZE_2E", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6TensoraSER6TensorRR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E", "Aidge::Tensor::operator=::arr"], [4, 1, 1, "_CPPv4N5Aidge6TensoraSERK6Tensor", "Aidge::Tensor::operator=::other"], [4, 1, 1, "_CPPv4N5Aidge6TensoraSERR6Tensor", "Aidge::Tensor::operator=::other"], [4, 0, 1, "_CPPv4NK5Aidge6TensoreqERK6Tensor", "Aidge::Tensor::operator=="], [4, 1, 1, "_CPPv4NK5Aidge6TensoreqERK6Tensor", "Aidge::Tensor::operator==::otherTensor"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor5printEv", "Aidge::Tensor::print"], [4, 0, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref"], [4, 0, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::backend"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::backend"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::device"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::device"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::dt"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::dt"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref::fallback"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::ref::fallback"], [4, 1, 1, "_CPPv4N5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref::targetReqs"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor3refERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::ref::targetReqs"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast::dt"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast::dt"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refCastERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeE", "Aidge::Tensor::refCast::fallback"], [4, 0, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom"], [4, 0, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::backend"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::backend"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::device"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::device"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::dt"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::dt"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom::fallback"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERKN5Aidge8DataTypeERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refCastFrom::fallback"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom::targetReqs"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor11refCastFromERNSt10shared_ptrI6TensorEERK6Tensor", "Aidge::Tensor::refCastFrom::targetReqs"], [4, 0, 1, "_CPPv4N5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", "Aidge::Tensor::refContiguous"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", "Aidge::Tensor::refContiguous"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", "Aidge::Tensor::refContiguous::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor13refContiguousERNSt10shared_ptrI6TensorEE", "Aidge::Tensor::refContiguous::fallback"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::backend"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::backend"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::device"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::device"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::fallback"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor7refFromERNSt10shared_ptrI6TensorEERKNSt6stringE11DeviceIdx_t", "Aidge::Tensor::refFrom::fallback"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6repeatEi", "Aidge::Tensor::repeat"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor6repeatEi", "Aidge::Tensor::repeat::times"], [4, 0, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge6Tensor6resizeEvRKNSt5arrayI9DimSize_t3DIMEE", "Aidge::Tensor::resize"], [4, 0, 1, "_CPPv4N5Aidge6Tensor6resizeERKNSt6vectorI9DimSize_tEENSt6vectorI9DimSize_tEE", "Aidge::Tensor::resize"], [4, 2, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge6Tensor6resizeEvRKNSt5arrayI9DimSize_t3DIMEE", "Aidge::Tensor::resize::DIM"], [4, 1, 1, "_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge6Tensor6resizeEvRKNSt5arrayI9DimSize_t3DIMEE", "Aidge::Tensor::resize::dims"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6resizeERKNSt6vectorI9DimSize_tEENSt6vectorI9DimSize_tEE", "Aidge::Tensor::resize::dims"], [4, 1, 1, "_CPPv4N5Aidge6Tensor6resizeERKNSt6vectorI9DimSize_tEENSt6vectorI9DimSize_tEE", "Aidge::Tensor::resize::strides"], [4, 0, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", "Aidge::Tensor::set"], [4, 0, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", "Aidge::Tensor::set"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", "Aidge::Tensor::set::coordIdx"], [4, 2, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", "Aidge::Tensor::set::expectedType"], [4, 2, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", "Aidge::Tensor::set::expectedType"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", "Aidge::Tensor::set::idx"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6size_tE12expectedType", "Aidge::Tensor::set::value"], [4, 1, 1, "_CPPv4I0EN5Aidge6Tensor3setEvNSt6vectorINSt6size_tEEE12expectedType", "Aidge::Tensor::set::value"], [4, 0, 1, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", "Aidge::Tensor::setBackend"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", "Aidge::Tensor::setBackend::copyFrom"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", "Aidge::Tensor::setBackend::device"], [4, 1, 1, "_CPPv4N5Aidge6Tensor10setBackendERKNSt6stringE11DeviceIdx_tb", "Aidge::Tensor::setBackend::name"], [4, 0, 1, "_CPPv4N5Aidge6Tensor13setDataFormatEK10DataFormatb", "Aidge::Tensor::setDataFormat"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13setDataFormatEK10DataFormatb", "Aidge::Tensor::setDataFormat::copyTrans"], [4, 1, 1, "_CPPv4N5Aidge6Tensor13setDataFormatEK10DataFormatb", "Aidge::Tensor::setDataFormat::df"], [4, 0, 1, "_CPPv4N5Aidge6Tensor11setDataTypeEK8DataTypeb", "Aidge::Tensor::setDataType"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11setDataTypeEK8DataTypeb", "Aidge::Tensor::setDataType::copyCast"], [4, 1, 1, "_CPPv4N5Aidge6Tensor11setDataTypeEK8DataTypeb", "Aidge::Tensor::setDataType::dt"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7setGradENSt10shared_ptrI6TensorEE", "Aidge::Tensor::setGrad"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7setGradENSt10shared_ptrI6TensorEE", "Aidge::Tensor::setGrad::newGrad"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7setImplENSt10shared_ptrI10TensorImplEENSt6size_tE", "Aidge::Tensor::setImpl"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7setImplENSt10shared_ptrI10TensorImplEENSt6size_tE", "Aidge::Tensor::setImpl::impl"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7setImplENSt10shared_ptrI10TensorImplEENSt6size_tE", "Aidge::Tensor::setImpl::implOffset"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4sizeEv", "Aidge::Tensor::size"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor4sqrtEv", "Aidge::Tensor::sqrt"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor6strideE8DimIdx_t", "Aidge::Tensor::stride"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor6strideE8DimIdx_t", "Aidge::Tensor::stride::idx"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor7stridesEv", "Aidge::Tensor::strides"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE", "Aidge::Tensor::toCoord"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE", "Aidge::Tensor::toCoord::dimensions"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7toCoordERKNSt6vectorIN5Aidge9DimSize_tEEENSt6size_tE", "Aidge::Tensor::toCoord::index"], [4, 0, 1, "_CPPv4N5Aidge6Tensor7toIndexERKNSt6vectorI9DimSize_tEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::toIndex"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7toIndexERKNSt6vectorI9DimSize_tEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::toIndex::coords"], [4, 1, 1, "_CPPv4N5Aidge6Tensor7toIndexERKNSt6vectorI9DimSize_tEERKNSt6vectorINSt6size_tEEE", "Aidge::Tensor::toIndex::dimensions"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor8toStringEiNSt6size_tE", "Aidge::Tensor::toString"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor8toStringEiNSt6size_tE", "Aidge::Tensor::toString::offset"], [4, 1, 1, "_CPPv4NK5Aidge6Tensor8toStringEiNSt6size_tE", "Aidge::Tensor::toString::precision"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor9undefinedEv", "Aidge::Tensor::undefined"], [4, 0, 1, "_CPPv4NK5Aidge6Tensor5zerosEv", "Aidge::Tensor::zeros"], [4, 0, 1, "_CPPv4N5Aidge6TensorD0Ev", "Aidge::Tensor::~Tensor"], [9, 0, 1, "_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Transpose"], [9, 1, 1, "_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Transpose::name"], [9, 1, 1, "_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE", "Aidge::Transpose::outputDimsOrder"], [10, 0, 1, "_CPPv4N5Aidge14adaptToBackendENSt10shared_ptrI9GraphViewEE", "Aidge::adaptToBackend"], [10, 1, 1, "_CPPv4N5Aidge14adaptToBackendENSt10shared_ptrI9GraphViewEE", "Aidge::adaptToBackend::graph"], [10, 0, 1, "_CPPv4N5Aidge15constantFoldingENSt10shared_ptrI9GraphViewEEb", "Aidge::constantFolding"], [10, 1, 1, "_CPPv4N5Aidge15constantFoldingENSt10shared_ptrI9GraphViewEEb", "Aidge::constantFolding::constantShape"], [10, 1, 1, "_CPPv4N5Aidge15constantFoldingENSt10shared_ptrI9GraphViewEEb", "Aidge::constantFolding::graph"], [10, 0, 1, "_CPPv4N5Aidge12convToMatMulENSt10shared_ptrI9GraphViewEE", "Aidge::convToMatMul"], [10, 1, 1, "_CPPv4N5Aidge12convToMatMulENSt10shared_ptrI9GraphViewEE", "Aidge::convToMatMul::graph"], [10, 0, 1, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb", "Aidge::expandMetaOps"], [10, 1, 1, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb", "Aidge::expandMetaOps::graph"], [10, 1, 1, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb", "Aidge::expandMetaOps::nameFormat"], [10, 1, 1, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb", "Aidge::expandMetaOps::recursive"], [10, 1, 1, "_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb", "Aidge::expandMetaOps::uniqueName"], [10, 0, 1, "_CPPv4N5Aidge16explicitCastMoveENSt10shared_ptrI9GraphViewEE", "Aidge::explicitCastMove"], [10, 1, 1, "_CPPv4N5Aidge16explicitCastMoveENSt10shared_ptrI9GraphViewEE", "Aidge::explicitCastMove::graphView"], [10, 0, 1, "_CPPv4N5Aidge17explicitTransposeENSt10shared_ptrI9GraphViewEE", "Aidge::explicitTranspose"], [10, 1, 1, "_CPPv4N5Aidge17explicitTransposeENSt10shared_ptrI9GraphViewEE", "Aidge::explicitTranspose::graphView"], [10, 0, 1, "_CPPv4N5Aidge13fuseBatchNormENSt10shared_ptrI9GraphViewEE", "Aidge::fuseBatchNorm"], [10, 1, 1, "_CPPv4N5Aidge13fuseBatchNormENSt10shared_ptrI9GraphViewEE", "Aidge::fuseBatchNorm::graphView"], [10, 0, 1, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", "Aidge::fuseToMetaOps"], [10, 1, 1, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", "Aidge::fuseToMetaOps::gm"], [10, 1, 1, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", "Aidge::fuseToMetaOps::query"], [10, 1, 1, "_CPPv4N5Aidge13fuseToMetaOpsER23SinglePassGraphMatchingRKNSt6stringERKNSt6stringE", "Aidge::fuseToMetaOps::type"], [6, 0, 1, "_CPPv4N5Aidge13generateGraphERKNSt6vectorI9ConnectorEE", "Aidge::generateGraph"], [6, 1, 1, "_CPPv4N5Aidge13generateGraphERKNSt6vectorI9ConnectorEE", "Aidge::generateGraph::ctors"], [6, 0, 1, "_CPPv4N5Aidge21getConnectedGraphViewENSt10shared_ptrI4NodeEE", "Aidge::getConnectedGraphView"], [6, 1, 1, "_CPPv4N5Aidge21getConnectedGraphViewENSt10shared_ptrI4NodeEE", "Aidge::getConnectedGraphView::node"], [10, 0, 1, "_CPPv4N5Aidge12matMulTilingE7NodePtrRKNSt6vectorI9DimSize_tEE", "Aidge::matMulTiling"], [10, 1, 1, "_CPPv4N5Aidge12matMulTilingE7NodePtrRKNSt6vectorI9DimSize_tEE", "Aidge::matMulTiling::matMul"], [10, 1, 1, "_CPPv4N5Aidge12matMulTilingE7NodePtrRKNSt6vectorI9DimSize_tEE", "Aidge::matMulTiling::maxDims"], [10, 0, 1, "_CPPv4N5Aidge10matMulToFCENSt10shared_ptrI9GraphViewEE", "Aidge::matMulToFC"], [10, 1, 1, "_CPPv4N5Aidge10matMulToFCENSt10shared_ptrI9GraphViewEE", "Aidge::matMulToFC::graphView"], [10, 0, 1, "_CPPv4N5Aidge13removeDropoutENSt10shared_ptrI9GraphViewEE", "Aidge::removeDropout"], [10, 1, 1, "_CPPv4N5Aidge13removeDropoutENSt10shared_ptrI9GraphViewEE", "Aidge::removeDropout::graphView"], [10, 0, 1, "_CPPv4N5Aidge13removeFlattenENSt10shared_ptrI9GraphViewEE", "Aidge::removeFlatten"], [10, 1, 1, "_CPPv4N5Aidge13removeFlattenENSt10shared_ptrI9GraphViewEE", "Aidge::removeFlatten::graphView"], [2, 0, 1, "_CPPv4N5Aidge12tensorOpencvEN2cv3MatE", "Aidge::tensorOpencv"], [2, 1, 1, "_CPPv4N5Aidge12tensorOpencvEN2cv3MatE", "Aidge::tensorOpencv::mat"], [12, 0, 1, "_CPPv49calibrate23calibration_folder_path15cache_file_path10batch_size", "calibrate"], [12, 0, 1, "_CPPv46device2id", "device"], [12, 0, 1, "_CPPv410initializev", "initialize"], [12, 0, 1, "_CPPv44load8filepath", "load"], [12, 0, 1, "_CPPv47profile13nb_iterations4mode", "profile"], [12, 0, 1, "_CPPv48run_sync6inputs", "run_sync"], [12, 0, 1, "_CPPv44save8filepath", "save"]], "aidge_backend_opencv": [[2, 8, 1, "", "MNIST"]], "aidge_backend_opencv.MNIST": [[2, 9, 1, "", "__init__"], [2, 9, 1, "", "get_item"], [2, 9, 1, "", "get_len"], [2, 9, 1, "", "get_nb_modalities"], [2, 9, 1, "", "len"]], "aidge_core": [[9, 10, 1, "", "Add"], [9, 10, 1, "", "AvgPooling1D"], [9, 10, 1, "", "AvgPooling2D"], [9, 10, 1, "", "AvgPooling3D"], [9, 10, 1, "", "BatchNorm2D"], [9, 10, 1, "", "Concat"], [6, 8, 1, "", "Connector"], [9, 10, 1, "", "Conv1D"], [9, 10, 1, "", "Conv2D"], [9, 10, 1, "", "ConvDepthWise1D"], [9, 10, 1, "", "ConvDepthWise2D"], [4, 8, 1, "", "DataProvider"], [9, 10, 1, "", "Div"], [9, 10, 1, "", "Erf"], [9, 10, 1, "", "FC"], [9, 10, 1, "", "Gather"], [9, 10, 1, "", "GenericOperator"], [6, 8, 1, "", "GraphView"], [3, 8, 1, "", "IOSpec"], [9, 10, 1, "", "Identity"], [3, 8, 1, "", "ImplSpec"], [9, 10, 1, "", "LSTM"], [9, 10, 1, "", "LeakyReLU"], [9, 10, 1, "", "MatMul"], [9, 10, 1, "", "Mul"], [6, 8, 1, "", "Node"], [9, 8, 1, "", "Operator"], [9, 8, 1, "", "OperatorTensor"], [9, 10, 1, "", "PaddedAvgPooling2D"], [9, 10, 1, "", "PaddedConv1D"], [9, 10, 1, "", "PaddedConv2D"], [9, 10, 1, "", "PaddedConvDepthWise1D"], [9, 10, 1, "", "PaddedConvDepthWise2D"], [9, 10, 1, "", "PaddedMaxPooling2D"], [11, 8, 1, "", "ParallelScheduler"], [9, 10, 1, "", "Pop"], [9, 10, 1, "", "Pow"], [9, 10, 1, "", "Producer"], [9, 10, 1, "", "ReLU"], [9, 10, 1, "", "ReduceMean"], [9, 10, 1, "", "Reshape"], [11, 8, 1, "", "Scheduler"], [11, 8, 1, "", "SequentialScheduler"], [9, 10, 1, "", "Sigmoid"], [7, 8, 1, "", "SinglePassGraphMatching"], [9, 10, 1, "", "Slice"], [9, 10, 1, "", "Softmax"], [9, 10, 1, "", "Sqrt"], [9, 10, 1, "", "Sub"], [9, 10, 1, "", "Tanh"], [4, 8, 1, "", "Tensor"], [9, 10, 1, "", "Transpose"], [10, 10, 1, "", "adapt_to_backend"], [10, 10, 1, "", "expand_metaops"], [10, 10, 1, "", "fuse_batchnorm"], [10, 10, 1, "", "fuse_to_metaops"], [6, 10, 1, "", "generate_graph"], [6, 10, 1, "", "get_connected_graph_view"], [10, 10, 1, "", "matmul_to_fc"], [9, 10, 1, "", "meta_operator"], [6, 10, 1, "", "parallel"], [10, 10, 1, "", "remove_flatten"], [6, 10, 1, "", "residual"], [6, 10, 1, "", "sequential"]], "aidge_core.Connector": [[6, 9, 1, "", "__init__"]], "aidge_core.DataProvider": [[4, 9, 1, "", "__init__"]], "aidge_core.GraphView": [[6, 9, 1, "", "__init__"], [6, 9, 1, "", "add"], [6, 9, 1, "", "add_child"], [6, 9, 1, "", "add_ordered_outputs"], [6, 9, 1, "", "clone"], [6, 9, 1, "", "compile"], [6, 9, 1, "", "forward_dims"], [6, 9, 1, "", "forward_dtype"], [6, 9, 1, "", "get_input_nodes"], [6, 9, 1, "", "get_node"], [6, 9, 1, "", "get_nodes"], [6, 9, 1, "", "get_ordered_inputs"], [6, 9, 1, "", "get_ordered_nodes"], [6, 9, 1, "", "get_ordered_outputs"], [6, 9, 1, "", "get_output_nodes"], [6, 9, 1, "", "get_ranked_nodes"], [6, 9, 1, "", "get_ranked_nodes_name"], [6, 9, 1, "", "in_view"], [6, 9, 1, "", "inputs"], [6, 9, 1, "", "insert_parent"], [6, 9, 1, "", "log_outputs"], [6, 9, 1, "", "outputs"], [6, 9, 1, "", "replace"], [6, 9, 1, "", "root_node"], [6, 9, 1, "", "save"], [6, 9, 1, "", "set_backend"], [6, 9, 1, "", "set_dataformat"], [6, 9, 1, "", "set_datatype"], [6, 9, 1, "", "set_name"], [6, 9, 1, "", "set_ordered_inputs"], [6, 9, 1, "", "set_ordered_outputs"], [6, 9, 1, "", "set_root_node"]], "aidge_core.IOSpec": [[3, 9, 1, "", "__init__"]], "aidge_core.ImplSpec": [[3, 9, 1, "", "__init__"]], "aidge_core.Node": [[6, 9, 1, "", "__init__"], [6, 9, 1, "", "add_child"], [6, 9, 1, "", "attributes"], [6, 9, 1, "", "clone"], [6, 9, 1, "", "create_unique_name"], [6, 9, 1, "", "get_children"], [6, 9, 1, "", "get_nb_inputs"], [6, 9, 1, "", "get_nb_outputs"], [6, 9, 1, "", "get_operator"], [6, 9, 1, "", "get_ordered_children"], [6, 9, 1, "", "get_parent"], [6, 9, 1, "", "get_parents"], [6, 9, 1, "", "input"], [6, 9, 1, "", "input_category"], [6, 9, 1, "", "input_name"], [6, 9, 1, "", "inputs"], [6, 9, 1, "", "inputs_names"], [6, 9, 1, "", "name"], [6, 9, 1, "", "output"], [6, 9, 1, "", "output_name"], [6, 9, 1, "", "outputs"], [6, 9, 1, "", "outputs_names"], [6, 9, 1, "", "set_name"], [6, 9, 1, "", "type"]], "aidge_core.Operator": [[9, 9, 1, "", "__init__"], [9, 9, 1, "", "associate_input"], [9, 9, 1, "", "backend"], [9, 9, 1, "", "clone"], [9, 9, 1, "", "forward"], [9, 9, 1, "", "get_impl"], [9, 9, 1, "", "get_raw_input"], [9, 9, 1, "", "get_raw_output"], [9, 9, 1, "", "input_category"], [9, 9, 1, "", "is_atomic"], [9, 9, 1, "", "is_back_edge"], [9, 9, 1, "", "is_optional_input"], [9, 9, 1, "", "nb_inputs"], [9, 9, 1, "", "nb_outputs"], [9, 9, 1, "", "set_back_edges"], [9, 9, 1, "", "set_backend"], [9, 9, 1, "", "set_dataformat"], [9, 9, 1, "", "set_datatype"], [9, 9, 1, "", "set_impl"], [9, 9, 1, "", "set_input"], [9, 9, 1, "", "set_output"], [9, 9, 1, "", "type"]], "aidge_core.OperatorTensor": [[9, 9, 1, "", "__init__"], [9, 9, 1, "", "associate_input"], [9, 9, 1, "", "backend"], [9, 9, 1, "", "clone"], [9, 9, 1, "", "dims_forwarded"], [9, 9, 1, "", "forward"], [9, 9, 1, "", "forward_dims"], [9, 9, 1, "", "forward_dtype"], [9, 9, 1, "", "get_impl"], [9, 9, 1, "", "get_input"], [9, 9, 1, "", "get_inputs"], [9, 9, 1, "", "get_output"], [9, 9, 1, "", "get_outputs"], [9, 9, 1, "", "get_raw_input"], [9, 9, 1, "", "get_raw_output"], [9, 9, 1, "", "input_category"], [9, 9, 1, "", "is_atomic"], [9, 9, 1, "", "is_back_edge"], [9, 9, 1, "", "is_optional_input"], [9, 9, 1, "", "nb_inputs"], [9, 9, 1, "", "nb_outputs"], [9, 9, 1, "", "set_back_edges"], [9, 9, 1, "", "set_backend"], [9, 9, 1, "", "set_dataformat"], [9, 9, 1, "", "set_datatype"], [9, 9, 1, "", "set_impl"], [9, 9, 1, "", "set_input"], [9, 9, 1, "", "set_output"], [9, 9, 1, "", "type"]], "aidge_core.ParallelScheduler": [[11, 9, 1, "", "__init__"], [11, 9, 1, "", "clear_scheduling"], [11, 9, 1, "", "forward"], [11, 9, 1, "", "generate_scheduling"], [11, 9, 1, "", "get_backward_scheduling"], [11, 9, 1, "", "get_forward_scheduling"], [11, 9, 1, "", "get_sequential_static_scheduling"], [11, 9, 1, "", "get_static_scheduling"], [11, 9, 1, "", "graph_view"], [11, 9, 1, "", "reset_scheduling"], [11, 9, 1, "", "save_factorized_static_scheduling_diagram"], [11, 9, 1, "", "save_scheduling_diagram"], [11, 9, 1, "", "save_static_scheduling_diagram"], [11, 9, 1, "", "tag_conditional_nodes"]], "aidge_core.Scheduler": [[11, 9, 1, "", "__init__"], [11, 9, 1, "", "clear_scheduling"], [11, 9, 1, "", "generate_scheduling"], [11, 9, 1, "", "get_backward_scheduling"], [11, 9, 1, "", "get_forward_scheduling"], [11, 9, 1, "", "get_sequential_static_scheduling"], [11, 9, 1, "", "get_static_scheduling"], [11, 9, 1, "", "graph_view"], [11, 9, 1, "", "reset_scheduling"], [11, 9, 1, "", "save_factorized_static_scheduling_diagram"], [11, 9, 1, "", "save_scheduling_diagram"], [11, 9, 1, "", "save_static_scheduling_diagram"], [11, 9, 1, "", "tag_conditional_nodes"]], "aidge_core.SequentialScheduler": [[11, 9, 1, "", "__init__"], [11, 9, 1, "", "backward"], [11, 9, 1, "", "clear_scheduling"], [11, 9, 1, "", "forward"], [11, 9, 1, "", "generate_memory"], [11, 9, 1, "", "generate_memory_auto_concat"], [11, 9, 1, "", "generate_scheduling"], [11, 9, 1, "", "get_backward_scheduling"], [11, 9, 1, "", "get_forward_scheduling"], [11, 9, 1, "", "get_sequential_static_scheduling"], [11, 9, 1, "", "get_static_scheduling"], [11, 9, 1, "", "graph_view"], [11, 9, 1, "", "reset_scheduling"], [11, 9, 1, "", "save_factorized_static_scheduling_diagram"], [11, 9, 1, "", "save_scheduling_diagram"], [11, 9, 1, "", "save_static_scheduling_diagram"], [11, 9, 1, "", "set_scheduling_policy"], [11, 9, 1, "", "tag_conditional_nodes"]], "aidge_core.SinglePassGraphMatching": [[7, 9, 1, "", "__init__"], [7, 9, 1, "", "add_node_lambda"], [7, 9, 1, "", "match"]], "aidge_core.Tensor": [[4, 9, 1, "", "__init__"], [4, 9, 1, "", "abs"], [4, 9, 1, "", "backend"], [4, 9, 1, "", "capacity"], [4, 9, 1, "", "clone"], [4, 9, 1, "", "cpy_transpose"], [4, 9, 1, "", "dformat"], [4, 9, 1, "", "dims"], [4, 9, 1, "", "dtype"], [4, 9, 1, "", "get_available_backends"], [4, 9, 1, "", "get_coord"], [4, 9, 1, "", "get_idx"], [4, 9, 1, "", "grad"], [4, 9, 1, "", "has_impl"], [4, 9, 1, "", "mean"], [4, 9, 1, "", "resize"], [4, 9, 1, "", "set_backend"], [4, 9, 1, "", "set_data_format"], [4, 9, 1, "", "set_datatype"], [4, 9, 1, "", "set_grad"], [4, 9, 1, "", "size"], [4, 9, 1, "", "sqrt"], [4, 9, 1, "", "stride"], [4, 9, 1, "", "strides"], [4, 9, 1, "", "undefined"], [4, 9, 1, "", "zeros"]], "aidge_core.export_utils": [[5, 8, 1, "", "ExportLib"], [5, 8, 1, "", "ExportNode"], [5, 8, 1, "", "ExportNodeCpp"], [5, 10, 1, "", "scheduler_export"]], "aidge_core.export_utils.ExportLib": [[5, 9, 1, "", "__init__"], [5, 9, 1, "", "backend"], [5, 9, 1, "", "backward"], [5, 9, 1, "", "forward"], [5, 9, 1, "", "get_adaptation"], [5, 9, 1, "", "get_available_impl_specs"], [5, 9, 1, "", "get_best_adaptation"], [5, 9, 1, "", "get_best_match"], [5, 9, 1, "", "get_export_node"], [5, 9, 1, "", "get_operator"], [5, 9, 1, "", "get_prod_conso"], [5, 9, 1, "", "get_required_spec"], [5, 9, 1, "", "prod_conso"], [5, 9, 1, "", "register"], [5, 9, 1, "", "register_generic"], [5, 9, 1, "", "register_metaop"]], "aidge_core.export_utils.ExportNode": [[5, 9, 1, "", "__init__"]], "aidge_core.export_utils.ExportNodeCpp": [[5, 9, 1, "", "__init__"], [5, 9, 1, "", "add_kernel_to_copy"], [5, 9, 1, "", "export"], [5, 9, 1, "", "forward"], [5, 9, 1, "", "reformat_kernels_to_copy"]], "aidge_export_tensorrt": [[12, 10, 1, "", "export"]], "aidge_onnx": [[13, 10, 1, "", "export_onnx"], [13, 10, 1, "", "load_onnx"]], "aidge_onnx.node_export": [[13, 10, 1, "", "auto_register_export"], [13, 10, 1, "", "register_export"], [13, 10, 1, "", "supported_operators"]], "aidge_onnx.node_export.generic_export": [[13, 10, 1, "", "generic_export"]], "aidge_onnx.node_import": [[13, 11, 1, "", "ONNX_NODE_CONVERTER_"], [13, 10, 1, "", "auto_register_import"], [13, 10, 1, "", "register_import"], [13, 10, 1, "", "supported_operators"]], "aidge_onnx.node_import.generic": [[13, 10, 1, "", "import_generic"]]}, "objnames": {"0": ["cpp", "function", "C++ function"], "1": ["cpp", "functionParam", "C++ function parameter"], "2": ["cpp", "templateParam", "C++ template parameter"], "3": ["cpp", "class", "C++ class"], "4": ["cpp", "member", "C++ member"], "5": ["cpp", "enum", "C++ enum"], "6": ["cpp", "enumerator", "C++ enumerator"], "7": ["cpp", "union", "C++ union"], "8": ["py", "class", "Python class"], "9": ["py", "method", "Python method"], "10": ["py", "function", "Python function"], "11": ["py", "data", "Python data"]}, "objtypes": {"0": "cpp:function", "1": "cpp:functionParam", "2": "cpp:templateParam", "3": "cpp:class", "4": "cpp:member", "5": "cpp:enum", "6": "cpp:enumerator", "7": "cpp:union", "8": "py:class", "9": "py:method", "10": "py:function", "11": "py:data"}, "terms": {"": [0, 4, 5, 6, 9, 10, 11, 12, 17, 18, 19, 20, 23, 24, 27, 28, 30, 31, 33, 34, 35, 41, 45, 47], "0": [0, 4, 5, 6, 7, 9, 10, 11, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 30, 31, 32, 33, 34, 46, 49], "00": [23, 30, 33], "000": 31, "000000": [23, 26], "01": [30, 31, 33], "02": 31, "03": 31, "04": [19, 31], "0443442": 20, "05": 31, "06": [9, 31], "0625": 30, "07": 31, "07mb": 23, "08": 31, "09": 31, "0996679": 20, "099668": 20, "0e": 9, "0f": 9, "0mb": 33, "0x1b": [23, 24], "1": [0, 3, 4, 5, 6, 7, 9, 10, 11, 12, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 30, 31, 32, 33, 34, 37, 49], "10": [4, 6, 19, 20, 21, 23, 24, 25, 26, 27, 30, 31, 32, 33, 34], "100": [19, 23, 25, 30, 31, 33], "10000000149011612": 9, "101": 27, "101_first_step": [19, 22], "102": 26, "104": 31, "11": [19, 23, 24, 26, 27, 30, 31, 33, 34], "112": 6, "1122966": 20, "12": [19, 23, 24, 26, 27, 30, 31, 33, 34], "120": 21, "125": 23, "127": 26, "128": 30, "13": [19, 23, 24, 26, 30, 31, 33, 34], "13579765": 20, "139": 23, "13954135": 20, "14": [19, 20, 23, 24, 26, 30, 31, 33, 35], "15": [19, 20, 23, 24, 26, 30, 31, 33], "150": 33, "1513": 27, "1514": 27, "1515": 27, "1516": 27, "1517": 27, "1518": 27, "1519": 27, "1520": 27, "1521": 27, "1522": 27, "1523": 27, "1536": 33, "159": 33, "16": [19, 20, 21, 23, 24, 26, 28, 30, 31, 32, 33, 37], "161": 19, "162": 19, "163": 19, "164": 19, "165": 19, "16bit": [39, 46], "16x16": 10, "17": [19, 20, 23, 24, 26, 30, 31, 33], "172": 19, "173": 19, "174": 19, "175": 19, "176": 19, "18": [6, 19, 20, 33], "18512852": 20, "19": [0, 19, 20, 23, 24, 26, 31], "192": 30, "199": 30, "1d": [4, 46], "1e": 19, "1f": 9, "2": [0, 4, 5, 6, 7, 9, 10, 11, 19, 20, 21, 22, 23, 24, 25, 26, 28, 30, 31, 32, 33, 34, 37, 49], "20": [19, 23, 24, 25, 30, 31], "200": [20, 22, 31], "2017": [23, 26, 30], "2025": [0, 23, 26, 30], "20392664": 20, "205": 19, "206": 19, "207": 19, "208": 19, "209": [19, 33], "21": [19, 23, 26, 30], "210": 19, "211": 19, "212": 19, "216": 23, "22": [5, 19], "224": [6, 19, 33], "224x224": 27, "225": 19, "226": 19, "226176": 33, "228": 19, "229": 19, "23": [5, 19], "24": [5, 19, 30, 33], "2406125": 20, "24236728": 20, "24839124": 20, "25": [5, 10, 19, 33], "252": 27, "253": 27, "254": 27, "255": [23, 25, 26, 27], "256": [27, 30, 33], "257": [27, 33], "26": [19, 23, 26, 30], "2689649": 20, "27": [19, 30], "277": 33, "28": [19, 21, 23, 24, 25, 26, 31], "29": [5, 19], "2bcpu": 30, "2d": [18, 37, 46], "3": [4, 6, 9, 10, 16, 19, 20, 22, 23, 24, 26, 28, 30, 31, 32, 33, 34, 35, 37, 49], "30": [5, 19, 24], "300px": [23, 26], "30561584": 20, "30594590306282043": 30, "31": [5, 24, 25], "310586": 20, "3125": 30, "32": [5, 23, 24, 26, 30, 32, 34, 37], "320": 30, "322916666666666": 30, "32bit": [39, 46], "33": 24, "33549389243125916": 30, "34": [19, 23, 24, 27, 32], "3463484048843384": 30, "3479292": 20, "349k": 23, "35": 24, "3502": 27, "3504": 27, "3505": 27, "3506": 27, "3507": 27, "36": [19, 23, 24, 26, 30], "37": 24, "374999999999998": 30, "38": [19, 24, 33], "384": [30, 33], "39": [19, 20, 23, 24, 26, 27, 28, 31, 33], "3947506": 20, "3985453": 20, "3d": [32, 46], "3f": 31, "3rd": 6, "3x3": [28, 32, 49], "4": [2, 4, 6, 9, 19, 20, 21, 22, 23, 24, 26, 28, 30, 31, 32, 33, 34, 37], "40": [19, 30], "41": [23, 26], "415": 27, "416": 27, "417": 27, "418": 27, "419": 27, "4294967295": 6, "449": [19, 24], "450": [19, 24], "451": [19, 24], "452": [19, 24], "454": [19, 24], "460281": 20, "486709862947464": 30, "49": 33, "4923961": 20, "4d": 46, "5": [4, 6, 9, 10, 19, 20, 21, 22, 23, 24, 26, 27, 28, 30, 31, 32, 33, 34, 37], "50": [6, 33], "500": 27, "51": [23, 26], "512": [28, 30, 32], "519796": 20, "52": 24, "5249792": 20, "53": 24, "54": [24, 27], "55": [24, 27], "56": [24, 27], "5616523027420044": 30, "57": [24, 27], "58": 27, "59": [24, 31], "590208": 33, "591360": 33, "591370": 33, "5d": 46, "5f": 9, "6": [0, 9, 12, 19, 20, 21, 22, 23, 24, 26, 27, 30, 31, 33, 34, 37], "60": 24, "62": 31, "625": 30, "63": 32, "6382758": 20, "64": [6, 30, 37], "64x64": 37, "65535": 6, "66": 34, "67": 31, "6773143": 20, "6773148": 20, "69": 31, "7": [9, 16, 19, 20, 22, 23, 24, 26, 27, 30, 31, 32, 33, 34, 37], "71": 28, "71598424": 20, "72": 33, "7233275": 20, "73": [28, 33], "74": 28, "75": [28, 31], "76": 28, "77": 28, "770": 33, "78": 28, "79": 28, "7916586995124817": 30, "7m": 33, "8": [12, 16, 19, 20, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 37], "80": 28, "8080": 27, "80x80": 10, "81": 28, "81001099": 20, "82": [28, 33], "824": 33, "83": 28, "84": [21, 28, 33], "85": [28, 31], "86": 28, "87": 28, "8739378": 20, "88": 28, "89": [28, 31], "8982372": 20, "8bit": [39, 46], "9": [9, 19, 20, 22, 23, 24, 26, 27, 30, 31, 33, 34, 49], "90": 31, "91": 31, "93": 31, "9375": 30, "94": 31, "95": 31, "96230666": 20, "9633999999999999": 22, "97": 31, "979166666666668": 30, "98370683": 20, "98688": 33, "99": 31, "99051021": 20, "999999747378752e": 9, "A": [4, 5, 6, 7, 9, 11, 12, 13, 18, 28, 32, 35, 37, 46, 49], "AND": [4, 49], "And": [19, 20, 25, 28], "As": [6, 9, 18, 19, 20, 28, 31, 32, 39, 46], "At": [19, 32], "But": 31, "By": [7, 16, 28, 32], "For": [0, 4, 9, 10, 11, 16, 18, 19, 20, 21, 24, 25, 27, 28, 30, 32, 35, 36, 37, 39, 40, 41, 46, 49], "IN": 6, "If": [4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 19, 20, 27, 29, 31, 32, 40, 45, 49], "In": [4, 6, 7, 11, 18, 19, 20, 23, 24, 27, 28, 30, 31, 32, 33, 35, 39, 40, 49], "It": [4, 5, 6, 7, 9, 11, 13, 18, 19, 28, 32, 40, 46, 49], "Its": 18, "NOT": 49, "No": [4, 6, 18, 19, 20, 24, 27, 30, 31], "Not": [6, 9, 46], "ON": 16, "OR": 49, "Of": 32, "One": [6, 7, 19, 28, 32, 49], "Such": 46, "TO": 27, "That": [6, 31, 35, 39], "The": [0, 4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 19, 20, 21, 24, 27, 28, 30, 32, 33, 34, 35, 36, 37, 39, 40, 41, 45, 46, 49], "Then": [6, 16, 20, 27, 31], "There": [6, 32, 41], "These": [19, 40, 41, 46, 47], "To": [6, 7, 16, 19, 27, 28, 29, 30, 31, 32, 33, 37, 46, 49], "With": [6, 19, 32, 40], "_": [20, 27, 33], "__": 32, "__file__": 24, "__getitem__": 30, "__init__": [2, 3, 4, 5, 6, 7, 9, 11, 19, 20, 21, 24, 27, 30, 32], "__main__": 27, "__name__": 27, "_add": 20, "_div": 20, "_export_int8": 25, "_get_file_path": 19, "_get_seri": 19, "_in": 6, "_input": 20, "_input_": 5, "_load_byt": 19, "_load_onnx2graphview": 19, "_maxpool": 9, "_mnist": 25, "_mul": 20, "_name": 5, "_npyio_impl": [19, 24], "_output_": 5, "_pad": 9, "_pil_png_to_float_arrai": 27, "_pow": 20, "_start": [23, 24], "_supportedformat": 19, "a002": 19, "aa": 49, "aaa": 49, "ab": 4, "abil": 35, "abl": [6, 19, 27, 30, 36, 40, 46, 49], "about": [27, 31, 33, 40], "abov": [7, 20, 32, 49], "abs_op": 9, "absenc": 28, "abspath": [19, 24, 28, 32], "abstract": [0, 4, 5, 9, 19, 37, 49], "acc": [30, 31], "acceler": [10, 18], "accept": [4, 9, 25, 27], "access": [4, 5, 19, 34, 35, 36, 42], "accessor": 6, "accesss": 19, "accord": [4, 6, 31, 35, 37, 39, 40, 41, 46], "account": [6, 40, 47], "accross": 28, "accumul": 48, "accur": 27, "accuraci": [22, 25, 30, 36, 41], "achiev": [32, 37, 40, 42], "across": 9, "act": [19, 32], "action": [5, 40], "activ": [9, 16, 24, 31, 46], "actual": [4, 6, 10, 11, 18, 32, 39], "acycl": [6, 11, 18], "ad": [0, 5, 6, 9, 19, 25, 27, 32, 37, 41, 45, 49], "adapt": [5, 19, 35, 40], "adapt_to_backend": [10, 19], "adapttobackend": 10, "add": [5, 6, 7, 11, 13, 18, 19, 20, 27, 28, 33, 35, 46, 47], "add1": 6, "add2": 28, "add_child": [6, 20, 24, 28], "add_kernel_to_copi": 5, "add_node_lambda": [7, 18, 28], "add_op": [9, 20], "add_ordered_output": 6, "addafterbackward": 6, "addafterforward": 6, "addbeforebackward": 6, "addbeforeforward": 6, "addchild": 6, "addit": [4, 5, 7, 9, 28, 33, 35, 49], "addition": [6, 12], "additionn": [6, 28], "addnodelambda": 7, "addop": 9, "addorderedoutput": 6, "address": [9, 31], "addview": 6, "adequ": 27, "advanc": 18, "advantag": 32, "affect": [6, 31], "after": [0, 4, 6, 9, 10, 11, 25, 27, 31, 33, 40, 41, 46, 47], "again": [7, 20, 28, 31, 32], "against": 35, "aggress": 31, "agnost": [15, 39, 40, 46], "agreg": 48, "ai": 32, "aidg": [3, 4, 5, 6, 7, 9, 10, 11, 14, 15, 16, 17, 21, 27, 28, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], "aidge2c": 24, "aidge_backend_cpu": [16, 19, 20, 22, 23, 24, 25, 26, 28, 30, 31, 32, 33, 34], "aidge_backend_cuda": [21, 25, 30], "aidge_backend_opencv": [2, 22], "aidge_cifar10": 30, "aidge_cmp": 25, "aidge_cor": [2, 3, 4, 5, 6, 7, 9, 10, 11, 13, 16, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 30, 31, 32, 33, 34], "aidge_databas": 30, "aidge_dataprovid": 30, "aidge_export_arm_cortexm": 26, "aidge_export_cpp": [19, 23, 24, 25, 26], "aidge_export_tensorrt": [12, 27], "aidge_instal": 16, "aidge_learn": 30, "aidge_model": [31, 32], "aidge_nod": [5, 13], "aidge_node_converter_": 13, "aidge_onnx": [13, 16, 19, 20, 21, 22, 23, 24, 25, 26, 28, 31, 32, 33, 34], "aidge_quant": [19, 25, 31], "aidge_tensor": 23, "aidge_trt": 27, "aim": [34, 35, 40, 49], "algorithm": [6, 11, 19, 31, 32, 35, 39, 46], "all": [4, 5, 6, 7, 9, 10, 11, 16, 19, 27, 28, 30, 31, 32, 34, 37, 40, 41, 45, 46, 49], "allclos": 19, "allexpr": 49, "alloc": [4, 5, 11, 40], "allow": [5, 6, 7, 9, 11, 12, 18, 19, 20, 27, 28, 31, 32, 35, 37, 41, 42, 45, 46, 48], "allow_data_depend": [6, 9, 19, 32, 33], "allow_pickl": [19, 24], "allowdatadepend": [6, 9], "allowzero": 9, "alon": 32, "along": [4, 5, 6, 9, 12, 18, 32], "alreadi": [4, 6, 7, 19, 21, 22, 23, 26, 28, 30, 31, 40, 41, 46, 49], "also": [4, 5, 6, 7, 9, 13, 17, 19, 20, 25, 27, 28, 31, 32, 35, 37, 39, 40], "altern": 9, "although": 28, "alwai": [4, 7, 18, 28, 32], "amazonaw": 22, "ambigu": 6, "ambit": 0, "among": [6, 40], "amount": [9, 11, 18, 27, 32], "amp": 19, "an": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 21, 23, 24, 25, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 41, 42, 45, 47, 48, 49], "analysi": 41, "analyz": 9, "ancestor": 6, "anchor": [7, 28], "and_op": 9, "ani": [3, 4, 6, 7, 9, 10, 18, 19, 23, 27, 29, 32, 46, 49], "annot": 9, "anoth": [4, 6, 9, 11, 16, 18, 24, 32, 35, 39, 40, 46], "anymor": 32, "anyth": 32, "anytim": [19, 32], "anywher": [7, 28, 32], "api": [0, 5, 6, 19, 27, 30, 35, 40, 41, 42], "app": 12, "appear": [6, 28, 49], "appen": 6, "append": [5, 19, 23, 24, 25, 26, 28, 31, 32], "appli": [5, 6, 9, 10, 19, 28, 37, 46], "applic": [0, 5, 19, 27, 32, 36, 40], "approach": [0, 5, 20, 31], "appropri": 37, "approxim": [0, 27], "ar": [4, 5, 6, 7, 9, 10, 11, 12, 16, 18, 19, 21, 27, 28, 32, 34, 35, 37, 39, 40, 41, 42, 46, 49], "arang": 20, "arbitrari": [6, 11, 18, 32], "architectur": [18, 19, 31, 49], "area": 9, "aren": 6, "arg": [3, 6, 9, 10, 11, 13, 19], "arg0": [4, 5, 6], "arg1": 5, "argmax": [19, 20, 22, 25, 31], "argmax_op": 9, "argsep": 49, "argument": [4, 5, 6, 7, 10, 13, 27, 28, 32], "arithmet": [0, 4], "around": 42, "arr": 4, "arrai": [4, 6, 9, 19, 20, 21, 22, 23, 25, 26, 27, 30, 31, 34, 37, 42], "array1d": [4, 6], "array2d": 4, "array3d": 4, "array4d": 4, "array5d": 4, "array_nam": [19, 24, 26], "art": 15, "ascii": [20, 22], "ask": 6, "aslateasposs": 11, "assert": [4, 6, 19], "assess": [4, 6, 25], "associ": [4, 5, 6, 9, 11, 13, 18, 32, 35, 37, 39, 40, 46], "associate_input": 9, "associateinput": 9, "assoonasposs": 11, "assum": [4, 7, 21, 28, 32, 40], "assumpt": [9, 18], "ast": 49, "asttoken": [23, 26], "astyp": [6, 19, 20, 21, 23, 25, 26, 34], "async": 12, "atan": 20, "atan_op": 9, "atom": 20, "attach": [20, 31, 47], "attack": 35, "attempt": 30, "attr": [3, 6, 9, 20, 24, 28], "attrdict": 3, "attribut": [4, 5, 6, 7, 9, 11, 18, 19, 20, 32, 39, 46, 49], "attrs_": 3, "audit": 40, "auto": [6, 9, 11, 23, 26], "auto_regist": 13, "auto_register_export": 13, "auto_register_import": [13, 20], "automat": [1, 5, 6, 9, 12, 19, 32, 49], "avaialbl": 1, "avail": [0, 4, 5, 6, 9, 10, 11, 12, 18, 19, 31, 32, 35, 39, 40, 42, 45, 46], "availabledatastatu": 11, "averag": [12, 46], "averagepool": [9, 20], "avgpool": 9, "avgpool1d": 46, "avgpool2d": 46, "avgpool3d": 46, "avgpooling1d": 9, "avgpooling2d": 9, "avgpooling3d": 9, "avgpooling_op": 9, "avoid": [6, 7, 20, 28, 49], "awar": [32, 41], "ax": [9, 46], "axes3d": 32, "axi": [9, 19, 22, 31, 34], "b": [6, 9, 19, 20, 23, 26, 46], "b64encod": [20, 22, 34], "back": [6, 9, 18, 21, 32, 34], "backbon": [28, 40], "backedg": 9, "backen": 6, "backend": [4, 5, 6, 8, 9, 14, 18, 19, 20, 24, 25, 30, 31, 33, 40, 41, 42, 45, 46], "backend_opencv": 37, "backpropag": [11, 30], "backward": [4, 5, 6, 9, 11, 30, 39, 46, 47], "bandwidth": [31, 40], "base": [5, 6, 19, 32, 35, 37, 40, 45], "base64": [20, 22, 34], "base64_byt": [20, 22, 34], "base64_str": [20, 22, 34], "base_nam": 6, "base_url": 22, "base_valu": 25, "basenam": 27, "basic": [19, 29, 30], "batch": [4, 5, 9, 10, 11, 12, 27, 37], "batch_siz": [4, 9, 12, 21, 22, 27, 30], "batchnorm": [19, 20, 35, 46, 49], "batchnorm1d": 46, "batchnorm2d": [9, 34, 46], "batchnorm3d": 46, "batchnorm_op": 9, "batchsiz": 4, "becaus": [4, 7, 28, 32, 42], "becom": [6, 32, 49], "been": [4, 6, 7, 9, 10, 19, 20, 25, 27, 28, 31, 32, 33, 34, 46], "befor": [4, 5, 6, 9, 10, 19, 21, 23, 26, 31, 32, 47], "beforehand": 10, "begin": [9, 20, 31, 49], "beginendtupl": 9, "behavior": [6, 7, 9, 28, 32], "behaviour": 6, "being": [0, 4, 6, 32, 49], "belong": [6, 9, 40], "below": [18, 28], "benchmark": 41, "benefici": 40, "best": 6, "beta": [20, 24], "beta_prod": 20, "between": [4, 6, 7, 9, 18, 28, 32, 33, 40, 45, 46, 49], "bewar": [4, 7, 28, 32], "beyond": 18, "bia": [6, 7, 9, 28, 30, 32], "bias": [6, 30], "bigger": 9, "billion": 31, "bin": [12, 16, 19, 23, 24, 25, 26, 27], "binari": [19, 24], "bind": [12, 16, 19, 20, 35, 42], "bit": [27, 31], "bitshift": 20, "bitshift_op": 9, "block": 47, "bn0": 34, "bnmean": 34, "bnscale": 34, "bnshift": 34, "bnvar": 34, "board": 40, "bool": [2, 4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 19, 49], "boolean": [5, 13, 49], "border": 9, "bordertyp": 9, "bordervalu": 9, "both": [4, 5, 6, 7, 19, 28, 34, 35, 37, 39, 46], "bound": 4, "branch": [7, 11, 20, 28, 32], "break": [7, 25, 28, 30], "broadcast": 9, "broken": 6, "brows": [4, 40], "buffer": [4, 48], "buffer_protocol": 42, "build": [0, 6, 9, 10, 12, 15, 18, 19, 23, 24, 25, 26, 27, 30], "build_cpp": 12, "build_cpp_dock": 12, "build_export_dock": 26, "build_image_dock": [12, 26], "build_lib_python": 12, "build_lib_python_dock": [12, 27], "builder": 6, "built": [9, 10, 11, 16, 18, 19, 27, 49], "builtin": [19, 27], "busi": 11, "button": [23, 26], "button_clear": [23, 26], "button_gen": [23, 26], "byte": [2, 19, 31], "c": [2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 18, 20, 23, 27, 30, 33, 35, 46], "c_data": 24, "cach": [12, 27], "cache_file_path": [12, 27], "calcul": [0, 9, 35, 36, 39, 40], "calibr": 12, "calibration_cach": [12, 27], "calibration_fold": [12, 27], "calibration_folder_path": [12, 27], "calibration_set": 25, "call": [4, 6, 7, 9, 18, 19, 20, 24, 27, 31, 32, 37, 39, 40, 46, 47], "callabl": [5, 7, 13], "callback": 6, "calledprocesserror": 25, "can": [0, 4, 6, 7, 9, 10, 11, 12, 13, 16, 18, 19, 20, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 46, 47, 48, 49], "cannot": [6, 7, 9, 19, 20, 27, 28, 32, 49], "canva": [23, 26], "capabl": [18, 40], "capac": 4, "captur": 28, "care": [6, 35], "carri": [6, 40, 46], "case": [4, 6, 7, 11, 19, 20, 28, 30, 32, 39, 40, 41, 46, 49], "cast": [4, 19, 25, 31], "cast_op": 9, "cast_opimpl": 9, "cat": 19, "categor": [35, 41, 46], "categori": [6, 9, 46], "cd": [16, 19, 23, 24, 26, 27], "ceil": 9, "ceil_mod": 9, "cell": [19, 23, 24, 26, 27], "certain": 33, "certifi": [23, 26, 30], "chain": [13, 19, 27], "chang": [4, 5, 6, 10, 25, 28, 32, 35, 39, 41, 46], "channel": [4, 5, 9, 20, 21], "char": [4, 9], "charact": [13, 49], "character": [15, 49], "characterist": [0, 4], "charset": [23, 26, 30], "check": [4, 5, 6, 9, 18, 20, 25, 32, 40, 49], "child": [6, 7, 28, 31, 32, 46], "child_input_tensor_idx": 6, "child_nod": 6, "childinputtensoridx": 6, "childnod": 6, "childnodetyp": 28, "children": [6, 28, 46], "choos": [18, 30, 32, 34, 35, 37, 39, 40, 46], "chosen": [39, 46], "chrono": 11, "chronolog": 40, "chw": [4, 37], "cifar": 30, "cifar10": 30, "circular": [6, 32], "ckei": 49, "cl": [6, 30], "clariti": 49, "class": [0, 2, 3, 4, 5, 6, 7, 19, 20, 21, 24, 30, 32, 37], "classic": 40, "classif": [27, 36], "classmethod": 5, "clean": 12, "clear": [6, 11, 23, 26], "clear_schedul": 11, "clearschedul": 11, "clip": [4, 19, 20, 25, 31], "clip_op": 9, "clipping_mod": [19, 25], "clone": [4, 6, 9, 12, 19, 25, 33], "clone_dinov2": 33, "clonecallback": 6, "clonenod": 6, "clonesharedoper": 6, "clonesharedproduc": 6, "closest": 5, "cmake": 16, "cmap": [19, 31], "cmpr": 49, "co": [23, 24, 25, 26, 33], "code": [0, 5, 9, 10, 15, 19, 20, 22, 24, 28, 31, 35, 40, 46], "coeffici": 31, "coher": 6, "colabor": 19, "collabor": 19, "collect": [5, 23, 30, 37, 49], "collect2": [23, 24], "com": [10, 22, 27], "combin": [10, 37, 49], "come": [6, 46], "comm": [23, 26], "command": [12, 19, 27, 28], "commerci": 0, "common": 46, "commonli": 9, "compact": 32, "compar": [6, 33, 34], "comparison": [19, 33], "compat": [0, 4, 6, 9, 40, 42], "compil": [6, 12, 15, 20, 21, 24, 25, 27, 33, 34, 35, 40, 41, 46], "complementari": 49, "complet": [22, 27, 35, 46], "complex": [0, 7, 11, 18, 19, 28, 33, 35, 46, 49], "compliant": 6, "complic": 6, "compon": [19, 40, 49], "compos": [4, 20, 30, 33, 37, 40], "composit": [9, 20], "comprehens": [6, 40], "compress": 31, "compresslevel": 19, "comput": [0, 5, 6, 9, 10, 11, 18, 19, 22, 27, 30, 32, 34, 35, 37, 39, 41, 42, 45, 47], "computationn": 19, "compute_accuraci": 31, "computereceptivefield": 9, "concat": [10, 11, 20, 33, 46], "concat_op": 9, "concat_opimpl": 9, "concaten": [9, 11, 34, 37, 46], "concept": [33, 35, 39, 40, 46], "concretli": 37, "cond": [11, 32], "condit": [4, 11, 27, 41, 49], "condition": 11, "conditionn": 32, "conduct": 27, "confer": 35, "config": 5, "config_extens": 5, "config_path": 5, "config_templ": [5, 24], "configur": [0, 5, 18, 21, 22, 23, 26, 31, 40], "confus": 36, "conjunct": 18, "connect": [5, 6, 7, 9, 11, 13, 18, 28, 30, 31, 32, 45, 46], "connectinput": 11, "connector": [20, 46], "consecut": 6, "conserv": 4, "consid": [4, 10, 32, 40], "consist": [9, 28, 31, 40, 42, 46], "const": [2, 3, 4, 6, 7, 9, 10, 11], "constant": [9, 19, 20], "constant_fil": 30, "constant_fold": [19, 32], "constant_lr": 30, "constant_shap": 10, "constantfold": 10, "constantofshap": 20, "constantofshape_op": 9, "constantshap": 10, "constexpr": 4, "constitut": [13, 18, 46], "constrain": [0, 7, 40], "construct": [4, 6, 7, 9, 31, 32], "constructor": [4, 9, 11, 27], "consum": [9, 11, 15, 20, 31, 32, 39], "consumm": [19, 33], "consumpt": [0, 31], "contain": [4, 5, 6, 9, 10, 12, 13, 18, 19, 28, 31, 32, 40, 46, 49], "content": [6, 19, 20, 22, 31], "context": [7, 20, 31, 33, 49], "contigu": 4, "continu": [5, 32, 41], "contraint": 40, "contrari": 32, "control": [0, 9, 18, 40], "conv": [6, 7, 18, 19, 20, 28, 30, 49], "conv0": 34, "conv1": [6, 21, 28, 32], "conv1_w": 28, "conv1d": [9, 46], "conv2": [6, 21, 28, 32], "conv2_b": 28, "conv2_conv": 28, "conv2_pad": 28, "conv2_w": 28, "conv2d": [9, 19, 21, 28, 31, 32, 33, 34, 46], "conv2d_dataflow_cp": 32, "conv2d_df": 32, "conv2ddepthwis": 9, "conv3": [28, 32], "conv3_conv": 28, "conv3_pad": 28, "conv3_w": 28, "conv3d": 46, "conv3ddepthwis": 9, "conv4": 28, "conv4_b": 28, "conv4_conv": 28, "conv4_pad": 28, "conv4_w": 28, "conv5": 28, "conv5_b": 28, "conv5_conv": 28, "conv5_pad": 28, "conv5_w": 28, "conv_horizontal_til": 19, "conv_op": 9, "convb": 34, "convdepthwise1d": 9, "convdepthwise2d": 9, "convdepthwise_op": 9, "convdepthwiseop": 9, "convdwnd": 46, "conveni": [9, 28], "convers": [4, 6, 10, 13, 32, 42], "conversion_map": 5, "convert": [4, 5, 26, 31, 40, 42, 45], "converter_funct": 13, "convnd": 46, "convndtranspos": 46, "convnet": 31, "convolut": [6, 9, 10, 18, 27, 31, 34, 35, 39, 46, 47, 49], "convolv": 9, "convop": 9, "convtomatmul": 10, "convtranspose_op": 9, "convw": 34, "cooper": 40, "coord": 4, "coordidx": 4, "coordin": 4, "copi": [4, 5, 6, 9, 27, 40, 42], "copycast": 4, "copycastfrom": 4, "copyfil": 27, "copyfrom": 4, "copymod": 27, "copytran": 4, "copytranspos": 4, "core": [1, 14, 19, 31], "correct": 27, "correct_pr": 22, "correctli": 40, "correspond": [2, 4, 6, 7, 13, 18, 35, 37, 45, 47, 49], "cost": [0, 35], "costli": 31, "could": [7, 28, 30, 32, 40, 49], "count": [6, 9], "counterpart": 31, "cours": 32, "cover": [6, 20, 49], "coverag": [20, 33, 40], "cp310": 30, "cpp": [4, 5, 10, 18, 19, 23, 26, 29, 35], "cpp_fuse_to_metaop": 25, "cpu": [4, 6, 14, 19, 20, 21, 22, 23, 24, 25, 26, 30, 31, 32, 33, 34, 35, 39, 46], "cpy_transpos": 4, "cpython": 16, "creat": [4, 5, 6, 9, 12, 16, 18, 21, 22, 24, 27, 28, 29, 31, 33, 34, 35, 37, 40, 42, 45, 47, 49], "create_arrai": 9, "create_unique_nam": 6, "createuniquenam": 6, "creation": [20, 28], "criteria": [0, 40], "critic": [11, 32], "cross": 31, "cryptohash_op": 9, "ctor": 6, "cu": 12, "cuda": [25, 30, 35, 39, 42], "current": [4, 6, 9, 11, 12, 13, 19, 30, 32, 33, 41], "custom": [5, 9, 11, 13, 18, 19, 27, 30, 32], "customlay": 6, "cv": 2, "cwd": 25, "cycl": 6, "cyclic": [6, 11, 18, 32], "d": 4, "dangl": 6, "data": [0, 2, 5, 6, 8, 9, 10, 11, 12, 14, 18, 19, 20, 21, 24, 25, 27, 30, 31, 33, 34, 35, 39, 40, 41, 42, 46, 49], "data_0_bias_producerscaling_clipqu": 31, "data_0_bias_producerscaling_roundqu": 31, "data_0_conv": 31, "data_0_conv_input_0": 24, "data_0_weight_producerscaling_clipqu": 31, "data_0_weight_producerscaling_roundqu": 31, "data_10_relu": 31, "data_11_bias_producerscaling_clipqu": 31, "data_11_bias_producerscaling_roundqu": 31, "data_11_gemm": [24, 31], "data_11_weight_producerscaling_clipqu": 31, "data_11_weight_producerscaling_roundqu": 31, "data_1_relu": [24, 31], "data_3_bias_producerscaling_clipqu": 31, "data_3_bias_producerscaling_roundqu": 31, "data_3_conv": 31, "data_3_weight_producerscaling_clipqu": 31, "data_3_weight_producerscaling_roundqu": 31, "data_4_relu": 31, "data_7_bias_producerscaling_clipqu": 31, "data_7_bias_producerscaling_roundqu": 31, "data_7_gemm": 31, "data_7_weight_producerscaling_clipqu": 31, "data_7_weight_producerscaling_roundqu": 31, "data_8_relu": 31, "data_9_bias_producerscaling_clipqu": 31, "data_9_bias_producerscaling_roundqu": 31, "data_9_gemm": 31, "data_9_weight_producerscaling_clipqu": 31, "data_9_weight_producerscaling_roundqu": 31, "data_batch": 22, "data_elt": 32, "data_format": 4, "data_input": 20, "data_t": 24, "databas": [14, 22], "dataelt": 18, "dataflow": [11, 15], "dataformat": [3, 4, 6, 9, 39, 46], "dataformattranspos": 4, "datainput": 6, "datapath": [2, 22], "dataprovid": [22, 28, 30, 32], "dataset": [19, 21, 22, 25, 30, 35], "datastructur": [19, 46], "datatyp": [2, 3, 4, 6, 9, 30, 37, 39, 46], "datatype1": 6, "datatype2": 6, "datayp": 19, "date": 0, "dcmake_build_typ": 16, "dcmake_install_prefix": 16, "dealloc": 4, "debug": [5, 6, 16], "decad": 31, "decai": 4, "decay_t": 4, "declar": [6, 20, 31, 49], "decod": [20, 22, 34], "decompos": 20, "decompress": 22, "decompressed_file_path": 22, "deconv": [7, 18], "decor": [5, 13, 20, 23, 26], "decoupl": [11, 18, 32], "dedic": 19, "deduc": 32, "deduct": 9, "deep": [0, 4, 9, 19, 39, 40, 41], "def": [13, 19, 20, 21, 22, 23, 24, 25, 26, 30, 31, 32, 34], "def_impl": 9, "default": [4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 18, 28, 32], "default_index": 6, "defaultdict": [13, 20, 33], "defens": 35, "defin": [4, 5, 6, 7, 9, 11, 12, 13, 15, 19, 20, 21, 22, 23, 24, 28, 31, 32, 35, 37, 39, 40, 42, 46, 49], "definit": 5, "degrad": 31, "degre": 0, "delet": [6, 7, 9, 11, 35], "delimit": 28, "demand": 28, "demo_img_path": 27, "demonstr": [21, 22, 24, 27, 29], "denomin": 9, "dens": 47, "depend": [0, 4, 6, 9, 11, 18, 19, 27, 32, 36, 37, 39, 42, 45, 46], "depict": 33, "deploi": [0, 31, 41], "deploy": [0, 18, 41], "deprec": 5, "depth": [7, 9, 18, 32, 46], "depthtospac": 20, "depthtospace_op": 9, "depthtospace_opimpl": 9, "depthwis": 9, "deriv": 9, "describ": [9, 13, 19, 35, 39, 40, 46, 48], "descript": [4, 12, 16, 23, 26, 35, 39, 40, 46], "deserialize_proto": 19, "design": [0, 6, 9, 11, 18, 32, 35, 41], "desir": [4, 9, 16, 31, 34, 40, 49], "destin": [4, 5], "destructor": 9, "detail": [0, 4, 5, 19, 27, 39, 46], "detect": [6, 24, 36, 46, 49], "determin": [6, 9, 11, 32, 37], "determinist": [6, 18], "dev": [20, 22, 31], "dev_mod": [5, 25], "develop": [0, 5, 31, 35, 40, 46, 49], "developp": [37, 49], "devic": [4, 6, 9, 12, 19, 31, 34, 40, 41, 42], "deviceidx_t": [4, 6, 9], "df": [4, 6], "dfg": 32, "dformat": [3, 4, 6, 9], "diagram": [11, 41], "dict": [5, 6, 13], "dictionari": [5, 20], "dictionnari": [5, 13], "didn": [6, 28], "differ": [4, 5, 6, 9, 12, 28, 32, 33, 35, 37, 39, 40, 49], "difficult": 31, "difficulti": 29, "digit": [19, 24, 37], "dilat": 9, "dilation_dim": 9, "dilationdim": 9, "dim": [3, 4, 6, 9, 19, 20, 21, 23, 24, 26, 32, 33, 34], "dimens": [0, 4, 5, 6, 9, 10, 12, 13, 19, 23, 24, 26, 32, 33, 34, 37, 46, 47], "dimension": 37, "dimensiosn": 20, "dimidx_t": 4, "dims_": 3, "dims_forward": 9, "dimsforward": 9, "dimsize_t": [4, 6, 9, 10], "dinov2": 33, "dinov2_model": 33, "dinov2_stat": 33, "dinstiguish": 48, "direct": [7, 11, 18, 28, 40, 46], "directli": [6, 9, 19, 27, 32, 49], "directori": [6, 16, 19, 23, 24, 26, 27, 40], "dirnam": 6, "disabl": 9, "disconnect": 6, "disjoint": [7, 28], "displai": [11, 12, 13, 19, 20, 22, 28, 32, 33, 34], "display_nam": 33, "dissip": 0, "distil": 31, "distinct": 46, "distinguish": [4, 19, 24], "div": [20, 33, 46], "div_op": [9, 20], "divid": 34, "divis": [4, 9], "divop": 9, "dl": [6, 32], "dma": 40, "dnn": [5, 19, 23, 24, 26, 35, 37, 40, 41, 45, 46], "do": [4, 6, 7, 9, 10, 18, 19, 23, 24, 27, 28, 32, 33, 35, 40, 47], "doc": [23, 24, 26, 27, 32], "docker": [12, 26, 27], "document": [35, 40], "doe": [4, 6, 9, 18, 20, 31, 32, 35, 39, 46, 49], "doesn": [6, 27, 31], "domain": [13, 49], "don": [7, 19, 20, 28, 31], "done": [4, 6, 9, 10, 18, 19, 20, 25, 33, 35, 36, 39, 42, 46], "doubl": [2, 5, 9], "download": [20, 22, 24, 30], "download_fil": [23, 24, 25, 26, 33], "download_materi": [19, 20, 22, 31], "downsiz": 4, "dpybind": 16, "drop": 4, "drop_last": [4, 22, 30], "droplast": 4, "dropout": [20, 46], "dropout_op": 9, "dsl": [7, 18, 28], "dsp": 0, "dst": [5, 27], "dst_path": 5, "dt": [4, 9], "dtype": [3, 4, 5, 6, 9, 19, 20, 21, 22, 23, 24, 25, 26, 30, 31, 33, 34], "due": [7, 32, 47, 49], "dummi": 6, "dummy_input": 21, "duplic": [6, 41, 46, 47], "durat": 9, "dure": [0, 6, 9, 11, 16, 18, 32, 35, 46, 49], "duti": 40, "dwerror": 16, "dynam": [11, 18, 40], "dynamicattribut": [3, 6, 9], "e": [4, 5, 6, 9, 19, 20, 25, 27, 32, 35, 39, 40, 46, 47], "e_prod": 20, "each": [2, 4, 5, 6, 7, 9, 10, 11, 16, 18, 19, 20, 25, 32, 34, 36, 37, 39, 40, 46, 49], "eact": 5, "eager": 6, "earli": [11, 18, 32], "earlier": 11, "earlierthan": 11, "earliest": 11, "early_": 11, "eas": [0, 34], "easili": [6, 18, 20, 35, 39], "eclips": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 24, 26, 27, 29, 30, 31, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], "eclipseaidg": [23, 24, 25, 26, 33], "edg": [6, 7, 9, 41, 46, 47], "edgeleftidx": 7, "edgerightidx": 7, "edu": 30, "effect": [6, 15, 40], "effici": [7, 18, 28], "effort": [7, 18, 28], "either": [4, 12, 28, 32, 35, 39, 41], "elabor": 40, "electron": [11, 18, 32], "element": [4, 5, 6, 9, 11, 28, 30, 32, 40, 46], "elemwis": 6, "elif": [27, 30], "elimin": 32, "elman": 46, "els": [6, 9, 18, 19, 20, 22, 23, 24, 25, 27, 30, 31, 32, 49], "elts_t": [9, 18, 32], "elu": 46, "embed": [18, 19, 20, 31, 40, 41], "embeddings_add": 33, "embeddings_concat": 33, "embeddings_patch_embeddings_projection_conv": 33, "embeddings_patch_embeddings_reshap": 33, "embeddings_patch_embeddings_transpos": 33, "emerg": 49, "emploi": 33, "empti": [4, 5, 6, 7, 9, 28, 32, 39, 40, 46, 49], "emul": 46, "enabl": [5, 6, 12, 27, 32, 35, 46, 49], "enable_custom_op": 13, "enable_if_t": 4, "enable_shared_from_thi": [6, 9], "encaplsul": 31, "encapsul": 49, "encod": [19, 20, 22, 24, 30, 34], "encoder_layer_0_add": 33, "encoder_layer_0_add_1": 33, "encoder_layer_0_layer_scale1_mul": 33, "encoder_layer_0_layer_scale2_mul": 33, "encoder_layer_1_add": 33, "encoder_layer_1_add_1": 33, "encoder_layer_1_layer_scale1_mul": 33, "encoder_layer_1_layer_scale2_mul": 33, "encoder_layer_2_add": 33, "encoder_layer_2_add_1": 33, "encoder_layer_2_layer_scale1_mul": 33, "encoder_layer_2_layer_scale2_mul": 33, "encoder_layer_3_add": 33, "encoder_layer_3_add_1": 33, "encoder_layer_3_layer_scale1_mul": 33, "encoder_layer_3_layer_scale2_mul": 33, "encoder_layer_4_add": 33, "encoder_layer_4_add_1": 33, "encoder_layer_4_layer_scale1_mul": 33, "encoder_layer_4_layer_scale2_mul": 33, "encoder_layer_5_add": 33, "encoder_layer_5_add_1": 33, "encoder_layer_5_layer_scale1_mul": 33, "encoder_layer_5_layer_scale2_mul": 33, "encoder_layer_6_add": 33, "encoder_layer_6_add_1": 33, "encoder_layer_6_layer_scale1_mul": 33, "encoder_layer_6_layer_scale2_mul": 33, "encoder_layer_7_add": 33, "encoder_layer_7_add_1": 33, "encoder_layer_7_layer_scale1_mul": 33, "encoder_layer_7_layer_scale2_mul": 33, "encoder_layer_8_add": 33, "encoder_layer_8_add_1": 33, "encoder_layer_8_layer_scale1_mul": 33, "encoder_layer_8_layer_scale2_mul": 33, "encoder_layer_9_layer_scale1_mul": 33, "encompass": [0, 6], "encount": [19, 29], "encourag": [18, 31], "end": [4, 6, 9, 11, 25, 49], "end_": 11, "endstep": 9, "endswith": 27, "energi": 31, "engin": [10, 12, 15, 27, 49], "enough": [18, 39], "enoughdatatocomputeoutputlin": 18, "ensur": [6, 9, 10, 27, 32, 41], "enter": [9, 23, 24, 26, 27], "enter_context": [19, 24], "entir": [0, 6, 18, 32, 35, 40, 46], "entireti": 19, "entri": [5, 46], "enum": [2, 4, 9, 11], "enumer": [2, 11, 22, 24, 30, 31], "env": 16, "environ": [18, 40, 42], "environn": [16, 19], "epsilon": 9, "eq": 49, "equal": [4, 6, 11, 31], "equal_op": 9, "equival": [4, 6, 7, 19, 28, 49], "eras": 9, "erf": [20, 33], "erf_op": 9, "erfop": 9, "errno": [19, 24, 27], "erron": 28, "error": [5, 6, 7, 9, 16, 20, 23, 24, 25, 26, 28, 32, 33, 46], "especi": [10, 18], "essenti": 27, "eta": [23, 30], "etc": [0, 32, 40, 41], "eval": [21, 23, 26], "evalu": [21, 31, 32, 33, 36, 48], "even": [4, 6, 7, 9, 18, 19, 28, 31, 32], "eventu": [0, 18], "everi": [0, 6, 9, 32, 49], "everyth": [6, 31], "ex": 6, "exactli": [9, 18], "exampl": [4, 5, 7, 9, 12, 13, 16, 18, 19, 20, 22, 25, 27, 28, 30, 32, 35, 37, 39, 40, 47, 48, 49], "except": [4, 6, 7, 9, 23, 25, 26, 28, 32], "exceptiongroup": [23, 26], "exchang": 0, "exclud": [6, 9], "exclude_unwanted_produc": 25, "exclus": 9, "exclusive_fp": 27, "exconv": 28, "exectim": 11, "execut": [6, 9, 11, 12, 18, 19, 23, 26, 27, 32, 33, 35, 36, 40, 41], "executionmode_t": 12, "exempl": 32, "exhaust": 32, "exhibit": 32, "exig": 40, "exist": [4, 6, 7, 9, 22, 24, 27, 28, 30, 31, 32, 33, 37, 46, 49], "exist_ok": 22, "exit": [23, 24], "exp": [9, 20, 49], "expand": [9, 18], "expand_metaop": [10, 25, 28, 32], "expand_op": 9, "expandmetaop": 10, "exparam": 28, "expect": [6, 9, 19, 28, 31, 32, 40], "expectedtyp": 4, "experi": 27, "experiment": 7, "expert": 40, "explain": 49, "explainalib": 40, "explan": 0, "explicit": [6, 9], "explicitcastmov": 10, "explicitli": 18, "explicittranspos": 10, "explor": 0, "exponenti": 46, "export": [8, 14, 16, 18, 20, 21, 35, 47], "export_fold": [5, 12, 19, 23, 24, 25, 26, 27], "export_folder_path": 5, "export_lib": 5, "export_onnx": 13, "export_root": 5, "export_schedul": 19, "export_seri": 19, "export_trt": 27, "export_util": [5, 19, 23, 24, 25, 26], "exportlib": 5, "exportlibaidgearm": 26, "exportlibcpp": [19, 23, 24], "exportnod": 5, "exportnodecpp": [5, 24], "expos": 5, "expr": 49, "express": [28, 35, 49], "extens": [5, 11, 30], "extensivli": 20, "extern": [6, 35], "extra": 30, "extract": [4, 9, 30, 32, 34, 46], "f": [6, 12, 19, 20, 22, 23, 24, 25, 26, 28, 30, 31, 34], "facil": [18, 28], "facilit": [5, 27], "fact": 28, "factor": [0, 9, 32], "factori": 9, "fail": [6, 13, 19, 20, 22, 25, 31, 32], "fait": 13, "fallback": [4, 19], "fals": [2, 4, 5, 6, 7, 9, 10, 11, 13, 19, 22, 23, 24, 25, 26, 31, 32, 33, 49], "fashion": 46, "faster": 30, "fc": [6, 19, 28, 30, 31, 35, 47, 49], "fc0": 6, "fc1": [6, 21], "fc1_gemm_input_0": 19, "fc2": [6, 21], "fc3": [6, 21], "fc_op": 9, "fdst": 27, "featur": [0, 6, 9, 11, 18, 19, 29, 32, 42, 45], "feature_feature_0_conv_input_0": 26, "fed": 18, "feder": 41, "feel": [21, 27], "fetch": [2, 4, 5], "fid": [19, 24], "field": [9, 47], "fifth": 4, "figur": 49, "file": [5, 6, 11, 12, 13, 16, 20, 22, 23, 24, 26, 27, 31, 33, 35, 42, 49], "file_mmd": [20, 22, 34], "file_nam": 11, "file_path": [22, 23, 24, 25, 26, 33], "file_url": [23, 24, 25, 26, 33], "filenam": [11, 13, 19, 27, 33], "filenotfounderror": [19, 24, 27], "fileobj": 19, "filepath": 12, "fill": [6, 12, 13, 28], "filler": 30, "filter": [6, 7, 9, 49], "filterlonguestdisjoint": 7, "final": [2, 6, 9, 27, 31, 33, 40, 47], "find": [0, 6, 7, 16, 18, 20, 28, 32, 35, 49], "finish": 11, "first": [0, 4, 6, 7, 9, 10, 11, 16, 19, 20, 24, 27, 30, 31, 32, 40, 49], "firsteltdim": 9, "firstidx": 9, "firstnod": 7, "firstsequ": 7, "fit": [5, 40], "fix": 10, "fix_import": [19, 24], "fixeds": 9, "flag": [5, 9, 32], "flatidx": 4, "flatten": [4, 9, 18, 19, 22, 23, 24, 26, 31, 32], "flatten_op": 9, "flatten_opimpl": 9, "flatten_output_0": 19, "float": [2, 4, 5, 6, 9, 11, 30, 31, 37, 39, 46, 49], "float16": 5, "float32": [4, 5, 6, 19, 20, 21, 22, 23, 24, 25, 26, 30, 31, 33, 34], "float64": 5, "floor": 9, "flow": [0, 9, 46], "fmt": [6, 10], "fname": 27, "foat": 49, "fold": 31, "fold_graph": 25, "fold_op": 9, "folder": [5, 6, 12, 16, 19, 26, 27, 40], "folk": 31, "follow": [5, 6, 7, 9, 10, 11, 12, 13, 16, 19, 20, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 46, 49], "follow_symlink": 27, "fopenmp": [23, 24], "forc": 32, "forced_inputs_categori": 9, "forcedinputscategori": 9, "forget": 31, "form": [0, 6, 32, 37, 40], "formal": 49, "format": [0, 3, 4, 5, 6, 9, 10, 11, 19, 21, 27, 34, 37, 40, 41, 45], "format_": 3, "former": 6, "formul": 7, "forum": 0, "forward": [4, 5, 6, 9, 11, 19, 20, 21, 22, 23, 24, 25, 26, 30, 31, 32, 33, 34, 39, 40, 46], "forward_dim": [6, 9, 11, 19, 24, 32, 33], "forward_dtyp": [6, 9], "forward_templ": [5, 24], "forwarddatatyp": 6, "forwarddim": [4, 6, 9, 11, 32], "forwarddtyp": [6, 9], "found": [6, 7, 12, 19, 23, 24, 26, 27, 28, 30, 49], "foundat": 9, "four": [6, 34], "fourth": 4, "fp": 27, "fpga": 0, "framework": [6, 9, 19, 20, 29, 30, 32, 41, 42, 46, 49], "free": [6, 19, 21, 27], "friend": [4, 6], "friendli": 6, "from": [0, 2, 4, 5, 6, 9, 10, 11, 12, 13, 16, 18, 19, 20, 22, 24, 25, 27, 28, 30, 32, 33, 34, 35, 37, 39, 40, 41, 42, 46, 49], "from_out_nod": 6, "from_tensor": 6, "fromoutnod": 6, "fromoutnodenam": 6, "fromtensor": 6, "fspath": [19, 24, 27], "fsrc": 27, "full": [9, 11, 18, 28, 32], "fullfil": 49, "fulli": [9, 18, 20, 32, 46], "fullyconnect": [23, 35], "func": [6, 7], "function": [0, 2, 3, 4, 5, 6, 7, 9, 10, 11, 14, 18, 19, 20, 22, 23, 24, 27, 30, 31, 32, 35, 36, 37, 39, 40, 48], "functionn": [10, 19, 20, 37, 46], "functionnali": 46, "functool": 20, "fundament": 32, "further": [7, 27, 32], "furthermor": [6, 18, 27], "fuse": [19, 25, 33, 35, 49], "fuse_batchnorm": [10, 19, 25], "fuse_to_metaop": [10, 28, 33], "fusebatchnorm": 10, "fuseconvbatchnorm": 35, "fusemuladd": 35, "fusetometaop": 10, "fusion": [28, 35], "futur": [9, 28], "fwd_includ": 5, "g": [5, 6, 9, 23, 24, 27, 32, 35, 39, 46], "gaph": 46, "garante": 32, "gate": [9, 46], "gather": [20, 25, 31, 33], "gather_op": 9, "gather_opimpl": 9, "gathered_shap": 9, "gatheredshap": 9, "gatherop": 9, "gcc": [23, 24], "gelu": [33, 46], "gemm": [19, 20], "gen": 24, "gen_board_fil": 26, "gen_swish_metaop": 20, "gener": [0, 5, 6, 10, 11, 12, 13, 15, 21, 24, 25, 28, 32, 33, 34, 35, 37, 39, 40, 41, 45], "generate_fil": 24, "generate_graph": [6, 20], "generate_input_fil": [19, 24, 26], "generate_main": 24, "generate_main_cpp": [19, 23, 24], "generate_memori": 11, "generate_memory_auto_concat": 11, "generate_optimized_memory_info": [19, 23, 24, 26, 33], "generate_plugin": 12, "generate_schedul": [11, 23, 24, 25, 26, 32, 33], "generategraph": 6, "generatememori": 11, "generatememoryautoconcat": 11, "generateschedul": 11, "generic_export": 13, "genericconv2d_dataflow_impl": 32, "genericimpl": 24, "genericoper": [5, 6, 9, 13, 19, 20, 24, 32], "genericoperator_op": 9, "genericoperatorop": 9, "get": [2, 4, 5, 6, 9, 11, 18, 20, 21, 22, 24, 28, 29, 31, 32, 41], "get_adapt": 5, "get_attr": 20, "get_available_backend": [4, 19, 31], "get_available_impl_spec": 5, "get_backward_schedul": 11, "get_best_adapt": 5, "get_best_match": 5, "get_children": 6, "get_connected_graph_view": [6, 32], "get_conv_horizontal_til": 34, "get_coord": 4, "get_export_nod": 5, "get_forward_schedul": 11, "get_idx": 4, "get_image_data": [23, 26], "get_impl": 9, "get_input": [9, 20, 24, 32], "get_input_nod": 6, "get_item": [2, 30, 37], "get_keys_conv2dop": 19, "get_len": 2, "get_nb_input": 6, "get_nb_mod": [2, 30], "get_nb_output": 6, "get_nb_required_data": 32, "get_nod": [6, 20, 24, 28, 30, 32, 34], "get_oper": [5, 6, 19, 20, 21, 22, 24, 25, 28, 30, 31, 32, 34], "get_ordered_children": 6, "get_ordered_input": [6, 25], "get_ordered_nod": 6, "get_ordered_output": [6, 33], "get_output": [9, 19, 20, 21, 22, 25, 30, 31, 32, 34], "get_output_nod": [6, 19, 20, 21, 22, 25, 30, 31], "get_par": [6, 34], "get_prod_conso": [5, 32], "get_ranked_nod": 6, "get_ranked_nodes_nam": 6, "get_raw_input": 9, "get_raw_output": 9, "get_required_memori": 32, "get_required_spec": 5, "get_sequential_static_schedul": [5, 11, 24], "get_static_schedul": 11, "getattr": 19, "getavailablebackend": [4, 9], "getbackwardschedul": 11, "getchildren": 6, "getconnectedgraphview": 6, "getcoord": 4, "getfirstfreedatainput": 6, "getforwardschedul": 11, "getgraph": 46, "getidx": 4, "getimpl": [4, 9], "getimploffset": 4, "getindexbatch": 4, "getinput": 9, "getinputlines": 18, "getitem": [2, 4], "getlen": [2, 4], "getnbbatch": 4, "getnbconsumeddata": 9, "getnbfreedatainput": 6, "getnbmod": [2, 4], "getnbproduceddata": 9, "getnbrequireddata": [9, 18], "getnbrequiredprotect": 9, "getnod": 6, "getoper": 6, "getorderedchildren": 6, "getorderedinput": 6, "getorderednod": 6, "getorderedoutput": 6, "getorderedpar": 6, "getoutput": 9, "getoutputlines": 18, "getpar": 6, "getrankednod": 6, "getrankednodesnam": 6, "getrawinput": 9, "getrawoutput": 9, "getrequiredmemori": [9, 18], "getsequentialstaticschedul": 11, "getstaticschedul": 11, "getstorageidx": 4, "getter": 6, "gettyp": 49, "git": [19, 20, 22, 31], "github": 27, "gitlab": [0, 20, 22, 31], "give": [6, 19, 36, 48], "given": [2, 4, 5, 6, 7, 9, 11, 25, 28, 32, 33, 37, 40, 46], "gk_iodefaultindex": 6, "global": [6, 18, 23, 25, 26, 40], "globalaveragepool": 20, "globalaveragepooling_op": 9, "gm": [7, 10, 18, 28], "gnu": [23, 24], "go": [6, 28], "goal": [40, 47], "goe": 32, "good": [7, 28], "got": [23, 26], "gpu": [0, 35, 39, 42, 46], "grad": 4, "gradient": [4, 9, 30, 46], "grai": [19, 31], "grammat": 49, "granular": 18, "graph": [5, 8, 9, 10, 11, 13, 14, 15, 20, 25, 27, 29, 30, 31, 32, 34, 35, 37, 41, 42, 45], "graph_fus": 28, "graph_mmd": [20, 22, 34], "graph_view": [5, 6, 10, 11, 13, 24], "graphbyt": [20, 22, 34], "graphmatch": 24, "graphptr": 6, "graphview": [7, 9, 10, 11, 12, 13, 18, 20, 24, 27, 28, 30, 34], "graphviewab": 46, "greedi": 32, "gridsampl": 20, "gridsample_op": 9, "ground": 35, "group": [0, 5, 49], "groupement": 6, "grow": [10, 18], "gru": 46, "gt": [19, 23, 24, 26, 27, 30, 31], "guarante": [4, 6, 19], "guid": [0, 17, 21, 40], "gv": 6, "gz": [19, 22, 30, 31], "gzip": [19, 22, 31], "gzipfil": [19, 31], "h": [5, 24], "ha": [4, 6, 7, 9, 10, 18, 19, 20, 25, 27, 28, 32, 33, 34, 39, 40, 46, 49], "half": 5, "half_float": 5, "halfawayfromzero": 9, "halid": 18, "hand": 32, "handl": [5, 6, 9, 13, 18, 20, 27, 37, 47], "happen": [6, 32, 49], "hardmax_op": 9, "hardswitch": 46, "hardwar": [0, 10, 15, 19, 35, 36, 39, 41, 46], "has_impl": 4, "has_native_coverag": 20, "hasimpl": 4, "hasn": 28, "have": [0, 4, 6, 9, 10, 11, 12, 13, 16, 19, 20, 24, 25, 26, 27, 28, 30, 31, 32, 33, 37, 39, 40, 41, 46, 49], "haven": 27, "hbox": [23, 26], "he": [18, 30], "he_fil": 30, "head": [20, 22, 31], "header": [5, 40], "heaviside_op": 9, "height": [5, 21, 23, 26], "held": 6, "help": [6, 12, 26, 27, 40], "helper": [4, 9, 14, 27, 30], "henc": [4, 32, 37], "here": [6, 7, 18, 19, 25, 28, 29, 32, 34, 41, 42, 46], "hereaft": 19, "hesit": 10, "heurist": [7, 15, 19, 28, 33, 39, 49], "hi": 40, "hidden": 9, "hidden_channel": [9, 32], "hide": 46, "hierarch": [18, 28, 32], "hierarchi": 32, "high": [0, 18, 40], "high_resolution_clock": 11, "highest": [4, 16], "highli": 18, "hightli": 27, "hl": [18, 35], "hold": [5, 32], "hold_canva": [23, 26], "home": 32, "horizont": 19, "horizontl": 34, "host": [12, 24, 27], "hot": 30, "how": [5, 6, 7, 10, 20, 21, 24, 31, 32, 34, 39, 40, 42, 46], "howev": [4, 6, 19, 20, 27, 32, 47], "hpp": [5, 12, 19, 23, 24], "html": [23, 24, 32], "http": [0, 10, 20, 22, 23, 24, 25, 26, 27, 30, 31, 32, 33, 34], "hub": 0, "huggingfac": [23, 24, 25, 26, 33], "hw": 4, "hybrid": 32, "hyperbol": 46, "i": [3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 19, 20, 22, 23, 24, 25, 27, 28, 30, 32, 33, 34, 35, 37, 39, 40, 41, 42, 45, 46, 47, 49], "id": [6, 12], "ident": [6, 10, 20, 32, 49], "identif": 18, "identifi": [9, 28], "identity_op": 9, "identity_opimpl": 9, "idna": [23, 26, 30], "idx": [4, 6, 9, 30], "idx1": 22, "idx3": 22, "ie": 5, "ignor": [11, 32], "ignore_produc": 11, "ignoreproduc": 11, "ilayernorm_op": 9, "im2col": 10, "imag": [12, 19, 20, 22, 23, 26, 27, 33, 34, 37], "imagenet": 27, "imagin": 49, "img": [20, 22, 27, 34], "img_nam": [23, 26], "img_open": 27, "imgplot": 27, "impl": [4, 9], "implement": [0, 1, 4, 5, 6, 7, 9, 11, 18, 19, 24, 28, 32, 33, 34, 37, 41, 49], "implemt": [35, 39], "impli": [4, 18], "implicit": [10, 32], "imploffset": 4, "implspec": [3, 5, 24], "import": [1, 6, 14, 18, 21, 22, 23, 25, 26, 27, 28, 29, 30, 32, 34, 46, 49], "import_gener": 13, "import_swish": 20, "imported_model": 25, "impos": 40, "imposs": 6, "imread": 27, "imshow": [19, 27, 31], "in_batch": 5, "in_cdtyp": 5, "in_chan": 5, "in_channel": [9, 30, 32], "in_dim": 5, "in_dtyp": 5, "in_height": 5, "in_id": [5, 6], "in_nam": [5, 24], "in_nod": 5, "in_siz": 5, "in_tensor": [20, 25], "in_view": 6, "in_width": 5, "inc_produc": 11, "inchannel": 9, "includ": [0, 5, 6, 7, 9, 11, 12, 19, 23, 24, 27, 28, 31, 35, 40, 41], "include_learnable_paramet": 6, "include_list": [5, 24], "includelearnableparam": 6, "incom": 46, "incomplet": 41, "incproduc": 11, "increas": 9, "increment": 4, "incrementindexbatch": 4, "inde": [6, 20, 35, 39, 40], "independ": 0, "independantli": 16, "indermedi": 4, "index": [2, 4, 6, 9, 11, 13, 23, 24, 25, 30, 37], "indexerror": 24, "indic": [5, 6, 9, 11, 13, 27, 40, 46], "induc": 6, "infer": [6, 9, 18, 20, 21, 22, 23, 25, 27, 29, 34, 37, 48], "inferior": 4, "info": [12, 19, 27, 32], "inform": [5, 6, 9, 13, 18, 27, 33, 40, 46, 49], "inherit": [4, 20, 24, 37], "inheritedattribut": 9, "inid": 6, "init_grad": 30, "initi": [4, 5, 6, 9, 10, 12, 27, 30, 31, 32, 35, 45, 47], "initial_graph": 34, "ink": [20, 22, 34], "inlin": [2, 3, 4, 6, 7, 9, 11, 23, 26, 27], "inner": [6, 10], "innov": 49, "input": [4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 20, 21, 24, 25, 27, 28, 30, 31, 32, 33, 34, 35, 37, 39, 40, 46, 48, 49], "input1": 9, "input2": 9, "input_arrai": 31, "input_categori": [6, 9], "input_data": 6, "input_digit": 19, "input_dim": 6, "input_idx": 32, "input_index": 9, "input_nam": 6, "input_nod": [13, 20, 24, 25], "input_op": 20, "input_tensor": [6, 9, 19, 21, 31, 34], "inputcategori": [6, 9, 32], "inputconv": 6, "inputdata": 6, "inputdim": 6, "inputid": 6, "inputidx": [9, 18], "inputnam": 6, "inputnod": 6, "inputs_dim": 13, "inputs_nam": [6, 24], "inputs_s": 32, "inputs_tensor": [23, 24], "inputscategori": 9, "inputsnam": 6, "inputss": 9, "inputtyp": 6, "inquir": 6, "insequ": 7, "insert": [6, 10, 31], "insert_par": 6, "insertpar": 6, "insid": [6, 12, 16, 19, 31, 49], "insight": 0, "inspir": 49, "instal": [0, 15, 19, 21, 23, 25, 26, 27, 30, 32], "instanc": [4, 5, 6, 7, 9, 10, 27, 32, 37, 49], "instanci": [2, 24, 35, 37], "instanti": [18, 21], "instead": [6, 9, 20, 31], "instrinct": 6, "instruct": [6, 18], "int": [2, 3, 4, 5, 6, 9, 10, 11, 12, 13, 20, 25, 33, 37, 39, 46], "int16": 5, "int16_t": 5, "int32": [5, 25], "int32_t": [5, 9, 23, 24], "int64": 5, "int64_t": [5, 9, 23, 24], "int8": 5, "int8_t": [5, 9], "integ": [4, 6, 9, 25, 31, 49], "integr": [0, 9, 35, 49], "intend": [0, 5, 7, 18, 24, 28, 32, 40, 41], "intent": 6, "interact": 20, "interest": [0, 18, 32, 34], "interfac": [5, 6, 18, 19, 20, 24, 27, 33, 35, 40], "interleav": 32, "intermedi": [4, 7, 28], "intern": [4, 9, 19, 33, 39], "interoper": [0, 15, 19], "interpol": 4, "interpret": [9, 40], "intersect": 49, "intput": 49, "intrins": 6, "introduc": [7, 11, 18, 28, 30, 32, 35, 39, 46, 49], "invalid": [4, 32], "invers": 18, "inview": 6, "invok": 5, "involv": [41, 42, 49], "io": [3, 19], "ioindex_t": [6, 7, 9, 18], "iospec": [3, 24], "iou": 36, "ipycanva": [23, 25, 26], "ipython": [20, 22, 23, 26, 33, 34], "ipywidget": [23, 25, 26], "ir": 15, "irreversibli": 4, "is_arithmet": 4, "is_atom": 9, "is_back_edg": 9, "is_optional_input": 9, "isatom": 9, "isbackedg": 9, "isconditionalnoderequir": 11, "iscontigu": 4, "isdir": 27, "isfil": [20, 22, 31], "isinbound": 4, "isinputnod": 6, "isinst": 27, "isn": 6, "isol": 32, "isomorph": [18, 49], "isoptionalinput": 9, "isoutputnod": 6, "isprior": 11, "issu": [0, 29], "item": [2, 4, 6, 37], "iter": [4, 5, 12, 27, 32], "its": [4, 6, 7, 9, 11, 16, 18, 19, 21, 28, 30, 32, 35, 37, 39, 40, 46, 47], "itself": [4, 6, 18, 19, 35, 39], "jedi": [23, 26], "jinja": [5, 18, 24], "join": [19, 22, 24, 27, 28, 32], "jpg": 27, "jupyterlab_widget": [23, 26], "just": [6, 9, 18, 19, 20, 25, 28, 30, 31, 32, 35, 39], "k": [9, 49], "kb": [23, 30], "keep": [6, 7, 28, 34, 46, 47], "keep_dim": 9, "keepdim": 9, "kei": [4, 5, 11, 13, 20, 37, 49], "kept": [6, 7, 28], "kera": [0, 35], "kernel": [5, 6, 9, 10, 18, 19, 23, 26, 32, 35, 39, 41, 46, 49], "kernel_dim": [9, 28], "kernel_dst_path": 5, "kernel_s": 21, "kernel_src_path": 5, "kerneldim": 9, "kernels_path": 5, "kernels_to_copi": [5, 24], "keyword": 46, "kind": [9, 18, 35, 41, 46], "know": [6, 18, 32, 39, 40, 46], "known": [32, 46], "kpi": 41, "kriz": 30, "kwarg": [3, 6, 9, 10, 11], "l": 19, "label": [22, 24, 25, 30, 31, 35, 37], "lack": 12, "lambda": [6, 7, 18, 20, 24, 32, 49], "languag": [40, 49], "larg": 31, "larger": 4, "last": [4, 6, 19, 24, 27, 32], "late": [11, 18, 32], "late_": 11, "latenc": 0, "later": [11, 19, 20, 32, 33], "laterthan": 11, "latest": 11, "latter": [35, 40], "lattic": 6, "launch": [27, 40], "layer": [0, 5, 9, 10, 11, 19, 23, 24, 31, 33, 34, 36], "layernorm": 33, "layout": [5, 11, 23, 26], "lazi": 4, "lbl": 22, "lbl_batch": 22, "ld": [23, 24], "lead": [6, 31, 32], "leaki": 46, "leakyrelu": [20, 34, 46], "leakyrelu0": 34, "leakyrelu_op": 9, "leanr": 30, "learn": [0, 19, 32, 35, 41, 46], "learnabl": 6, "learning_r": 30, "least": [6, 28, 34, 45, 46], "leav": [9, 23, 24, 26, 27], "led": 28, "left": [6, 32], "len": [2, 22, 24, 27, 28, 30, 31], "lenet": [21, 23, 24, 25, 26], "lenet_export_fp32": [23, 26], "lenet_mnist": [23, 24, 25, 26], "length": [5, 6, 9], "less": 4, "let": [19, 20, 24, 27, 28, 31, 32, 34, 35], "level": [0, 6, 10, 11, 13, 18, 28, 32, 33, 40], "lexem": 49, "lf": [19, 20, 22, 31], "lh": [6, 23, 24], "lib": [12, 16, 19, 23, 24, 26, 27, 30, 32], "librari": [5, 12, 16, 19, 20, 21, 22, 27, 35, 37, 39, 41, 46], "lightweight": 27, "like": [4, 6, 7, 10, 24, 28, 32, 35, 40, 41], "likewis": 4, "limit": 35, "line": [6, 18, 19, 24, 27, 30, 32], "linear": [21, 33, 46], "liner": 28, "link": [6, 34, 39, 40, 46], "linux": [15, 23, 24], "linux_x86_64": 30, "list": [2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 22, 24, 28, 30, 32, 40, 46], "list_act": 5, "list_config": 5, "live": 34, "ll": 27, "llvm": 18, "ln_op": 9, "load": [4, 9, 12, 13, 18, 19, 20, 21, 27, 30, 31, 32, 35, 37, 40, 41, 42], "load_data_in_memori": [2, 22], "load_external_data": 19, "load_model": 19, "load_onnx": [13, 19, 20, 21, 22, 23, 24, 25, 26, 31, 32, 33], "loaddatainmemori": 2, "loadig": 12, "local": [32, 46], "locat": [5, 6], "log": [6, 19, 33], "log_nb_ops_by_typ": [19, 33], "log_output": 6, "log_scal": [19, 33], "logic": [6, 11, 18, 32], "logoutput": 6, "long": [9, 28, 30, 32, 35, 39, 46], "longest": [7, 28], "longuestbranchfirst": 11, "look": [0, 6, 10, 19, 30], "lookforchild": 7, "loss": 30, "lost": [4, 28], "lot": 32, "low": [0, 33], "lower": [4, 6, 18], "lowercas": [13, 20], "lowest": [4, 6], "lparen": 49, "lrn_op": 9, "lstm": [18, 20, 32, 46], "lstm_graph": 32, "lstm_model": 32, "lstm_schedul": 32, "lt": [23, 24, 26, 30, 33], "m": [4, 9, 12], "mac": 48, "machin": [12, 27], "maco": 27, "macro": 20, "madd": 31, "made": [6, 18, 40], "magicnumb": 2, "mai": [0, 4, 6, 7, 9, 11, 17, 18, 23, 26, 28, 32, 37, 40, 47, 49], "main": [0, 5, 6, 23, 24, 25, 26, 27, 33, 46], "maintain": 35, "major": 18, "make": [4, 6, 9, 14, 16, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 32], "make_shar": 6, "makecontigu": 4, "makedir": 22, "makefil": [12, 19, 23, 24, 26, 27], "manag": [5, 9, 11, 40, 46], "mandatori": [6, 7, 32], "mani": [19, 32, 40], "manipul": [9, 10, 18, 19, 31, 41, 49], "manipulatedbi": 49, "manner": [30, 37], "manual": [6, 19, 40], "manufactur": 40, "manylinux2014_x86_64": 30, "manylinux_2_17_x86_64": 30, "map": [2, 4, 5, 6, 7, 9, 10, 11, 13, 15, 37, 41], "mark_non_un": 6, "marknonun": 6, "mat": 2, "match": [4, 5, 6, 8, 9, 10, 14, 18, 19, 24, 30, 32, 35], "matchfrom": 7, "matchingresult": 7, "math": 20, "mathemat": [9, 18, 47, 49], "matmul": [19, 20, 33, 35, 46], "matmul_op": 9, "matmul_to_fc": [10, 19], "matmulop": 9, "matmultil": 10, "matmultofc": 10, "matplotlib": [19, 20, 22, 23, 26, 27, 31, 32, 34], "matrix": [2, 9, 10, 36, 37], "mattr": 6, "max": [4, 6, 9, 25, 32, 46], "max_header_s": [19, 24], "max_pool2d": 21, "maxdim": 10, "maximis": 49, "maximum": [9, 10], "maxpool": [7, 9, 18, 20], "maxpool1d": 46, "maxpool2d": 46, "maxpool3d": 46, "maxpooling_op": 9, "mb": [23, 30], "mbackward": 6, "mchildren": 6, "mcount": 11, "mcu": 0, "md": 6, "mdatatransform": 37, "mean": [4, 6, 7, 9, 11, 13, 20, 24, 28, 32, 49], "meant": [6, 9], "measur": [19, 33, 41], "mecan": 37, "mechan": [9, 19, 20, 28, 47], "meet": [35, 49], "mem": 40, "mem_info": [5, 19, 23, 24, 26], "mem_info_cont_offset": 5, "mem_info_cont_s": 5, "mem_info_length": 5, "mem_info_offset": 5, "mem_info_s": 5, "mem_info_strid": 5, "mem_info_wrap_offset": 5, "mem_info_wrap_s": 5, "mem_strategy_dino": 33, "mem_strategy_og_dino": 33, "member": [2, 3, 7, 11], "memori": [0, 4, 5, 9, 11, 18, 19, 31, 33, 34, 35, 40, 42, 46, 49], "memorize_op": [6, 9], "memorize_opimpl": 9, "memory_info": 33, "memory_manag": [5, 19, 23, 24, 26], "memory_manager_arg": [5, 19, 23, 24, 26], "memorymanag": 11, "mention": [39, 46], "mere": 6, "merg": [10, 46], "mermaid": [6, 11, 19, 20, 22], "messag": 6, "meta": [5, 18, 28, 33], "meta_oper": [9, 20], "metadata": [23, 30, 32], "metaop": 20, "metaoper": [5, 9, 20, 24], "metaoperator_op": 9, "method": [4, 5, 6, 9, 13, 15, 19, 20, 24, 27, 28, 32, 35, 47], "metric": [22, 30, 48], "mforward": 6, "micro": [9, 10, 20], "micrograph": 20, "middl": [7, 28], "midinchildren": 6, "midoutpar": 6, "might": [18, 49], "min": 4, "min_repeat": 11, "mind": 28, "minim": [18, 28], "minimum": 9, "minputnam": 6, "minputnod": 6, "minrepeat": 11, "miss": [6, 9, 13, 32], "mix": [6, 9], "mkdir": 27, "mlp": 22, "mlp_mnist": [19, 22], "mm2": 11, "mma": 10, "mmap_mod": [19, 24], "mmd": [19, 20, 22, 23, 24, 28, 32, 34], "mmean": 11, "mnist": [4, 19, 21, 22, 25, 31, 37], "mnist_dir": 22, "mnist_label": 31, "mnist_model": 19, "mnist_sampl": [19, 31], "mnist_test": 22, "mobilenet": 27, "mobilenetv2": [27, 32], "mobilenetv20_features_conv0_fwd": 32, "mobilenetv20_output_flatten0_reshape0": 32, "mod_op": 9, "modal": [2, 4, 37], "mode": [5, 9, 11, 12, 16, 19, 21, 27, 32, 33, 40], "model": [0, 5, 7, 9, 11, 13, 15, 21, 22, 28, 34, 35, 37, 41, 46, 48], "model_after_til": 34, "model_filepath": 19, "model_forward": 5, "model_nam": 25, "model_stat": 19, "modelproto": 19, "modesl": 46, "modif": [19, 46], "modifi": [0, 5, 7, 10, 20, 28, 33, 35, 40, 46], "modul": [0, 5, 16, 19, 20, 21, 24, 25, 27, 30, 31, 33, 35, 37, 42], "modular": [0, 18, 35, 39], "modulenotfounderror": [19, 24], "moment": [19, 46], "momentum": 9, "moper": 6, "more": [0, 6, 10, 18, 27, 28, 31, 32, 35, 39, 40, 46], "moreov": 37, "most": [0, 6, 19, 24, 27, 32, 34], "moutputnod": 6, "move": [4, 28, 46], "move_op": 9, "movedsrc": 4, "movement": [9, 10], "mparent": 6, "mpimg": 27, "mschedul": 37, "mse": [19, 25, 30], "mstimuli": 37, "mtime": 19, "much": [32, 39], "mul": [6, 20, 33, 46], "mul_op": [9, 20], "mulop": 9, "multi": [11, 18, 37], "multiheadattent": 33, "multimod": 37, "multiparadigm": 0, "multipl": [4, 6, 7, 9, 10, 11, 19, 20, 28, 32, 47, 49], "multipli": 48, "must": [4, 5, 6, 7, 9, 10, 11, 13, 19, 28, 32, 33, 36, 40, 41, 47, 49], "mutabl": 7, "mview": 6, "my": 6, "my_numb": [23, 26], "my_op_convert": 13, "my_op_onvert": 13, "mycustomipoper": [7, 18], "mycustompipelinedconvimpl": 18, "myexport": [12, 19, 24], "myfileobj": 19, "mymodel": [19, 24], "myop": 13, "mysupportedmodel": [19, 22], "n": [4, 6, 9, 11, 12, 19, 20, 25, 27, 28, 31, 49], "n2d2": 47, "naiv": 31, "name": [4, 5, 6, 7, 9, 10, 11, 12, 13, 19, 20, 24, 27, 28, 32, 34, 45], "name1_inid": 6, "name2_outid": 6, "name_format": 10, "name_of_your_model": 27, "name_typ": 6, "name_x": 6, "nameerror": [19, 24], "nameformat": 10, "namespac": 5, "nativ": [18, 20, 33], "native_coverage_report": [20, 33], "natur": 7, "nb": [20, 30], "nb_bit": [25, 27, 31], "nb_calib": 25, "nb_chan": 20, "nb_channel": 9, "nb_cl": 30, "nb_data": [9, 24], "nb_featur": 9, "nb_in": 5, "nb_input": 9, "nb_iter": 12, "nb_out": [5, 9, 24], "nb_output": 9, "nb_param": [9, 24], "nb_sampl": [19, 31], "nb_test": 25, "nb_valid": 25, "nbchannel": 9, "nbdata": 9, "nbdim": [4, 9], "nbfeatur": 9, "nbin": 9, "nbinput": [6, 9], "nbout": 9, "nboutput": [6, 9], "nbparam": 9, "nbvalidinput": 6, "nbvalidoutput": 6, "nchw": [4, 6, 37, 39, 46], "nd": 46, "necessari": [4, 6, 12, 20, 40, 45], "necessarili": 32, "need": [4, 5, 6, 10, 18, 20, 21, 23, 24, 25, 26, 30, 32, 35, 39, 40, 46, 49], "neg": 9, "negative_slop": 9, "negativeslop": 9, "neighbour": 46, "neither": 46, "nenadmarku": 10, "neq": 49, "nest": 4, "netron": 27, "network": [0, 6, 9, 13, 18, 23, 24, 25, 27, 29, 32, 34, 35, 37, 39, 40, 41, 46], "neural": [0, 9, 18, 19, 27, 29, 31, 34, 37, 39, 40, 41, 46], "neuromorph": 0, "new": [4, 5, 6, 9, 13, 18, 25, 28, 32, 34, 40, 46, 49], "new_graph": 6, "new_nod": 6, "new_parent_input_tensor_idx": 6, "new_parent_nod": 6, "new_parent_output_tensor_idx": 6, "newg": 6, "newgrad": 4, "newli": 9, "newnam": 6, "newnod": 6, "newnodeoutid": 6, "newparentinputtensoridx": 6, "newparentnod": 6, "newparentoutputtensoridx": 6, "next": [4, 6, 18, 20, 27, 32, 39, 46, 49], "nhwc": [6, 39, 46], "nn": 21, "no_bia": [5, 9, 28, 32], "no_quant": [19, 25], "nobia": 9, "node": [7, 9, 10, 11, 13, 18, 19, 23, 24, 25, 26, 30, 31, 33, 35, 39, 45], "node_": 11, "node_convert": 20, "node_export": 13, "node_import": [13, 20], "node_inputs_nam": 13, "node_nam": [5, 6, 20], "node_or_block": 7, "node_outputs_nam": 13, "node_relu": 24, "node_swish": 24, "node_to_replac": 34, "nodeexectim": 11, "nodenam": 6, "nodeproto": 13, "nodeprt": 6, "nodeptr": [6, 10, 11], "noexcept": [2, 3, 4, 6, 7, 9, 11], "non": [6, 7, 9, 28, 32, 37, 40], "none": [2, 3, 4, 5, 6, 7, 9, 10, 11, 13, 18, 19, 20, 22, 23, 24, 26, 31], "none_elt": 32, "noop_with_empty_ax": 9, "noqa": 19, "nor": 46, "normal": [10, 23, 26, 30, 31, 46], "notconnect": 11, "note": [4, 7, 19, 20, 23, 24, 26, 28, 30, 31, 32, 35, 39], "notebook": [31, 34], "noth": 4, "notic": [28, 31, 32], "notion": [18, 35, 39, 49], "now": [18, 19, 25, 26, 30, 31, 32, 34], "np": [6, 19, 20, 21, 22, 24, 25, 27, 30, 31, 34], "npu": 0, "npy": [19, 24, 27, 31], "nullptr": [6, 9, 11], "num_class": 21, "number": [2, 4, 5, 6, 9, 10, 11, 12, 19, 24, 32, 33, 34, 37, 40, 41, 46, 48], "number_np": [23, 26], "numer": 9, "numeric_limit": 4, "numpi": [9, 19, 20, 21, 22, 23, 24, 25, 26, 27, 30, 31, 34], "numpy_tensor": 20, "nvidia": [35, 39], "o": [3, 19, 20, 22, 23, 24, 26, 27, 28, 31, 32, 33], "o2": [23, 24], "ob222806": 32, "object": [1, 4, 6, 19, 24, 32, 33, 37, 40, 46], "observ": [21, 31], "obtain": [6, 11, 41], "obvious": 9, "occur": [4, 25], "off": [16, 19, 31], "offer": [0, 19, 35, 40, 41], "offset": [4, 5, 47], "often": [0, 6, 20, 31], "oh": 32, "old": [5, 6, 28], "old_graph": 6, "old_nam": 27, "old_nod": 6, "oldg": 6, "oldnod": 6, "on_click": [23, 26], "on_erase_button_click": [23, 26], "on_generate_button_click": [23, 26], "on_mouse_down": [23, 26], "on_mouse_mov": [23, 26], "on_mouse_up": [23, 26], "onc": [6, 19, 20, 25, 27, 30, 46, 49], "one": [2, 4, 5, 6, 7, 9, 10, 16, 17, 18, 19, 20, 21, 23, 26, 27, 28, 30, 32, 33, 34, 35, 37, 39, 40, 46, 49], "one_hot_encod": 30, "one_prod": 20, "ones": [6, 49], "onli": [4, 6, 7, 9, 11, 18, 19, 20, 24, 25, 28, 31, 33, 40, 41, 46, 47, 49], "onlinedoc": [23, 24], "onnx": [0, 6, 9, 10, 12, 14, 15, 21, 22, 23, 25, 26, 27, 29, 31, 32, 35, 40, 42, 46, 47, 49], "onnx__if": 32, "onnx_import": 19, "onnx_nod": [13, 20], "onnx_node_converter_": [13, 20], "onnx_tutori": 20, "op": [5, 6, 9, 10, 20, 24, 32], "op1": 49, "op_typ": 5, "opaqu": 49, "oparg": 6, "open": [0, 19, 20, 22, 24, 27, 31, 34], "opencv": [14, 37, 39, 46], "oper": [0, 4, 5, 6, 7, 8, 11, 13, 14, 18, 19, 27, 28, 31, 32, 33, 34, 35, 36, 37, 39, 41, 45, 47, 48], "operatora": 46, "operatorb": 46, "operatorimpl": [5, 9, 20, 24, 32], "operatortensor": 6, "operatortensorwithimpl": 9, "operatortyp": 9, "opitim": 35, "oppos": [6, 46], "opset": [13, 20, 32], "opt": 30, "optim": [0, 18, 30, 31, 33, 35, 40, 41, 49], "optim_sign": 25, "optimis": 16, "optimize_sign": [19, 25], "option": [4, 5, 6, 7, 9, 10, 11, 13, 14, 21, 23, 24, 27, 28, 32], "optionaldata": 6, "optionalparam": 32, "optionn": [10, 16], "optionnalparam": 9, "optyp": 28, "order": [4, 5, 6, 7, 9, 10, 11, 13, 18, 19, 20, 24, 27, 28, 31, 32, 34, 35, 37, 39, 40, 41, 45, 46, 49], "org": [0, 20, 22, 23, 24, 30, 31, 32], "origin": [4, 6, 9, 33, 46], "ossci": 22, "other": [0, 4, 5, 6, 7, 9, 10, 16, 18, 28, 32, 35, 36, 40, 42, 46, 49], "other_graph": 6, "other_in_id": 6, "other_nod": 6, "other_view": 6, "othergraph": 6, "otherinid": 6, "othernod": 6, "othertensor": 4, "otherview": 6, "otherwis": [4, 6, 9, 21], "oup": 28, "ouput": [6, 21, 34], "our": [6, 17, 19, 20, 30, 31, 32], "out": [6, 20, 24, 28, 40], "out_batch": 5, "out_cdtyp": 5, "out_chan": 5, "out_channel": [9, 30], "out_dim": 5, "out_dtyp": 5, "out_height": 5, "out_id": [5, 6], "out_nam": 5, "out_nod": 5, "out_siz": 5, "out_width": 5, "outchannel": 9, "outid": 6, "outnod": [19, 20, 21], "output": [4, 5, 6, 7, 9, 10, 12, 13, 18, 19, 21, 22, 25, 27, 28, 30, 31, 32, 33, 34, 39, 40, 46, 47, 48, 49], "output_aidg": [19, 20, 21, 22], "output_arrai": [25, 31], "output_connector": 6, "output_digit": 19, "output_dims_ord": 9, "output_idx": 32, "output_model": 19, "output_nam": 6, "output_nod": [25, 31], "output_tensor": [25, 31], "outputdim": 9, "outputdimsord": 9, "outputid": 6, "outputidx": [9, 18], "outputnam": 6, "outputnod": 6, "outputs_dim": 13, "outputs_nam": 6, "outputsnam": 6, "outsid": 6, "over": [0, 5, 6, 9, 20, 31, 32, 33, 46], "overal": 4, "overhead": 18, "overlap": [6, 7, 28, 37], "overload": [3, 6, 9, 10, 11, 18, 32], "overrid": [2, 4, 5, 6, 9], "overwrit": 4, "overwritten": 4, "own": [4, 7, 9, 18, 21, 37, 40], "own_fid": [19, 24], "p": [10, 11, 16, 18, 33], "packag": [12, 19, 22, 23, 24, 26, 27, 30, 32, 40], "pad": [7, 18, 20, 28, 47], "pad2d": 28, "pad_op": 9, "padbordertyp": 9, "paddedavgpooling2d": 9, "paddedavgpoolingop": 9, "paddedconv1d": 9, "paddedconv2d": [9, 28, 32], "paddedconvdepthwise1d": 9, "paddedconvdepthwise2d": 9, "paddedconvdepthwiseop": 9, "paddedconvop": 9, "paddedconvrelu": 28, "paddedconvrelu_prod": 28, "paddedmaxpooling2d": 9, "paddedmaxpoolingop": 9, "padding_dim": [9, 28, 32], "pair": [3, 6, 9, 11], "paltform": 49, "paradigm": 18, "parallel": [6, 18, 32, 46], "parallelschedul": 11, "param": [6, 7, 9, 10, 33], "paramet": [2, 4, 5, 7, 9, 10, 11, 12, 13, 16, 19, 23, 24, 30, 31, 32, 34, 35, 37, 39, 41, 48], "parent": [5, 6, 7, 24, 28, 31, 32, 46], "parent_list": 6, "parent_nam": 5, "parent_nod": 6, "parent_node_output": 6, "parent_vec": 6, "parenthes": 28, "parentisbackedg": 6, "parentless": 6, "parentnodetyp": 28, "pars": [7, 27, 28, 46], "parser_funct": 13, "parso": [23, 26], "part": [9, 10, 19, 20, 28, 46, 49], "parti": 40, "partial": 41, "particular": [4, 31, 33, 37], "particularli": [7, 18, 28, 46], "partion": 37, "pass": [4, 5, 6, 7, 9, 11, 19, 21, 27, 28, 30, 32, 41, 46, 49], "past": 31, "path": [5, 6, 11, 12, 13, 16, 18, 19, 20, 22, 24, 27, 28, 31, 32], "path_to_aidg": 16, "path_to_install_fold": 16, "path_to_mmd": [20, 22, 34], "path_to_sav": 13, "pathlik": 19, "pattern": [6, 7, 18, 28], "pe": 40, "peak": 5, "peak_mem": 5, "pep405": 16, "per": [4, 6, 9, 12, 31, 32, 48], "perceptron": 30, "perform": [4, 5, 6, 9, 10, 18, 19, 21, 24, 25, 27, 28, 29, 31, 32, 35, 36, 39, 41, 42, 46, 49], "permut": 9, "perspect": 19, "pexpect": [23, 26], "phase": [6, 16], "philosophi": 32, "pi": 9, "pickl": [19, 24], "piec": [19, 20, 31], "pil": 27, "pil_to_arrai": 27, "pillow": [23, 26, 27, 30], "pip": [16, 21, 23, 25, 26, 27, 30, 32], "pipelin": [18, 49], "pixel": 36, "place": [28, 47], "plan": [18, 40], "plane": 11, "plateform": 35, "platform": [0, 19, 35, 36, 39, 40, 49], "pleas": [0, 6, 17, 18, 23, 26, 27, 29, 41], "plt": [19, 20, 22, 27, 31, 34], "plugin": [14, 27, 40, 45, 49], "png": [19, 23, 26, 33], "pngimagefil": 27, "pngimageplugin": 27, "po": 6, "point": [5, 6, 18, 19, 20, 28, 30, 31, 32], "pointer": [4, 6, 9, 11, 24, 42], "polici": 11, "pool": [11, 46], "pop": [20, 25, 31, 32], "pop_op": 9, "pop_opimpl": 9, "popular": [9, 19], "posit": [4, 6, 9, 10, 23, 26, 47], "possess": 6, "possib": 40, "possibl": [6, 7, 9, 10, 11, 13, 18, 19, 27, 28, 32, 33, 40, 42, 46, 49], "possiibl": 30, "post": 6, "post_valu": 25, "povid": [19, 27], "pow": [20, 33, 46], "pow_op": [9, 20], "power": [0, 9, 15], "powop": 9, "practic": [27, 31, 49], "pre": [10, 19, 27, 32, 37], "preced": [10, 28, 32], "preceed": 34, "precis": [4, 11, 18, 31, 32, 35, 36, 37, 39, 46], "pred": 30, "predic": 4, "predict": [19, 20, 21, 22, 25], "predicted_class": 22, "prefer": 6, "prefix": [5, 6], "prepar": [5, 30, 31, 41], "preprocess": [27, 37], "present": [4, 6], "pretrain": 31, "previou": [4, 6, 23, 26, 27, 34, 49], "previous": [4, 6, 32, 39, 46, 48, 49], "primari": 18, "principl": [35, 40], "print": [4, 12, 19, 20, 21, 22, 23, 24, 25, 26, 28, 30, 31, 32], "prior": [11, 32], "priorconsum": 11, "prioriti": 18, "priorproducersconsum": 11, "problem": [9, 31, 49], "problemat": 49, "process": [6, 9, 10, 11, 12, 18, 19, 27, 31, 32, 35, 37, 39, 40, 49], "prod_conso": 5, "prod_op": 30, "prodconso": [5, 32], "produc": [6, 7, 10, 11, 15, 19, 20, 24, 28, 30, 31, 33, 35, 39, 40, 45, 47, 49], "producer_op": 9, "product": 32, "profil": [12, 27], "program": [18, 35, 39, 40], "project": 32, "projet_root": 16, "prompt_toolkit": [23, 26], "propag": [6, 20, 24, 25, 30, 31, 32, 47], "proper": 31, "properti": [4, 6, 35, 46, 47], "propos": [6, 19, 46, 48], "protect": 49, "protobuff": [42, 45], "protocol": 4, "prototyp": [9, 40], "provid": [4, 5, 6, 9, 11, 12, 13, 18, 19, 21, 24, 27, 28, 32, 33, 35, 36, 37, 39, 40, 41, 46, 47, 49], "prun": 40, "prune": [31, 41], "pseudo": 6, "ptq": [15, 19, 25], "ptq_tutori": [19, 31], "ptyprocess": [23, 26], "public": [0, 2, 3, 4, 6, 7, 9, 11], "pure": [9, 23, 26], "purpos": [20, 31, 37, 49], "push": 32, "put": [6, 19, 32, 48, 49], "px": 37, "py": [5, 6, 9, 19, 24, 27, 32], "py2": 23, "py3": 23, "py_env_aidg": 16, "pybind": [12, 16], "pybind11": 42, "pygment": [23, 26], "pypi": 30, "pyplot": [19, 20, 22, 27, 31, 34], "python": [2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 19, 20, 22, 24, 27, 30, 35, 40, 45, 46], "python3": [16, 19, 23, 24, 26, 27, 30, 32], "python_bind": [12, 27], "pytorch": [0, 6, 15, 19, 21, 30, 32, 35, 46], "qat": 15, "qei": 25, "qom": 49, "quant": 31, "quant_accuraci": 25, "quantifi": [7, 18], "quantiti": [11, 18, 32], "quantiz": [0, 18, 40, 41], "quantize_network": [19, 25, 31], "quantized_model": 19, "quantizedmodel": 19, "queri": [7, 10, 18, 28], "queue": [6, 11], "quick": [0, 15], "quickli": [6, 40], "qzm": 49, "r": [9, 19, 20, 22, 31, 34], "rais": [4, 5, 25, 27], "rand": 34, "randn": [20, 21], "random": [4, 20, 21, 34], "randomli": [21, 37, 46], "rang": [0, 9, 19, 24, 25, 31], "rank": [4, 6, 9, 18], "rankf": 6, "rapid": 9, "rather": 32, "raw": [9, 20, 22, 27, 31, 37, 49], "rb": [19, 22, 24, 27], "re": 21, "read": [17, 19, 20, 22, 27, 34, 37], "readabl": 19, "readbatch": 4, "readi": [4, 6, 9, 18, 19, 30, 31], "readlink": 27, "readm": 40, "readrandombatch": 4, "realiz": 40, "realli": [30, 40], "realloc": 4, "reason": [4, 18, 49], "recal": 36, "receiv": [46, 49], "recent": [19, 24, 27], "recept": [9, 47], "recip": [7, 8, 9, 14, 19, 28, 32, 33, 35, 49], "recipi": [19, 47], "recogn": 49, "recognit": [19, 49], "recommend": 27, "reconfigur": 31, "reconnect": 6, "record": 32, "recquir": [19, 42, 45], "rectifi": 46, "recur": 9, "recurr": [9, 46], "recurs": [6, 10, 18, 28], "reduc": [0, 9, 20, 31, 33, 35], "reducemean": [20, 33], "reducemean_op": 9, "reducesum": 20, "reducesum_op": 9, "reduct": [9, 47], "ref": [4, 6, 10], "ref_typ": [20, 22, 31], "refcast": 4, "refcastfrom": 4, "refcontigu": 4, "refer": [0, 4, 6, 20, 23, 24, 28, 40, 41, 46, 49], "referenc": 49, "reffrom": 4, "reflect": [6, 49], "reformat_kernels_to_copi": 5, "regard": [4, 28], "regardless": 6, "regex": [7, 18, 28, 33], "regist": [5, 6, 19, 24, 35, 39, 46], "register_convert": 13, "register_export": 13, "register_gener": [5, 24], "register_import": 13, "register_metaop": [5, 24], "registeri": 6, "registr": 4, "registrar": 37, "registri": [5, 6], "regular": [28, 49], "rel": [5, 10, 11, 28, 47, 48], "relat": [13, 40], "relationship": [7, 11, 18, 28], "releas": [0, 16, 18], "reli": 33, "relu": [7, 18, 20, 21, 28, 30, 31, 32, 34, 46], "relu0": 34, "relu1": [28, 32], "relu2": [28, 32], "relu3": [28, 32], "relu5": 28, "relu_op": 9, "reluop": 9, "remain": [4, 6, 28, 32, 39, 46], "rememb": [28, 32], "remov": [6, 9, 19, 23, 24, 26, 27, 35], "remove_flatten": [10, 19, 21, 22, 23, 24, 25, 26, 31], "remove_nod": 28, "remove_optional_input": 25, "removechild": 6, "removedropout": 10, "removeflatten": 10, "removeview": 6, "renam": 27, "repeat": [4, 11], "repetit": [4, 32], "replac": [6, 7, 9, 10, 11, 15, 19, 21, 31, 32, 33, 34, 35, 46, 47], "replic": 6, "report": 20, "reprens": 37, "repres": [4, 9, 11, 13, 27, 37, 41, 46], "represent": [7, 19, 33], "reproduc": 20, "request": [20, 22, 23, 24, 25, 26, 27, 30, 31, 33], "requir": [0, 3, 4, 5, 6, 7, 9, 11, 19, 20, 21, 23, 24, 26, 28, 30, 31, 32, 34, 40, 41, 42, 46, 47], "requiredproduc": 11, "rerun": 28, "res1": 34, "res2": 34, "rescal": [25, 31], "rescaling_util": [23, 24], "reserv": 28, "reset": [4, 9, 11, 25, 31], "reset_cp_model": 11, "reset_grad": 30, "reset_schedul": [11, 25, 32, 34], "resetconnect": 6, "resetconsummerproduc": 9, "resetcpmodel": 11, "resetindexbatch": 4, "resetinput": 9, "resetschedul": 11, "reshap": [4, 10, 19, 20, 25, 31, 32, 33, 46], "reshape_op": [9, 32], "reshape_opimpl": 9, "reshapeop": 9, "residu": 6, "resiz": 4, "resize_op": 9, "resolut": 6, "resolv": [23, 24, 25, 26, 33], "resourc": [5, 27, 40, 49], "respect": [5, 35, 39], "respons": [20, 22, 31, 32, 40], "rest": 35, "restart": [23, 26], "restrict": 18, "result": [6, 7, 9, 10, 19, 25, 27, 28, 31, 32, 34, 45, 46, 47], "resum": 27, "retain": 9, "retreiv": 31, "retriev": [5, 9, 10, 11, 19], "return": [2, 4, 5, 7, 9, 10, 11, 12, 13, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 34, 37, 40, 46, 49], "reus": [27, 47], "reuslt": 30, "revers": [6, 11], "rf": [23, 27], "rgb": [27, 37], "rh": [6, 23, 24], "rid": 31, "right": [4, 6, 18, 32, 34, 46], "rm": [19, 23, 27], "rnn": [9, 46], "robust": [35, 40, 41], "role": 40, "root": [5, 6, 7, 9, 16, 24, 25, 28, 30], "root_nod": [6, 24, 28], "rootnod": 6, "roughcanva": [23, 26], "round": [25, 31], "round_op": 9, "rounding_mod": 9, "roundingmod": 9, "routin": 31, "rparen": 49, "rtol": 19, "rtype": [6, 9, 10], "rule": [7, 9, 27, 35, 49], "run": [6, 11, 12, 20, 21, 22, 23, 24, 25, 26, 27, 30, 32, 34, 40, 41, 42, 48], "run_command": 25, "run_export": [19, 23, 24, 25], "run_sync": [12, 27], "runabl": 41, "runnabl": [32, 41], "runtim": [6, 13, 32, 40, 46], "runtimeerror": [24, 25], "s3": 22, "safe": 6, "sai": 24, "sake": [21, 49], "same": [0, 4, 6, 7, 9, 11, 16, 18, 20, 25, 28, 32, 34, 47], "sampl": [2, 4, 19, 25, 27, 30, 31], "satisfi": [23, 26, 30, 32], "satur": 0, "save": [5, 6, 11, 12, 13, 19, 20, 22, 24, 25, 27, 28, 32, 34, 35, 46], "save_factorized_static_scheduling_diagram": [11, 32], "save_scheduling_diagram": [11, 19], "save_static_scheduling_diagram": [11, 32], "savefactorizedstaticschedulingdiagram": 11, "saveschedulingdiagram": 11, "savestaticschedulingdiagram": 11, "scalar": 4, "scale": [31, 48], "scaleddotproductattent": 33, "schedul": [8, 9, 14, 15, 20, 21, 22, 23, 25, 26, 28, 30, 33, 34, 35, 41, 46, 47], "scheduler_export": [5, 19, 23, 24, 26], "schedulingel": 11, "schedulingpolici": 11, "schedulingsequenti": 19, "schedulingsequential_forward": 19, "schema": [13, 42], "scheme": 27, "scope": 6, "script": [19, 31], "scrt1": [23, 24], "se": 6, "seamless": 15, "search": [7, 9, 15, 28], "second": [4, 6, 7, 11, 28, 34, 40], "secondli": 31, "section": [20, 33, 35, 39, 40, 41, 46, 49], "secur": 40, "see": [0, 3, 6, 11, 18, 19, 20, 28, 31, 32, 39, 40, 41, 46, 49], "seem": 31, "seemless": 42, "seen": [20, 49], "segment": 36, "select": [6, 9, 11, 27, 28, 32, 33, 34, 46], "select_op": 9, "select_opimpl": 9, "self": [2, 3, 4, 5, 6, 7, 9, 11, 19, 20, 21, 24, 30, 32], "send": [6, 20, 30], "sens": [6, 28], "sep": 49, "separ": [9, 18, 28, 35, 39, 40], "seq": 7, "seq_length": [9, 32], "sequenc": [7, 9, 28, 32, 33, 35, 39], "sequenti": [6, 9, 18, 24, 28, 30, 32, 34, 35, 37, 40, 46], "sequentialschedul": [11, 19, 20, 21, 22, 23, 24, 25, 26, 30, 31, 32, 33, 34], "seri": 37, "serial": [19, 41], "serv": [5, 34], "set": [4, 5, 6, 7, 9, 11, 12, 13, 16, 18, 21, 24, 25, 28, 32, 35, 40, 46, 48, 49], "set_back_edg": 9, "set_backend": [4, 6, 9, 19, 20, 21, 22, 25, 30, 31, 32, 33], "set_console_level": 33, "set_data_format": 4, "set_dataformat": [6, 9], "set_datatyp": [4, 6, 9, 19, 20, 21, 22, 25, 30, 31, 33], "set_forward_dim": [20, 24, 32], "set_grad": 4, "set_impl": [9, 20, 24, 32], "set_input": [9, 25, 34], "set_learning_rate_schedul": 30, "set_nam": 6, "set_nodes_datatyp": 25, "set_nodes_nam": 25, "set_ordered_input": 6, "set_ordered_output": [6, 33], "set_output": [9, 20], "set_paramet": 30, "set_root_nod": 6, "set_scheduling_polici": 11, "setbackedg": 9, "setbackend": [4, 6, 9, 20], "setbatch": 4, "setdataformat": [4, 6, 9], "setdatatyp": [4, 6, 9], "setgrad": 4, "setimpl": [4, 9], "setinheritedattr": 9, "setinput": 9, "setinputid": 6, "setnam": 6, "setnodesnam": 6, "setorderedinput": 6, "setorderedoutput": 6, "setoutput": 9, "setrootnod": 6, "setschedulingpolici": 11, "setup": [4, 6, 19, 30, 34], "sever": [0, 6, 7, 10, 12, 27, 28, 31, 34, 37, 40, 41, 46, 49], "sgd": 30, "sh": [19, 23, 24, 26, 27], "shall": 6, "shallow": [4, 9], "shape": [4, 6, 9, 10, 20, 21, 23, 26, 27, 32, 33], "shape_op": 9, "shape_opimpl": 9, "share": [4, 6, 9, 11], "shared_ptr": [2, 4, 6, 7, 9, 10, 11], "shiftgelu_op": 9, "shiftmax_op": 9, "short": [2, 9, 46], "shortestbranchfirst": 11, "should": [4, 5, 6, 9, 12, 13, 16, 18, 20, 25, 30, 34, 37, 40, 47], "show": [6, 16, 27, 31, 33], "show_produc": 6, "showcas": 20, "shown": 27, "showproduc": 6, "shuffl": [4, 22, 30], "shutil": [22, 27], "sibl": 28, "sigmoid": [20, 46], "sigmoid_op": 9, "sigmoidop": 9, "sign": 2, "signatur": 13, "similar": [10, 11, 18, 32, 39, 46, 47], "similarli": 42, "simpl": [0, 7, 9, 15, 19, 20, 27, 28, 32, 41], "simpler": 6, "simpli": [28, 32], "simplic": 21, "simplifi": [10, 33, 40, 42, 46, 49], "simul": 0, "simultan": 32, "sinc": [7, 9, 20, 28, 40, 46], "singl": [5, 6, 7, 9, 10, 18, 20, 28, 32, 34, 49], "single_shift": [19, 25], "singleoutput": 7, "singlepassgraphmatch": [7, 10, 18, 24, 28], "site": [19, 23, 24, 26, 27, 30, 32], "situat": 6, "size": [0, 4, 5, 6, 9, 10, 12, 24, 27, 32, 37, 40, 46, 47], "size_0": 4, "size_1": 4, "size_2": 4, "size_3": 4, "size_4": 4, "size_t": [2, 4, 6, 7, 9, 10, 11], "size_typ": [4, 9], "skip": [11, 22], "skipbackward": 11, "slice": [6, 10, 20, 34, 46], "slice_op": 9, "slice_opimpl": 9, "sliceop": 9, "slide": 9, "slope": 9, "small": [9, 31, 34], "smaller": [6, 31, 34], "smlal": [23, 24], "so": [0, 4, 6, 16, 19, 20, 24, 25, 27, 28, 31, 32, 33, 40, 46], "softmax": [20, 33, 46], "softmax_op": 9, "softmaxop": 9, "softmin": 46, "softplu": 46, "softwar": 40, "solut": 49, "solv": 36, "some": [0, 4, 6, 7, 9, 10, 11, 17, 18, 19, 24, 25, 32, 33, 36, 40, 41, 47], "sometim": [7, 18, 28], "somewher": 32, "soon": [4, 6], "sophist": [7, 18, 28], "sort": 11, "sourc": [0, 4, 5, 10, 16, 19, 23, 24, 26, 27, 35, 40], "sovereignti": 0, "space": [4, 9], "spatial": 9, "spec": 5, "special": [0, 6, 18, 19, 32], "specif": [0, 5, 6, 7, 9, 10, 18, 28, 30, 35, 39, 40, 41, 46, 47, 49], "specifi": [4, 5, 6, 9, 11, 18, 20, 24, 27, 28, 32, 33, 35, 40, 46, 47], "split": [6, 10, 20, 27, 33, 37, 40, 46, 49], "split_op": 9, "split_opimpl": 9, "splitdatabas": 37, "splite": 34, "splitext": 22, "sqrt": [4, 20, 33], "sqrt_op": 9, "sqrtop": 9, "squar": 9, "squash": 9, "squeez": 20, "squeeze_op": 9, "squeeze_opimpl": 9, "src": [4, 5, 19, 23, 24, 27], "stabil": 9, "stabl": [6, 32], "stack": [19, 24], "stack_data": [23, 26], "stackop": 9, "stackopimpl": 9, "stage": 41, "stai": [4, 18], "standalon": [18, 19], "standard": [0, 16, 18, 28, 35], "start": [0, 7, 9, 11, 19, 21, 27, 29, 32, 49], "start_": 11, "startnod": 7, "stat": [19, 23, 24, 26], "state": [15, 20, 32, 41], "state_begin": 32, "stateful": 32, "static": [4, 5, 6, 9, 11, 18, 23, 24, 28, 32, 40, 41], "static_analysi": [19, 33], "static_cast": 11, "static_fil": 5, "staticanalysi": [19, 33], "staticschedulingel": 11, "statist": 33, "stats_fold": [19, 23, 24, 26], "stats_op": [19, 33], "statu": [6, 20, 22, 23, 24, 31], "status_cod": [20, 22, 31], "std": [2, 3, 4, 6, 7, 9, 10, 11, 28], "std_line": 25, "stddev": 11, "step": [6, 9, 10, 11, 16, 18, 20, 21, 27, 31, 32, 35, 40, 42, 49], "still": [9, 10, 11, 32, 41], "stimulu": 12, "stm32h7": 26, "stock": 6, "stop": [27, 32, 49], "storag": [4, 9], "store": [3, 4, 5, 7, 11, 12, 19, 27, 28, 31, 40, 41, 46], "str": [2, 4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 19, 20, 22, 24, 25, 27, 31], "strategi": [4, 39], "strictli": 32, "stride": [4, 5, 9, 21, 46], "stride_dim": [9, 28, 32], "stridedim": 9, "string": [2, 4, 5, 6, 7, 9, 10, 11, 13, 49], "stripe": 34, "stroke_lin": [23, 26], "stroke_styl": [23, 26], "struct": [3, 7, 11], "structur": [4, 5, 6, 19, 27, 33, 35, 39], "stub": 19, "studi": 33, "style": [6, 9], "sub": [4, 6, 7, 10, 20, 28, 32, 33, 34, 46, 49], "sub_op": 9, "subclass": [4, 5, 9, 11], "subdirectori": [5, 6], "subgraph": [46, 47, 49], "subop": 9, "subplot": [19, 31], "subprocess": 25, "subsequ": [28, 40], "subset": [7, 18, 28, 31, 49], "substitut": 6, "subtract": [4, 9], "succe": 6, "succeed": [6, 28], "success": [6, 32, 34, 49], "successfulli": [9, 20, 22, 23, 30, 31], "suffix": 28, "suggest": [6, 27], "sum": [6, 20, 22], "summar": [12, 32, 40], "summari": [19, 33], "super": [21, 24], "support": [0, 5, 9, 12, 13, 18, 19, 20, 27, 28, 32, 46, 49], "supported_graph": 20, "supported_oper": [13, 20], "suppos": [41, 46], "sure": [19, 21, 27], "swap": [6, 32], "swich": 20, "swish": 20, "swish0": 20, "swish_": 24, "swish_config": 24, "swish_export_fil": 24, "swish_forward": 24, "swish_kernel": 24, "swish_micro": 20, "swish_micro_graph": 20, "swish_nod": 20, "swish_op": 20, "swishcpp": 24, "swishimpl": 20, "switch": [24, 35, 39], "switch_id": 24, "sy": [19, 24, 28, 32], "symbol": 28, "symlink": [5, 27], "sync_image_data": [23, 26], "synchron": 12, "syntax": [7, 28, 49], "synthax": 46, "system": [0, 18, 32, 39, 40, 41, 46], "t": [4, 6, 7, 9, 19, 20, 27, 28, 30, 31, 46], "t10k": 22, "tabl": 12, "tag": 32, "tag_conditional_nod": [11, 32], "tagconditionalnod": 11, "tagforkbranch": 11, "tail": 27, "take": [4, 5, 6, 9, 13, 17, 19, 27, 31, 32, 33, 35, 37, 40, 46, 47, 49], "taken": [6, 49], "tangent": 46, "tanh": [20, 46], "tanh_op": 9, "tanhop": 9, "tar": 30, "target": [0, 4, 5, 9, 18, 19, 27, 31, 35, 36, 39, 40, 41, 46, 49], "target_typ": [19, 25], "targetreq": 4, "targettyp": 9, "task": [19, 31, 36], "team": 0, "technic": 0, "techniqu": [0, 31, 40], "teh": 6, "templat": [4, 5, 9, 12, 18, 24, 40], "template_path": 24, "temporari": 6, "tensor": [2, 6, 9, 10, 11, 20, 21, 23, 24, 25, 26, 28, 30, 31, 34, 35, 39, 46], "tensor_export": 24, "tensordim": 4, "tensorflow": [15, 42, 46], "tensorimpl": 4, "tensoropencv": 2, "tensorrt": [14, 35, 39], "term": [9, 19, 33, 35, 40, 46], "termin": 13, "test": [0, 4, 6, 7, 9, 12, 13, 18, 20, 31, 37, 40], "test_cpp_dock": 12, "test_lib_python_dock": [12, 27], "test_plugin": 12, "test_set": 25, "test_swish": 20, "text": [23, 24], "textual": [7, 18, 28], "tf2onnx": 42, "th": [6, 28, 31], "than": [4, 6, 32, 35, 39], "thank": [11, 18, 19, 34, 42], "thei": [5, 6, 7, 10, 11, 19, 28, 31, 35, 47], "them": [6, 7, 9, 10, 18, 19, 24, 28, 31, 32, 34, 39, 46, 48, 49], "themselv": [40, 46], "theori": 49, "therefor": [5, 7, 32, 40, 46, 49], "thi": [4, 5, 6, 7, 9, 10, 11, 12, 13, 18, 19, 20, 21, 22, 23, 24, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 39, 40, 41, 42, 45, 46, 47, 48, 49], "third": [4, 40], "those": [16, 31, 40, 49], "thread": [11, 18], "threadpool": 11, "three": [27, 32, 37, 46], "through": [6, 9, 11, 21, 27, 28, 37, 41, 42], "throughout": 6, "throw": [6, 7, 28], "thrown": 6, "thu": [10, 11, 18, 20, 31, 32, 35], "tier": 37, "tight_layout": [19, 31], "tile": [15, 41], "tiled_conv": 34, "till": [19, 40], "time": [4, 6, 9, 11, 12, 17, 25, 32, 33, 37, 40, 41, 46, 49], "time_point": 11, "tlm": [11, 18, 32], "to_fil": [23, 26], "to_other_nod": 6, "to_tensor": 6, "tocoord": 4, "todo": [4, 6, 20], "togeth": 40, "toindex": 4, "token": [9, 11, 18, 32, 49], "tolpolog": 40, "tonod": 6, "tool": [18, 19, 20, 49], "toolchain": [19, 24], "toolkit": 40, "toothernod": 6, "tootherview": 6, "top": 22, "top1_accuraci": 22, "topk_op": 9, "topolog": [0, 6, 39, 46, 49], "topologi": [18, 46], "torch": [21, 30, 32, 42], "torchvis": [25, 30, 42], "toronto": 30, "tostr": 4, "tot_acc": 30, "total": [9, 11, 22, 33], "totensor": [6, 25, 30], "toto": 5, "toward": [6, 46], "tpu": 10, "traceback": [19, 24, 27], "track": 6, "train": [0, 2, 4, 9, 19, 21, 22, 25, 36, 37, 41, 46], "training_mod": 9, "trainingmod": 9, "trainset": 30, "traitlet": [23, 26], "transact": [11, 18, 32], "transfert": 46, "transfomr": 10, "transform": [2, 6, 10, 23, 24, 25, 26, 27, 29, 30, 34, 40, 41, 46, 47], "transit": 49, "transmitt": 6, "transpos": [4, 6, 19, 20, 33, 46], "transpose_op": 9, "transposeimpl": 9, "transposit": [4, 10, 49], "treat": 6, "tree": [19, 24, 49], "trigger": [6, 32], "trivial": [18, 31], "trt": [12, 27], "trt_version": [12, 27], "true": [4, 5, 6, 7, 9, 10, 11, 12, 13, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 32, 33, 34, 49], "truth": 35, "try": [6, 23, 25, 26, 27, 32], "tune": 18, "tupl": [3, 4, 6, 9, 13, 37], "tuple_out": 30, "tuto_util": [19, 24, 28, 32], "tutori": [0, 17, 18, 19, 21, 23, 24, 26, 28, 30, 31, 32, 33, 34], "tvm": 18, "two": [4, 6, 9, 11, 16, 18, 27, 28, 32, 37, 40, 46, 47, 48, 49], "type": [2, 3, 4, 5, 6, 7, 9, 10, 11, 13, 16, 18, 19, 20, 24, 25, 30, 31, 32, 33, 35, 39, 46, 49], "type_": 3, "typenam": 4, "typic": [5, 32], "typing_extens": [23, 26], "u": 31, "ubyt": 22, "uint": 37, "uint16": [5, 6], "uint16_t": 5, "uint32": 5, "uint32_t": [2, 5, 9, 23, 24], "uint64": 5, "uint64_t": 5, "uint8": 5, "uint8_t": [2, 5], "unabl": 32, "unalt": 49, "unchang": 9, "uncompress": 31, "unconnect": 6, "undefin": [4, 5, 6, 9, 23, 24, 32], "under": [0, 5, 37], "undergon": 40, "understand": 10, "unfold": 10, "unfold_op": 9, "unfold_opimpl": 9, "unic": 6, "unimpl": 49, "uninstal": 30, "union": [2, 5, 19], "uniqu": [5, 6, 10, 18, 28, 33], "unique_nam": 10, "uniquenam": 10, "unit": [9, 10, 40, 46], "unitari": 40, "unknown": [9, 20, 32, 45, 46], "unless": 5, "unlik": [4, 18], "unnecessari": [32, 49], "unord": 28, "unquantifi": [7, 18, 28], "unsign": 2, "unsqueez": 20, "unsqueeze_op": 9, "unsqueeze_opimpl": 9, "unsupport": [9, 18, 20, 24], "until": [6, 10, 11, 32], "unus": 4, "up": [12, 18, 40], "updat": [1, 6, 9, 11, 23, 26, 30, 31, 32, 33, 46, 47], "updateconsummerproduc": 9, "updatenodenam": 6, "upon": 27, "upper": 11, "uppernod": 11, "uppernodeinputconnect": 11, "uppernodeinputfound": 11, "url": [20, 22, 27, 30, 34], "urllib": [22, 27], "urllib3": [23, 26, 30], "urlopen": 27, "urlpars": 27, "urlretriev": 22, "us": [0, 4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 30, 31, 32, 33, 34, 35, 37, 39, 40, 41, 42, 45, 46, 49], "usabl": [6, 10, 21], "usag": [0, 5, 6, 12, 22, 33, 49], "use_cuda": [19, 25], "useful": 37, "useless": [23, 24, 26], "user": [0, 6, 17, 18, 19, 27, 32, 35, 40, 46, 48, 49], "userwarn": 32, "usr": [19, 23, 24, 27], "usual": 18, "utf": 34, "util": [12, 14, 19, 23, 24, 25, 26, 28, 31, 32, 33], "v": [6, 16, 25], "val": [4, 49], "val_acc": 22, "val_dataprovid": 22, "val_mnist": 22, "valid": [4, 6, 19, 24, 27, 37, 40], "validi": 4, "validtensor": 11, "valu": [2, 4, 6, 9, 11, 13, 16, 19, 20, 24, 30, 31, 32, 34, 46], "valueerror": 27, "vanish": 9, "variabl": [5, 25, 32, 37], "variant": 9, "variou": [9, 19, 37], "vbox": [23, 26], "ve": 31, "vector": [2, 3, 4, 6, 9, 10, 11, 24], "venv": [19, 23, 24, 26, 27, 30], "verbos": [6, 13, 19, 21, 25, 31, 32, 33, 46], "veri": [10, 31], "verif": 6, "verifi": [6, 33], "version": [6, 12, 13, 19, 32], "versu": 40, "via": [5, 27, 33, 35, 39, 40, 42, 45, 46], "view": [6, 10, 18, 21, 42, 45, 49], "virtual": [2, 4, 5, 6, 9, 11], "virtualenv": 16, "vision": 27, "visit": 49, "visual": [11, 19, 20, 22, 27, 31, 33], "visualis": 20, "visualize_mmd": [19, 20, 22, 24, 28, 32, 34], "void": [4, 6, 7, 9, 10, 11], "vt": 4, "w": 9, "wa": [4, 6, 28, 34], "wai": [5, 6, 18, 19, 20, 30, 49], "wait": 11, "walk": [6, 27], "wall": [23, 24], "want": [4, 6, 10, 19, 20, 21, 24, 28, 31, 32, 49], "warn": [6, 16, 23, 24, 31, 32], "wb": [20, 22, 27, 31], "wcwidth": [23, 26], "we": [4, 6, 7, 10, 19, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 47, 48, 49], "weak": 6, "weight": [6, 7, 9, 28, 30, 32, 37, 45], "weightinterleaving_op": 9, "welcom": 4, "well": [4, 5, 6, 7, 11, 15, 19, 20, 28, 32, 40], "were": [4, 6, 33], "wether": [5, 32], "wextra": [23, 24], "wget": 27, "what": [18, 28, 30, 32, 35, 47, 49], "whatev": [19, 40], "whatsoev": 18, "when": [1, 4, 6, 7, 9, 10, 11, 12, 19, 28, 32, 40, 42, 46, 47, 49], "where": [4, 5, 6, 9, 10, 11, 12, 13, 31, 32, 46], "whether": [4, 6, 9, 49], "which": [4, 5, 6, 7, 9, 10, 12, 13, 16, 18, 19, 20, 28, 30, 32, 33, 35, 36, 37, 39, 40, 42, 46, 48, 49], "while": [9, 31, 35, 39], "whitespac": 7, "whl": [23, 30], "who": 18, "whole": [40, 46], "whose": [6, 33], "why": [0, 15, 28, 32, 35, 39], "wide": 0, "widgetsnbextens": [23, 26], "width": [5, 21, 23, 26], "window": 9, "wise": [4, 9, 36, 46], "wish": 6, "within": [5, 6, 9, 25, 42, 46], "without": [4, 6, 7, 11, 18, 19, 32, 35, 40, 41, 42, 46, 48], "won": 46, "work": [6, 7, 9, 10, 11, 21, 32, 39, 40, 42, 46], "workaround": 32, "would": [6, 19, 28, 32], "wrap": [5, 11, 19, 23, 24, 26, 33, 42], "wrap_around_buff": 11, "wraparoundbuff": 11, "wrapper": [5, 42], "write": [7, 18, 20, 22, 27, 28, 30, 31, 40], "writefil": 27, "wrong": [7, 28, 32], "wunus": [23, 24], "www": 30, "x": [6, 9, 20, 21, 23, 24, 26, 31, 32, 46], "x86_64": [23, 24], "xavier_uniform_fil": 30, "y": [6, 20, 23, 26, 31, 46], "yet": [4, 6, 9, 19, 27, 28, 32, 33, 46], "you": [4, 6, 7, 9, 12, 16, 17, 18, 19, 20, 21, 23, 24, 26, 27, 28, 29, 30, 31, 32, 34, 35, 39, 40, 49], "your": [0, 7, 12, 16, 18, 21, 27, 28, 32], "z": [6, 49], "z0": 49, "z1": 6, "z2": 6, "z3": 6, "za": 49, "zero": [4, 9, 28, 31, 46, 49], "\u00ecnstall": 16}, "titles": ["Aidge", "Aidge backend CPU", "Aidge backend OpenCV API", "Backend", "Data", "Export", "Graph", "Graph Matching", "Aidge core API", "Operators", "Recipes", "Scheduler", "Aidge Export TensorRT API", "Aidge ONNX API", "API", "Get Started", "Install", "Quick Start", "Why Aidge?", "Aidge demonstration", "Aidge ONNX tutorial", "Backend CUDA example", "Data provider tutorial", "Export 101", "Add a custom operator to the C++ export", "Quantized model C++ export", "STM32 export", "TensorRT export", "Graph matching and manipulation", "Tutorials", "Training a simple Neural Network", "Post Training Quantization with AIDGE", "Understanding Aidge\u2019s scheduling", "Perform static analysis on a neural network model", "Aidge tiling demonstration", "Framework architecture", "Benchmark neural network model", "Data", "Ensure robustness", "Runtime graph execution", "Perform an export", "User Guide", "Plateform interoperability", "Learn on edge", "Learn model", "Load and store model", "Computational graph", "Optimize graph", "Static analysis", "Transform graph"], "titleterms": {"": 32, "0": 27, "1": 27, "101": 23, "2": 27, "3": 27, "4": 27, "The": 31, "accuraci": 31, "ad": 47, "adapt": 10, "add": [9, 10, 24, 40], "advanc": 28, "aggreg": 48, "agnost": 18, "aidg": [0, 1, 2, 8, 12, 13, 18, 19, 20, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33, 34], "altern": 28, "an": [19, 20, 22, 40, 46], "analysi": [19, 33, 48], "ani": 28, "api": [2, 8, 12, 13, 14], "appli": 31, "architectur": [35, 40], "art": 18, "attribut": [28, 40], "averag": 9, "backend": [1, 2, 3, 10, 21, 35, 39], "base": [9, 11, 28], "batchnorm": [9, 10], "benchmark": 36, "block": 28, "build": 16, "c": [16, 19, 24, 25, 32], "calibr": 27, "cast": [9, 10], "chang": 47, "character": 18, "class": [9, 11], "clone": 46, "code": 18, "compil": [16, 18, 19, 23, 26], "complet": 40, "comput": [20, 31, 36, 40, 46, 48], "concat": 9, "condit": 32, "configur": [19, 33], "connector": 6, "constant": 10, "constraint": 40, "consum": 18, "conv": [9, 10], "convdepthwis": 9, "convert": [10, 13], "copi": 46, "core": [8, 35, 46], "cpp": 24, "cpu": 1, "creat": [19, 20, 25, 30, 32, 46], "creation": 31, "cuda": 21, "custom": 24, "data": [4, 22, 32, 37], "databas": [2, 4, 25, 30, 37], "dataflow": [18, 32], "dataprovid": [4, 37], "dataset": [27, 31], "deep": 46, "default": 39, "defin": [18, 34], "definit": 46, "demand": 32, "demonstr": [19, 34], "describ": 49, "design": 40, "dimens": 20, "direct": 32, "div": 9, "do": 31, "done": 31, "download": [19, 23, 25, 26, 31, 33], "draw": [23, 26], "dropout": 10, "edg": [28, 43], "effect": 18, "engin": 18, "ensur": 38, "environ": 31, "erf": 9, "evalu": 22, "exampl": [6, 21, 31, 46], "excut": 36, "execut": 39, "expand": [10, 49], "expans": 28, "explicit": [10, 46], "explor": 33, "export": [5, 12, 13, 19, 23, 24, 25, 26, 27, 29, 40], "extra": 40, "factor": 28, "fc": [9, 10], "file": [19, 40], "first": 28, "flatten": 10, "fold": 10, "footprint": 48, "framework": 35, "from": [23, 26, 45, 48], "function": [12, 13, 28, 29, 34, 41, 46, 49], "fuse": [10, 47], "gather": 9, "gener": [9, 18, 19, 20, 23, 26, 27, 46], "get": [15, 48], "graph": [6, 7, 12, 18, 19, 24, 28, 33, 39, 40, 46, 47, 49], "graphview": 6, "guid": 41, "hand": 33, "hardwar": [18, 40], "helper": [6, 12], "heurist": 18, "high": 41, "i": [0, 31], "ident": 9, "implement": [3, 20, 35, 39, 40, 46, 47], "import": [13, 19, 20, 24, 31, 33], "infer": [19, 31, 33], "input": [3, 19, 23, 26], "instal": [16, 22], "int8": 25, "integr": 40, "interoper": [18, 42], "interpret": 49, "introduct": 46, "ir": 18, "isomorph": 47, "kera": 42, "kernel": 40, "kpi": 48, "lambda": 28, "last": 28, "layer": 47, "leakyrelu": 9, "learn": [30, 43, 44], "lenet": 22, "level": 41, "lexer": 49, "lib": 5, "librari": 40, "licens": 0, "like": 22, "linux": 16, "load": [23, 24, 25, 26, 45], "loop": 30, "lstm": 9, "machin": 49, "main": 19, "make": [12, 46], "manipul": [23, 25, 26, 28], "map": [18, 40], "master": 32, "match": [7, 28, 49], "matmul": [9, 10, 47], "measur": 36, "memor": 9, "memori": 48, "mermaid": 34, "meta": [9, 10], "metanod": [20, 49], "method": 18, "metric": 36, "mnist": 2, "model": [18, 19, 20, 23, 24, 25, 26, 27, 30, 31, 32, 33, 36, 40, 42, 44, 45, 47], "modifi": 27, "move": [9, 10], "mul": 9, "multi": 47, "need": [19, 31, 33], "network": [19, 30, 31, 33, 36], "neural": [30, 33, 36], "new": 20, "node": [5, 6, 20, 28, 32, 40, 46, 48, 49], "note": 6, "notebook": [19, 20, 33], "number": [23, 26], "numpi": 42, "object": 30, "onc": 32, "onli": 32, "onnx": [13, 18, 19, 20, 24, 33, 45], "opencv": 2, "oper": [9, 10, 20, 24, 46, 49], "operatortensor": 9, "optim": [19, 29, 47], "option": [12, 16, 19], "output": [3, 20], "overview": [36, 41, 48, 49], "own": [23, 26], "p": 32, "pad": 9, "paddedavgpool": 9, "paddedconv": 9, "paddedconvdepthwis": 9, "paddedmaxpool": 9, "parallel": [11, 28], "paramet": [6, 40, 46], "parser": 49, "partit": 37, "pattern": 49, "perform": [22, 33, 40], "phase": 40, "pipelin": [31, 32], "plateform": 42, "plugin": [12, 35, 46], "pool": 9, "pop": 9, "post": 31, "pow": 9, "power": 18, "predefin": 9, "prepar": 27, "produc": [9, 18, 32, 46], "project": 40, "propos": 47, "provid": [20, 22], "ptq": [18, 31], "python": 16, "pytorch": [18, 42], "qat": 18, "quantifi": 28, "quantiz": [25, 27, 31], "quick": 17, "recip": 10, "reducemean": 9, "regex": 49, "regist": [13, 20], "relu": [9, 24], "remov": [10, 28, 49], "replac": [18, 24, 28, 49], "requir": [22, 27], "reset": 32, "reshap": 9, "retriev": 20, "return": 6, "robust": 38, "rule": [28, 40], "run": [19, 31, 33], "runtim": 39, "schedul": [5, 11, 18, 19, 24, 31, 32, 39, 40], "score": 36, "script": 27, "seamless": 18, "search": 18, "select": 39, "sequenti": 11, "set": [19, 20, 30, 31, 33], "setup": 31, "share": 46, "sigmoid": 9, "simpl": [18, 30], "slice": 9, "softmax": 9, "solver": 49, "some": [28, 31], "spatial": 47, "specif": 3, "specifiyng": 28, "sqrt": 9, "start": [15, 17], "state": [18, 49], "static": [19, 33, 48], "stimuli": 37, "stm32": 26, "store": 45, "strategi": 40, "structur": 37, "sub": 9, "subgraph": 48, "support": 24, "swish": 24, "syntax": 46, "tanh": 9, "tensor": [4, 19, 32, 37, 42], "tensorflow": 18, "tensorrt": [12, 27], "test": [19, 23, 26, 27], "thi": 27, "tile": [10, 18, 34, 47], "time": 36, "topologi": 47, "train": [30, 31], "transform": [19, 33, 49], "transmitt": 46, "transpos": [9, 10], "tutori": [20, 22, 27, 29], "type": 28, "understand": 32, "up": [19, 20, 30, 31, 33], "updat": 20, "usag": 28, "user": 41, "util": 2, "view": 46, "visual": 34, "well": 18, "what": [0, 31], "whole": 32, "why": 18, "work": [20, 31], "workflow": 41, "your": [23, 26]}})
\ No newline at end of file
diff --git a/source/API/BackendCPU/index.html b/source/API/BackendCPU/index.html
index 364c80b44b3db6e86dc6278775f4f1d652815aec..dd7bd1620f421e63961f572f919537b83c835489 100644
--- a/source/API/BackendCPU/index.html
+++ b/source/API/BackendCPU/index.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Export" href="../Core/export.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/API/BackendOPENCV/index.html b/source/API/BackendOPENCV/index.html
index 89b6adb18d79eb9274a1a32f8f50bfa20677316c..1c354923023a9e6b877fa4ebecccec9498c84de3 100644
--- a/source/API/BackendOPENCV/index.html
+++ b/source/API/BackendOPENCV/index.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Aidge ONNX API" href="../Onnx/index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/API/Core/backend.html b/source/API/Core/backend.html
index fa17a0fbf57b1447d60092d11f876e0760f8bb30..e82e5e0e93cc0704735270f41e9c5f21b4a52b6d 100644
--- a/source/API/Core/backend.html
+++ b/source/API/Core/backend.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Operators" href="operator.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/API/Core/data.html b/source/API/Core/data.html
index ae164b31a5e2f9200b8dbe385a2bcc785956cf08..fba93fc77f1d9d27e9911a7bca3cddf5dda1a22c 100644
--- a/source/API/Core/data.html
+++ b/source/API/Core/data.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Aidge core API" href="index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -530,6 +530,16 @@ Python</label><div class="sd-tab-content docutils">
 <span class="sig-name descname"><span class="pre">sqrt</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.Tensor" title="aidge_core.aidge_core.Tensor"><span class="pre">aidge_core.aidge_core.Tensor</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#aidge_core.Tensor" title="aidge_core.aidge_core.Tensor"><span class="pre">aidge_core.aidge_core.Tensor</span></a></span></span><a class="headerlink" href="#aidge_core.Tensor.sqrt" title="Link to this definition">#</a></dt>
 <dd></dd></dl>
 
+<dl class="py method">
+<dt class="sig sig-object py" id="aidge_core.Tensor.stride">
+<span class="sig-name descname"><span class="pre">stride</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.Tensor" title="aidge_core.aidge_core.Tensor"><span class="pre">aidge_core.aidge_core.Tensor</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">idx</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">int</span></span></span><a class="headerlink" href="#aidge_core.Tensor.stride" title="Link to this definition">#</a></dt>
+<dd></dd></dl>
+
+<dl class="py method">
+<dt class="sig sig-object py" id="aidge_core.Tensor.strides">
+<span class="sig-name descname"><span class="pre">strides</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.Tensor" title="aidge_core.aidge_core.Tensor"><span class="pre">aidge_core.aidge_core.Tensor</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.Tensor.strides" title="Link to this definition">#</a></dt>
+<dd></dd></dl>
+
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.Tensor.undefined">
 <span class="sig-name descname"><span class="pre">undefined</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.Tensor" title="aidge_core.aidge_core.Tensor"><span class="pre">aidge_core.aidge_core.Tensor</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">bool</span></span></span><a class="headerlink" href="#aidge_core.Tensor.undefined" title="Link to this definition">#</a></dt>
@@ -660,6 +670,24 @@ C++</label><div class="sd-tab-content docutils">
 </dl>
 </dd></dl>
 
+<dl class="cpp function">
+<dt class="sig sig-object cpp" id="_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E">
+<span class="k"><span class="pre">template</span></span><span class="p"><span class="pre">&lt;</span></span><span class="k"><span class="pre">typename</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">T</span></span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SIZE_0</span></span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SIZE_1</span></span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SIZE_2</span></span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SIZE_3</span></span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">SIZE_4</span></span></span><span class="p"><span class="pre">&gt;</span></span><br /><span class="target" id="classAidge_1_1Tensor_1a6f6f7eb7c0804e09904adb9e8c038789"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">constexpr</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">Tensor</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">Array5D</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E" title="Aidge::Tensor::Tensor::T"><span class="n"><span class="pre">T</span></span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E" title="Aidge::Tensor::Tensor::SIZE_0"><span class="n"><span class="pre">SIZE_0</span></span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E" title="Aidge::Tensor::Tensor::SIZE_1"><span class="n"><span class="pre">SIZE_1</span></span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E" title="Aidge::Tensor::Tensor::SIZE_2"><span class="n"><span class="pre">SIZE_2</span></span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E" title="Aidge::Tensor::Tensor::SIZE_3"><span class="n"><span class="pre">SIZE_3</span></span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E" title="Aidge::Tensor::Tensor::SIZE_4"><span class="n"><span class="pre">SIZE_4</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">arr</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E" title="Link to this definition">#</a><br /></dt>
+<dd><p>Construct a new <a class="reference internal" href="#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> object from the 5-dimensions Array helper. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Template Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>T</strong> – datatype </p></li>
+<li><p><strong>SIZE_0</strong> – first array dimension. </p></li>
+<li><p><strong>SIZE_1</strong> – second array dimension. </p></li>
+<li><p><strong>SIZE_2</strong> – third array dimension. </p></li>
+<li><p><strong>SIZE_3</strong> – fourth array dimension. </p></li>
+<li><p><strong>SIZE_4</strong> – fifth array dimension. </p></li>
+</ul>
+</dd>
+</dl>
+</dd></dl>
+
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge6Tensor6TensorERK6Tensor">
 <span class="target" id="classAidge_1_1Tensor_1ac4bf024ec348340b67547a760521501f"></span><span class="sig-name descname"><span class="n"><span class="pre">Tensor</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4N5Aidge6Tensor6TensorERK6Tensor" title="Aidge::Tensor::Tensor"><span class="n"><span class="pre">Tensor</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">other</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge6Tensor6TensorERK6Tensor" title="Link to this definition">#</a><br /></dt>
@@ -2023,6 +2051,8 @@ C++</label><div class="sd-tab-content docutils">
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.Tensor.set_grad"><code class="docutils literal notranslate"><span class="pre">Tensor.set_grad()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.Tensor.size"><code class="docutils literal notranslate"><span class="pre">Tensor.size()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.Tensor.sqrt"><code class="docutils literal notranslate"><span class="pre">Tensor.sqrt()</span></code></a></li>
+<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.Tensor.stride"><code class="docutils literal notranslate"><span class="pre">Tensor.stride()</span></code></a></li>
+<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.Tensor.strides"><code class="docutils literal notranslate"><span class="pre">Tensor.strides()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.Tensor.undefined"><code class="docutils literal notranslate"><span class="pre">Tensor.undefined()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.Tensor.zeros"><code class="docutils literal notranslate"><span class="pre">Tensor.zeros()</span></code></a></li>
 </ul>
@@ -2036,6 +2066,7 @@ C++</label><div class="sd-tab-content docutils">
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4I0_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array2DI1T6SIZE_06SIZE_1E"><code class="docutils literal notranslate"><span class="pre">Tensor()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array3DI1T6SIZE_06SIZE_16SIZE_2E"><code class="docutils literal notranslate"><span class="pre">Tensor()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array4DI1T6SIZE_06SIZE_16SIZE_26SIZE_3E"><code class="docutils literal notranslate"><span class="pre">Tensor()</span></code></a></li>
+<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4I0_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tE_NSt6size_tEEN5Aidge6Tensor6TensorERR7Array5DI1T6SIZE_06SIZE_16SIZE_26SIZE_36SIZE_4E"><code class="docutils literal notranslate"><span class="pre">Tensor()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge6Tensor6TensorERK6Tensor"><code class="docutils literal notranslate"><span class="pre">Tensor()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge6Tensor6TensorERR6Tensor"><code class="docutils literal notranslate"><span class="pre">Tensor()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge6TensoraSERK6Tensor"><code class="docutils literal notranslate"><span class="pre">operator=()</span></code></a></li>
diff --git a/source/API/Core/export.html b/source/API/Core/export.html
index 047e2413d00d2217cf3288bc82a889c50cdd609a..f1ddabcafa7b02703d379fe141e8ccbbf8b58251 100644
--- a/source/API/Core/export.html
+++ b/source/API/Core/export.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Recipes" href="recipes.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/API/Core/graph.html b/source/API/Core/graph.html
index 5c84578aca705864b185f0a7aeadaded3550542d..a231fadc8730b5d3b59be883c35ed03050034639 100644
--- a/source/API/Core/graph.html
+++ b/source/API/Core/graph.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Data" href="data.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -1745,7 +1745,20 @@ Python</label><div class="sd-tab-content docutils">
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.clone">
 <span class="sig-name descname"><span class="pre">clone</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></span><a class="headerlink" href="#aidge_core.GraphView.clone" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Clone the current GraphView using a callback function for the Node cloning, allowing to specify how each
+Node should be cloned or replaced by another Node type, or removed (i.e. replaced by identity).
+When a Node is removed, the clone() method automatically finds the next valid parent in line, going backward in
+the graph and connects it if that makes sense without ambiguity (effectively treating the removed Node as an
+identity operation).</p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>Cloned GraphView</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.GraphView">GraphView</a></p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.compile">
@@ -1878,36 +1891,94 @@ dims were previously forwarded or not.</p>
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.get_node">
 <span class="sig-name descname"><span class="pre">get_node</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">node_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.GraphView.get_node" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Get the Node with the corresponding name if it is in the GraphView.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>node_name</strong> (<em>string</em>) – The name of the Node</p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>The Node of the GraphView with corresponding name</p>
+</dd>
+<dt class="field-odd">Return type<span class="colon">:</span></dt>
+<dd class="field-odd"><p><a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a></p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.get_nodes">
 <span class="sig-name descname"><span class="pre">get_nodes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">set</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.get_nodes" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Get the Nodes in the GraphView.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>List of the GraphView’s Nodes</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p>List[<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>]</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.get_ordered_inputs">
 <span class="sig-name descname"><span class="pre">get_ordered_inputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.get_ordered_inputs" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Get inputs of the current GraphView with their associated id.
+The rank of the nodes are their rank in the vector.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>The pairs Node, inputId of each input of the graphView</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p>List[(<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>, int)]</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.get_ordered_nodes">
 <span class="sig-name descname"><span class="pre">get_ordered_nodes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">reversed</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.get_ordered_nodes" title="Link to this definition">#</a></dt>
-<dd><p>Get ordered nodes for the graph view</p>
+<dd><p>Get a topological node order for an acyclic walk of the graph.
+Graph cycles are broken on operator back edges such that resolution on
+single level lattice can be done in a single pass as it is
+the case generally for static resolution of Tensor shapes/datatypes.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>reversed</strong> (<em>bool</em>) – if True, returns a topological order of the reversed graph</p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>the ordered list of nodes</p>
+</dd>
+<dt class="field-odd">Return type<span class="colon">:</span></dt>
+<dd class="field-odd"><p>List[<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>]</p>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.get_ordered_outputs">
 <span class="sig-name descname"><span class="pre">get_ordered_outputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.get_ordered_outputs" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Get outputs of the current GraphView with their associated id.
+The rank of the nodes are their rank in the vector.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>The pairs Node, outputId of each output of the graphView</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p>List[(<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>, int)]</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.get_output_nodes">
 <span class="sig-name descname"><span class="pre">get_output_nodes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">set</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.get_output_nodes" title="Link to this definition">#</a></dt>
 <dd><p>Get set of output Nodes.</p>
 <dl class="field-list simple">
-<dt class="field-odd">Return type<span class="colon">:</span></dt>
-<dd class="field-odd"><p>list[<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>]</p>
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>the input Nodes of the Graph</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p>list[<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>]</p>
 </dd>
 </dl>
 </dd></dl>
@@ -1915,27 +1986,105 @@ dims were previously forwarded or not.</p>
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.get_ranked_nodes">
 <span class="sig-name descname"><span class="pre">get_ranked_nodes</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><span class="pre">list</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.get_ranked_nodes" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Get the ranked list of nodes in the GraphView.
+Node ranking if performed the following:</p>
+<ul class="simple">
+<li><p>The root node is put in the ranked list first (rank 1);</p></li>
+<li><p>Then, its children (in order of outputs) are added in the ranked list;</p></li>
+<li><p>Then, its parents (in order of inputs) are added in the ranked list;</p></li>
+<li><p>The children and parents of the next node in the ranked list are then added to the list, and so on.</p></li>
+<li><p>Any remaining nodes have no path to the root node and are added in arbitrary order. In this case, the ranking is not guaranteed to be unique.</p></li>
+</ul>
+<p>If the ranking cannot be guaranteed to be unique, the second item indicates
+the rank from which unicity cannot be guaranteed.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>Pair with the list of ranked nodes and the size of the ranked sub-list where unicity is guaranteed.</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p>(<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>, int)</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.get_ranked_nodes_name">
 <span class="sig-name descname"><span class="pre">get_ranked_nodes_name</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">format</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">mark_non_unicity</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">dict</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">str</span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.get_ranked_nodes_name" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Get the nodes name according to the GraphView nodes ranking.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>format</strong> (<em>string</em>) – The formatting string to be used  in the output f-string.The usable positional arguments are the following: {0} node name, {1} node type, {2} rank, {3} type rank</p></li>
+<li><p><strong>markNonUnicity</strong> (<em>bool</em>) – If true, non unique ranking is prefixed with “?”</p></li>
+</ul>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>map(Node, string) A map with the corresponding names</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.in_view">
 <span class="sig-name descname"><span class="pre">in_view</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#aidge_core.GraphView.in_view" title="Link to this definition">#</a></dt>
 <dd><p>Overloaded function.</p>
-<ol class="arabic simple">
-<li><p>in_view(self: aidge_core.aidge_core.GraphView, arg0: aidge_core.aidge_core.Node) -&gt; bool</p></li>
-<li><p>in_view(self: aidge_core.aidge_core.GraphView, arg0: str) -&gt; bool</p></li>
+<ol class="arabic">
+<li><p>in_view(self: aidge_core.aidge_core.GraphView, arg0: aidge_core.aidge_core.Node) -&gt; bool</p>
+<blockquote>
+<div><p>Check that a node is in the current GraphView.</p>
+<dl class="field-list simple">
+<dt class="field-odd">param NodePtr<span class="colon">:</span></dt>
+<dd class="field-odd"><p>The Node that is checked</p>
+</dd>
+<dt class="field-even">type Node<span class="colon">:</span></dt>
+<dd class="field-even"><p>Node that is checked</p>
+</dd>
+<dt class="field-odd">return<span class="colon">:</span></dt>
+<dd class="field-odd"><p>True if the Node is in the GraphView, False otherwise</p>
+</dd>
+<dt class="field-even">rtype<span class="colon">:</span></dt>
+<dd class="field-even"><p>bool</p>
+</dd>
+</dl>
+</div></blockquote>
+</li>
+<li><p>in_view(self: aidge_core.aidge_core.GraphView, arg0: str) -&gt; bool</p>
+<blockquote>
+<div><p>Check that a node is in the current GraphView based on its name.</p>
+<dl class="field-list simple">
+<dt class="field-odd">param nodeName<span class="colon">:</span></dt>
+<dd class="field-odd"><p>The name of the Node that is checked</p>
+</dd>
+<dt class="field-even">type nodeName<span class="colon">:</span></dt>
+<dd class="field-even"><p>Node</p>
+</dd>
+<dt class="field-odd">return<span class="colon">:</span></dt>
+<dd class="field-odd"><p>True if the Node is in the GraphView, False otherwise</p>
+</dd>
+<dt class="field-even">rtype<span class="colon">:</span></dt>
+<dd class="field-even"><p>bool</p>
+</dd>
+</dl>
+</div></blockquote>
+</li>
 </ol>
 </dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.inputs">
 <span class="sig-name descname"><span class="pre">inputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.inputs" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>List outside input connections of the GraphView.
+The vector size is guaranteed to match the number of outside inputs of the GraphView.
+If there is no external connection to a given input, a pair of nullptr and gk_IODefaultIndex is returned.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>A list containing the pairs Node, input indexes.</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p>List[<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>, int]</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.insert_parent">
@@ -1945,12 +2094,31 @@ dims were previously forwarded or not.</p>
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.log_outputs">
 <span class="sig-name descname"><span class="pre">log_outputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">path</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.GraphView.log_outputs" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Logs the output of all nodes of the graph in a directory
+In the specified directory, it will create a subdirectory for each Node of the GraphView
+In that sub-directory, each output of the Node will be saved in a different .log file</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>path</strong> (<em>string</em>) – The path to the folder where we wish to stock the logs</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.outputs">
 <span class="sig-name descname"><span class="pre">outputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></span><a class="headerlink" href="#aidge_core.GraphView.outputs" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>List outside output connections of the GraphView.
+The vector size is guaranteed to match the number of outputs of the GraphView.
+If there is no connection to a given output, the corresponding sub-vector will be empty.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>A list containing the pairs Node, output indexes.</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p>List[<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a>, int]</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.replace">
@@ -1990,13 +2158,13 @@ dims were previously forwarded or not.</p>
 <dd class="field-odd"><p>Nodes actually connected in GraphViews.</p>
 </dd>
 <dt class="field-even">type old_nodes<span class="colon">:</span></dt>
-<dd class="field-even"><p>Node</p>
+<dd class="field-even"><p>List[Node]</p>
 </dd>
 <dt class="field-odd">param new_nodes<span class="colon">:</span></dt>
 <dd class="field-odd"><p>Nodes with inner connections already taken care of.</p>
 </dd>
 <dt class="field-even">type new_nodes<span class="colon">:</span></dt>
-<dd class="field-even"><p>Node</p>
+<dd class="field-even"><p>List[Node]</p>
 </dd>
 <dt class="field-odd">return<span class="colon">:</span></dt>
 <dd class="field-odd"><p>Whether any replacement has been made.</p>
@@ -2013,7 +2181,16 @@ dims were previously forwarded or not.</p>
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.root_node">
 <span class="sig-name descname"><span class="pre">root_node</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.GraphView.root_node" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Returns the rootNode of the GraphView</p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>The root Node of the GraphView</p>
+</dd>
+<dt class="field-even">Return type<span class="colon">:</span></dt>
+<dd class="field-even"><p><a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node">Node</a></p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.save">
@@ -2021,7 +2198,11 @@ dims were previously forwarded or not.</p>
 <dd><p>Save the GraphView as a Mermaid graph in a .md file at the specified location.</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>path</strong> (<em>str</em>) – save location</p>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>path</strong> (<em>str</em>) – save location</p></li>
+<li><p><strong>verbose</strong> (<em>bool</em>) – If true give more informations in the graph during the saving process</p></li>
+<li><p><strong>show_producers</strong> (<em>bool</em>) – if true, shows the producer Nodes as well</p></li>
+</ul>
 </dd>
 </dl>
 </dd></dl>
@@ -2029,17 +2210,38 @@ dims were previously forwarded or not.</p>
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.set_backend">
 <span class="sig-name descname"><span class="pre">set_backend</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">backend</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">device</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.GraphView.set_backend" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Set the same backend for each Operator of the GraphView object’s Nodes.*</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>backend</strong> (<em>string</em>) – Backen used, default is cpu</p></li>
+<li><p><strong>device</strong> (<em>int</em>) – Device to be set</p></li>
+</ul>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.set_dataformat">
 <span class="sig-name descname"><span class="pre">set_dataformat</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">dataformat</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">aidge_core.aidge_core.dformat</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.GraphView.set_dataformat" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Set the same data format for each Operator of the GraphView object’s Nodes.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>dataformat</strong> (<em>DataFormat</em>) – DataFormat to be set on the Node’s operators’</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.set_datatype">
 <span class="sig-name descname"><span class="pre">set_datatype</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">datatype</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">aidge_core.aidge_core.dtype</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.GraphView.set_datatype" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Set the same data type for each Operator of the GraphView object’s Nodes.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>datatype</strong> (<em>DataType</em>) – DataType to be set</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.set_name">
@@ -2049,17 +2251,39 @@ dims were previously forwarded or not.</p>
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.set_ordered_inputs">
 <span class="sig-name descname"><span class="pre">set_ordered_inputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">inputs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.GraphView.set_ordered_inputs" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Orders the inputs of the GraphView
+The inputs will be ordered in the same order as they come in the std::vector.
+Inputs missing from this vector will then be added as per their previous order.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>inputs</strong> (<em>List</em><em>[</em><em>(</em><a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node"><em>Node</em></a><em>, </em><em>int</em><em>)</em><em>]</em>) – set of inputs in the wanted order</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.set_ordered_outputs">
 <span class="sig-name descname"><span class="pre">set_ordered_outputs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">outputs</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">tuple</span><span class="p"><span class="pre">[</span></span><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.GraphView.set_ordered_outputs" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Orders the outputs of the GraphView
+The outputs will be ordered in the same order as they come in the std::vector.
+Outputs missing from this vector will then be added as per their previous order.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>outputs</strong> (<em>List</em><em>[</em><em>(</em><a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node"><em>Node</em></a><em>, </em><em>int</em><em>)</em><em>]</em>) – set of outputs in the wanted order</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="py method">
 <dt class="sig sig-object py" id="aidge_core.GraphView.set_root_node">
 <span class="sig-name descname"><span class="pre">set_root_node</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">self</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">node</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.GraphView.set_root_node" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Changes the rootNode of the GraphView</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>node</strong> (<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node"><em>Node</em></a>) – The Node of the GraphView that will become the new rootNode</p>
+</dd>
+</dl>
+</dd></dl>
 
 </dd></dl>
 
@@ -2076,30 +2300,65 @@ C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView9GraphViewERKNSt6stringE">
 <span class="target" id="classAidge_1_1GraphView_1a07fcc26090fc1fb4785a4c9332b2d08f"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">GraphView</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;&quot;</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView9GraphViewERKNSt6stringE" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Constructs a <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object with a given name. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>string</strong> – name : name given to the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a></p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphVieweqERK9GraphView">
 <span class="target" id="classAidge_1_1GraphView_1aadf38b2e8285de0d029fd7bf8690a2a2"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="k"><span class="pre">operator</span></span><span class="o"><span class="pre">==</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4N5Aidge9GraphViewE" title="Aidge::GraphView"><span class="n"><span class="pre">GraphView</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">gv</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphVieweqERK9GraphView" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Equality operator, tests if the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> and the gv <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> have the same Nodes. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>GraphView</strong> – gv: <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> that shall be compared to the current one </p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>bool True if both <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> have the same set of Nodes </p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphViewixERKNSt6stringE">
 <span class="target" id="classAidge_1_1GraphView_1a1b968a24d075fc48aa5c6c07de374561"></span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="sig-name descname"><span class="k"><span class="pre">operator</span></span><span class="o"><span class="pre">[]</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">nodeName</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphViewixERKNSt6stringE" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Allows to find a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> using the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>’s name. </p>
+<p>
+Returns nullptr if the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> isn’t found </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>string</strong> – nodeName: The name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> we are looking for </p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>NodePtr Pointer of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> that is found</p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphViewclEKNSt6vectorI9ConnectorEE">
 <span class="target" id="classAidge_1_1GraphView_1a00b260554ba1f4ab0037429b78866f97"></span><a class="reference internal" href="#_CPPv4N5Aidge9ConnectorE" title="Aidge::Connector"><span class="n"><span class="pre">Connector</span></span></a><span class="w"> </span><span class="sig-name descname"><span class="k"><span class="pre">operator</span></span><span class="o"><span class="pre">()</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5Aidge9ConnectorE" title="Aidge::Connector"><span class="n"><span class="pre">Connector</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">ctors</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphViewclEKNSt6vectorI9ConnectorEE" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Functional operator for user-friendly connection interface using an ordered set of Connectors. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>Connector</strong> – ctors: a <a class="reference internal" href="#classAidge_1_1Connector"><span class="std std-ref">Connector</span></a></p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p><a class="reference internal" href="#classAidge_1_1Connector"><span class="std std-ref">Connector</span></a></p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView4nameEv">
 <span class="target" id="classAidge_1_1GraphView_1a83890a33df37c965d92e7baf9ba0eb76"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">name</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="k"><span class="pre">noexcept</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView4nameEv" title="Link to this definition">#</a><br /></dt>
-<dd><p>Name of the node. </p>
+<dd><p>Gives the name of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Returns<span class="colon">:</span></dt>
-<dd class="field-odd"><p>std::string </p>
+<dd class="field-odd"><p>std::string the name of the graphView </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2107,14 +2366,14 @@ C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView7setNameERKNSt6stringE">
 <span class="target" id="classAidge_1_1GraphView_1a85fcf955887d5e2c85f6553f1de28c75"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">setName</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView7setNameERKNSt6stringE" title="Link to this definition">#</a><br /></dt>
-<dd><p>Set the node name. </p>
+<dd><p>Set the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> name. </p>
 <div class="admonition warning">
 <p class="admonition-title">Warning</p>
-<p>Undefined behavior when several Nodes have the same name. </p>
+<p>Undefined behaviour when several GraphViews have the same name. </p>
 </div>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>name</strong> – New name for the node. </p>
+<dd class="field-odd"><p><strong>name</strong> – New name for the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2131,7 +2390,11 @@ C++</label><div class="sd-tab-content docutils">
 <dd><p>Save the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> as a Mermaid graph in a .md file at the specified location. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>path</strong> – </p>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>string</strong> – path: Path where the file should be put </p></li>
+<li><p><strong>bool</strong> – verbose: If true give more informations in the saved graph </p></li>
+<li><p><strong>bool</strong> – showProducers: if true, shows the producers as well </p></li>
+</ul>
 </dd>
 </dl>
 </dd></dl>
@@ -2139,7 +2402,14 @@ C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView10logOutputsERKNSt6stringE">
 <span class="target" id="classAidge_1_1GraphView_1a37779b904f864b7e7acc38569180ccc6"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">logOutputs</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dirName</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView10logOutputsERKNSt6stringE" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Logs the output of all nodes of the graph in a directory. </p>
+<p>in the specified directory, it will create a subdirectory for each <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> In that sub-directory, each output of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> will be saved in a different .log file </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>string</strong> – dirName: Path of the directory where the logs shall be stocked </p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView6inViewERK7NodePtr">
@@ -2147,10 +2417,10 @@ C++</label><div class="sd-tab-content docutils">
 <dd><p>Check that a node is in the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>nodePtr</strong> – <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to check </p>
+<dd class="field-odd"><p><strong>NodePtr</strong> – nodePtr: <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to check </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
-<dd class="field-even"><p>bool True is nodePtr belongs to the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
+<dd class="field-even"><p>bool True if nodePtr belongs to the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2161,7 +2431,7 @@ C++</label><div class="sd-tab-content docutils">
 <dd><p>Check that a node is in the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>nodeName</strong> – Name of the node to test the existence of. </p>
+<dd class="field-odd"><p><strong>string</strong> – nodeName: Name of the node to test the existence of. </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p>true if the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> contains a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> with the name <code class="docutils literal notranslate"><span class="pre">nodeName</span></code>. </p>
@@ -2172,12 +2442,24 @@ C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView8rootNodeEv">
 <span class="target" id="classAidge_1_1GraphView_1a0ce50342c846f1ad999e9b624816fe89"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">rootNode</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="k"><span class="pre">noexcept</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView8rootNodeEv" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Returns the rootNode of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> </p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>NodePtr of the rootNode </p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView11setRootNodeE7NodePtr">
 <span class="target" id="classAidge_1_1GraphView_1a813df0c4409d8de25a21dad37c3124bc"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">setRootNode</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">node</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView11setRootNodeE7NodePtr" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Changes the rootNode of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>NodePtr</strong> – node: pointer of the new rootNode </p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView10inputNodesE13InputCategory">
@@ -2195,12 +2477,28 @@ C++</label><div class="sd-tab-content docutils">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView11isInputNodeERK7NodePtr">
 <span class="target" id="classAidge_1_1GraphView_1a856b0e37eca14c6591ac47eb564b8ebd"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">isInputNode</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">nodePtr</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView11isInputNodeERK7NodePtr" title="Link to this definition">#</a><br /></dt>
 <dd><p>Assess if the given <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> is an input <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>NodePtr</strong> – nodePtr: The tested <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a></p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>bool True if the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> is an input of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>, False otherwise </p>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView12isOutputNodeERK7NodePtr">
 <span class="target" id="classAidge_1_1GraphView_1a8f6ffb413c4edf432a94524c1de07249"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">isOutputNode</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">nodePtr</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView12isOutputNodeERK7NodePtr" title="Link to this definition">#</a><br /></dt>
 <dd><p>Assess if the given <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> is an output <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>NodePtr</strong> – nodePtr: The tested <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a></p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>bool True if the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> is an output of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>, False otherwise </p>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="cpp function">
@@ -2218,7 +2516,8 @@ C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView17setOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE">
 <span class="target" id="classAidge_1_1GraphView_1acdf388514aeb6d93fdb543c0bc383f0a"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">setOrderedOutputs</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">pair</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">IOIndex_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">outputs</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView17setOrderedOutputsERKNSt6vectorINSt4pairI7NodePtr9IOIndex_tEEEE" title="Link to this definition">#</a><br /></dt>
-<dd><p>Specify the ordered list of outputs of the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. Any node inside the graph can be a graph output, regardless its output is already connected or not. Duplicate outputs are allowed. Not all graph outputs need to be specified: missing outputs will be automatically appened at the end of the list. </p>
+<dd><p>Specify the ordered list of outputs of the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
+<p>Any node inside the graph can be a graph output, regardless its output is already connected or not. Duplicate outputs are allowed. Not all graph outputs need to be specified: missing outputs will be automatically appened at the end of the list.</p>
 <p>Dummy outputs (nullptr) are allowed, but this will only be reflected in mOutputNodes. All other functions (nbOutputs(), <a class="reference internal" href="#classAidge_1_1GraphView_1af964fca07cc40493e2fac90866919c6e"><span class="std std-ref">outputs()</span></a>) will not take it into account.</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
@@ -2248,7 +2547,7 @@ C++</label><div class="sd-tab-content docutils">
 <dd><p>Get a topological node order for an acyclic walk of the graph Graph cycles are broken on operator back edges such that resolution on single level lattice can be done in a single pass as it is the case generally for static resolution of <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> shapes/datatypes. When reversed is true, gets a topological order on the reversed graph which is equivalent to a post-dfs order of the graph. The returned order is deterministic given the graph node set and the graph ordered output nodes. The output nodes connectivity must cover all nodes of the graph, otherwise a runtime exception is thrown. The returned order is biased toward left-to-right child order both for topological and post-dfs order. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>reversed</strong> – returns a topological order of the reversed graph </p>
+<dd class="field-odd"><p><strong>bool</strong> – reversed: returns a topological order of the reversed graph </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p>the ordered list of nodes </p>
@@ -2295,7 +2594,7 @@ C++</label><div class="sd-tab-content docutils">
 <dd><p>List all dataInput connections (within and outside) of the specified <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> node named “name”. Data inputs exclude inputs expecting parameters (weights or bias). </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>name</strong> – Name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
+<dd class="field-odd"><p><strong>string</strong> – name: Name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p>std::vector&lt;std::pair&lt;NodePtr, IOIndex_t&gt;&gt; </p>
@@ -2319,8 +2618,11 @@ C++</label><div class="sd-tab-content docutils">
 <span class="target" id="classAidge_1_1GraphView_1ac9ee704000ce6de4b86a49360d9afef6"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">pair</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">IOIndex_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">inputs</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView6inputsERKNSt6stringE" title="Link to this definition">#</a><br /></dt>
 <dd><p>List all input connections (within and outside) of the specified <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> node named “name”. </p>
 <dl class="field-list simple">
-<dt class="field-odd">Returns<span class="colon">:</span></dt>
-<dd class="field-odd"><p>std::vector&lt;std::pair&lt;NodePtr, IOIndex_t&gt;&gt; </p>
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>string</strong> – name: name of the graphView’s node </p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>std::vector&lt;std::pair&lt;NodePtr, IOIndex_t&gt;&gt; </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2328,7 +2630,8 @@ C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView7outputsEv">
 <span class="target" id="classAidge_1_1GraphView_1af964fca07cc40493e2fac90866919c6e"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">pair</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">IOIndex_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">outputs</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView7outputsEv" title="Link to this definition">#</a><br /></dt>
-<dd><p>List outside output connections of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. The vector size is guaranteed to match the number of outputs of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. If there is no connection to a given output, the corresponding sub-vector will be empty. </p>
+<dd><p>List outside output connections of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
+<p>The vector size is guaranteed to match the number of outputs of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. If there is no connection to a given output, the corresponding sub-vector will be empty. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Returns<span class="colon">:</span></dt>
 <dd class="field-odd"><p>std::vector&lt;std::pair&lt;NodePtr, IOIndex_t&gt;&gt; </p>
@@ -2342,7 +2645,7 @@ C++</label><div class="sd-tab-content docutils">
 <dd><p>List all output connections (within and outside) of the specified <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> node named “name”. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>nodeName</strong> – Name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> of which to show the output. </p>
+<dd class="field-odd"><p><strong>string</strong> – nodeName: Name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> of which to show the output. </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p>std::vector&lt;std::vector&lt;std::pair&lt;NodePtr, IOIndex_t&gt;&gt;&gt; </p>
@@ -2355,6 +2658,16 @@ C++</label><div class="sd-tab-content docutils">
 <span class="target" id="classAidge_1_1GraphView_1af7f9cdb5a652317eb545ba5c7a0116c0"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">compile</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">backend</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;cpu&quot;</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">DataType</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">datatype</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">DataType</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">Float32</span></span>, <span class="n"><span class="pre">DeviceIdx_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">device</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">dims</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="p"><span class="pre">{</span></span><span class="p"><span class="pre">}</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView7compileERKNSt6stringEKN5Aidge8DataTypeE11DeviceIdx_tKNSt6vectorINSt6vectorI9DimSize_tEEEE" title="Link to this definition">#</a><br /></dt>
 <dd><p>Assert Datatype, Backend, data format and dimensions along the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> are coherent. If not, apply the required transformations. </p>
 <p>Sets the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> ready for computation in four steps: 1 - Assert input Tensors’ datatype is compatible with each <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a>’s datatype. If not, a conversion <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a> is inserted. 2 - Assert input Tensors’ backend is compatible with each <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a>’s backend. If not, add a Transmitter <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a>. 3 - Assert data format (NCHW, NHWC, …) of each <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a>’s input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> is compatible with the selected kernel. If not, add a Transpose <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a>. 4 - Propagate <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> dimensions through the consecutive Operators(also named forward dims). </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>string</strong> – backend: Backend used, default is cpu </p></li>
+<li><p><strong>Datatype</strong> – datatype: datatype used, default is float32 </p></li>
+<li><p><strong>DeviceIdx_t</strong> – device: Device to be set </p></li>
+<li><p><strong>std::vector&lt;std::vector&lt;DimSize_t&gt;&gt;</strong> – dims: vector of vector of dimensions of the inputs of the graphView </p></li>
+</ul>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="cpp function">
@@ -2452,24 +2765,43 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t">
 <span class="target" id="classAidge_1_1GraphView_1aa4f080212a494e4ed2d66acd883292fd"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">setBackend</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">backend</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">DeviceIdx_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">device</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">0</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView10setBackendERKNSt6stringEK11DeviceIdx_t" title="Link to this definition">#</a><br /></dt>
 <dd><p>Set the same backend for each <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a> of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object’s Nodes. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>string</strong> – backend: Backend name to be set </p></li>
+<li><p><strong>DeviceIdx_t</strong> – device: Backend device to be set </p></li>
+</ul>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView11setDataTypeERK8DataType">
 <span class="target" id="classAidge_1_1GraphView_1ac9bea758930833be21bfc43fadd14404"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">setDataType</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">DataType</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">datatype</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView11setDataTypeERK8DataType" title="Link to this definition">#</a><br /></dt>
 <dd><p>Set the same data type for each <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a> of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object’s Nodes. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>DataType</strong> – datatype: DataType to be set </p>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView13setDataFormatERK10DataFormat">
 <span class="target" id="classAidge_1_1GraphView_1a44ec671056eb3eee967fa5042dd45326"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">setDataFormat</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">DataFormat</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dataformat</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView13setDataFormatERK10DataFormat" title="Link to this definition">#</a><br /></dt>
 <dd><p>Set the same data format for each <a class="reference internal" href="operator.html#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a> of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object’s Nodes. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>DataFormat</strong> – dataformat: DataFormat to be set </p>
+</dd>
+</dl>
 </dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView10getParentsEv">
 <span class="target" id="classAidge_1_1GraphView_1ac85c15beba42e77c0949279f0e955658"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">set</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getParents</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView10getParentsEv" title="Link to this definition">#</a><br /></dt>
-<dd><p>Get the parents Nodes of inputNodes. </p>
+<dd><p>Get the parents Nodes of inputNodes of the graph. </p>
+<p>The parents are all put in a single set without ordering </p>
 <dl class="field-list simple">
 <dt class="field-odd">Returns<span class="colon">:</span></dt>
 <dd class="field-odd"><p>std::set&lt;NodePtr&gt; </p>
@@ -2483,7 +2815,7 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dd><p>Get parents Nodes of the specified <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>nodeName</strong> – Name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
+<dd class="field-odd"><p><strong>string</strong> – nodeName: Name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p>std::vector&lt;NodePtr&gt; </p>
@@ -2494,12 +2826,20 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView17getOrderedParentsEv">
 <span class="target" id="classAidge_1_1GraphView_1ac71dd872ad2009b2594a621732619778"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getOrderedParents</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView17getOrderedParentsEv" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Get the parents Nodes of inputNodes of the graph. </p>
+<p>The parents are ordered in vectors, each vector containing the parents of an inputNode </p>
+<dl class="field-list simple">
+<dt class="field-odd">Returns<span class="colon">:</span></dt>
+<dd class="field-odd"><p>std::set&lt;NodePtr&gt; </p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView11getChildrenEv">
 <span class="target" id="classAidge_1_1GraphView_1a5b83e9992a08df4b94a8ee172c714f08"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">set</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getChildren</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView11getChildrenEv" title="Link to this definition">#</a><br /></dt>
 <dd><p>Get the children Nodes of outputNodes. </p>
+<p>The children are all put in a single set without ordering </p>
 <dl class="field-list simple">
 <dt class="field-odd">Returns<span class="colon">:</span></dt>
 <dd class="field-odd"><p>std::set&lt;NodePtr&gt; </p>
@@ -2511,9 +2851,10 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView11getChildrenEKNSt6stringE">
 <span class="target" id="classAidge_1_1GraphView_1a356582fa293a62b9b3303fbf62fddb6a"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getChildren</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">nodeName</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView11getChildrenEKNSt6stringE" title="Link to this definition">#</a><br /></dt>
 <dd><p>Get children Nodes of the specified <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
+<p>the children will be ordered in a vector of vector of <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>, each sub-vector containing the children from one of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>’s output </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>nodeName</strong> – Name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
+<dd class="field-odd"><p><strong>string</strong> – nodeName: Name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p>std::vector&lt;std::vector&lt;NodePtr&gt;&gt; </p>
@@ -2524,7 +2865,17 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView11getChildrenEK7NodePtr">
 <span class="target" id="classAidge_1_1GraphView_1affdf9b5ac7752ed61f81fa9aadcd97b8"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">set</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getChildren</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">otherNode</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView11getChildrenEK7NodePtr" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>Get the Nodes pointed to by the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object. </p>
+<p>Get children Nodes of the specified <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>NodePtr</strong> – otherNode: The <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a></p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>std::vector&lt;std::vector&lt;NodePtr&gt;&gt; </p>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView8getNodesEv">
@@ -2540,10 +2891,10 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView7getNodeERKNSt6stringE">
 <span class="target" id="classAidge_1_1GraphView_1a8786a6a1e2f834d961704140b70380c0"></span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getNode</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">nodeName</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView7getNodeERKNSt6stringE" title="Link to this definition">#</a><br /></dt>
-<dd><p>Get the operator with the corresponding name if it is in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
+<dd><p>Get the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> with the corresponding name if it is in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>nodeName</strong> – Name of the node. </p>
+<dd class="field-odd"><p><strong>string</strong> – nodeName: Name of the node. </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p>NodePtr returns a nullptr if the one asked for was not found. </p>
@@ -2556,9 +2907,9 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <span class="target" id="classAidge_1_1GraphView_1aba47d8a1d96196666983845c1ec208aa"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">pair</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">size_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getRankedNodes</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView14getRankedNodesEv" title="Link to this definition">#</a><br /></dt>
 <dd><p>Get the ranked list of nodes in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> ranking if performed the following:<ul class="simple">
 <li><p>The root node is put in the ranked list first (rank 1);</p></li>
-<li><p>Then, its childs (in order of outputs) are added in the ranked list;</p></li>
+<li><p>Then, its children (in order of outputs) are added in the ranked list;</p></li>
 <li><p>Then, its parents (in order of inputs) are added in the ranked list;</p></li>
-<li><p>The childs and parents of the next node in the ranked list are then added to the list, and so on.</p></li>
+<li><p>The children and parents of the next node in the ranked list are then added to the list, and so on.</p></li>
 <li><p>Any remaining nodes have no path to the root node and are added in arbitrary order. In this case, the ranking is not guaranteed to be unique.</p></li>
 </ul>
 </p>
@@ -2573,12 +2924,14 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb">
 <span class="target" id="classAidge_1_1GraphView_1ac2b93feaa89046e2712d9b8bc4ab0bd5"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">map</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getRankedNodesName</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">format</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">markNonUnicity</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span><span class="sig-paren">)</span><span class="w"> </span><span class="k"><span class="pre">const</span></span><a class="headerlink" href="#_CPPv4NK5Aidge9GraphView18getRankedNodesNameERKNSt6stringEb" title="Link to this definition">#</a><br /></dt>
-<dd><p>Get the nodes name according to the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> nodes ranking. </p>
+<dd><p>Get the nodes name according to the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a><p>nodes ranking.</p>
+<p>The usable positional arguments are the following: {0} node name, {1} node type, {2} rank, {3} type rankf</p>
+</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>format</strong> – The formatting string to be used with fmt::format(). The usable positional arguments are the following: {0} node name, {1} node type, {2} rank, {3} type rank </p></li>
-<li><p><strong>markNonUnicity</strong> – If true, non unique ranking is prefixed with “?” </p></li>
+<li><p><strong>string</strong> – format: The formatting string to be used with fmt::format().</p></li>
+<li><p><strong>bool</strong> – markNonUnicity: If true, non unique ranking is prefixed with “?” </p></li>
 </ul>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
@@ -2594,8 +2947,8 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>nodePtr</strong> – <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to remove </p></li>
-<li><p><strong>includeLearnableParam</strong> – Whether learnable parameters should also be removed. Default true. </p></li>
+<li><p><strong>NodePrt</strong> – nodePtr: <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to remove </p></li>
+<li><p><strong>bool</strong> – includeLearnableParam: Whether learnable parameters should also be removed. Default true. learnable params are removed only if they aren’t used by other Nodes </p></li>
 </ul>
 </dd>
 </dl>
@@ -2609,12 +2962,13 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView3addE7NodePtrb">
 <span class="target" id="classAidge_1_1GraphView_1a70606eccbaea721ed700501e8930175f"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">add</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">otherNode</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">includeLearnableParam</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView3addE7NodePtrb" title="Link to this definition">#</a><br /></dt>
-<dd><p>Include a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object. </p>
+<dd><p>Include a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>’s set of Nodes. If the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> is named, it is added in the registery as well. </p>
+<p>If the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> has no root <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> (most likely this <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> is empty) the added <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> becomes the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>’s root <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>other_Nde</strong> – <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to add. </p></li>
-<li><p><strong>includeLearnableParam</strong> – Include non-data inputs, like weights and biases in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> automatically. Default: true. </p></li>
+<li><p><strong>NodePtr</strong> – otherNode: <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to add. </p></li>
+<li><p><strong>bool</strong> – includeLearnableParam: Include non-data inputs, like weights and biases in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> automatically. Default: true. </p></li>
 </ul>
 </dd>
 </dl>
@@ -2627,8 +2981,8 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>otherNodes</strong> – </p></li>
-<li><p><strong>includeLearnableParam</strong> – </p></li>
+<li><p><strong>std::set&lt;NodePtr&gt;</strong> – otherNodes: Nodes to add to the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a></p></li>
+<li><p><strong>bool</strong> – includeLearnableParam: Include non-data inputs, like weights and biases in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> automatically. Default: true. </p></li>
 </ul>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
@@ -2640,12 +2994,12 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb">
 <span class="target" id="classAidge_1_1GraphView_1a493836f50224d2bf3fb3c93420bb8c3c"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">add</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">pair</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">set</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">NodePtr</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">otherNodes</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">includeLearnableParam</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView3addENSt4pairI7NodePtrNSt3setI7NodePtrEEEEb" title="Link to this definition">#</a><br /></dt>
-<dd><p>Include a set of Nodes to the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object. The first element of the otherNodes pair is the start node and the second is the remaining nodes to add. </p>
+<dd><p>Include a set of Nodes to the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object. if the graphView has no rootNode, the first element of the otherNodes pair is the new RootNode of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> and the second is the remaining nodes to add. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>otherNodes</strong> – </p></li>
-<li><p><strong>includeLearnableParam</strong> – </p></li>
+<li><p><strong>std::pair&lt;NodePtr, std::set&lt;NodePtr&gt;&gt;</strong> – otherNodes: </p></li>
+<li><p><strong>bool</strong> – includeLearnableParam: Include non-data inputs, like weights and biases in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> automatically. Default: true. </p></li>
 </ul>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
@@ -2658,9 +3012,10 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb">
 <span class="target" id="classAidge_1_1GraphView_1a66dfa4dd368d7431b2ef3c026a5b5a52"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">add</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5Aidge9GraphViewE" title="Aidge::GraphView"><span class="n"><span class="pre">GraphView</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">otherGraph</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">includeLearnableParam</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView3addENSt10shared_ptrI9GraphViewEEb" title="Link to this definition">#</a><br /></dt>
 <dd><p>Include every <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> inside another <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> to the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. </p>
+<p>If the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> has no RootNode it takes the RootNode of the new <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>other_graph</strong> – <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> containing the Nodes to include. </p>
+<dd class="field-odd"><p><strong>std::shared_ptr&lt;GraphView&gt;</strong> – other_graph: <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> containing the Nodes to include. </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p>true if graph ordering is unique (meaning inputs/outputs order is well defined). </p>
@@ -2671,14 +3026,14 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t">
 <span class="target" id="classAidge_1_1GraphView_1a2e06f9ede58bf80b6dab2732d14ed2b3"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">addChild</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">toOtherNode</span></span>, <span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">fromOutNode</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">nullptr</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">IOIndex_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">fromTensor</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">IOIndex_t</span></span><span class="p"><span class="pre">(</span></span><span class="m"><span class="pre">0</span></span><span class="p"><span class="pre">)</span></span>, <span class="n"><span class="pre">IOIndex_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">toTensor</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">gk_IODefaultIndex</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView8addChildE7NodePtr7NodePtrK9IOIndex_t9IOIndex_t" title="Link to this definition">#</a><br /></dt>
-<dd><p>Include a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> in the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> and link it to another already contained <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
+<dd><p>Include a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> in the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> and link it to another already contained <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> as its child. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>toOtherNode</strong> – Pointer to the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to add. </p></li>
-<li><p><strong>fromOutNode</strong> – Pointer to the already included <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> will be linked to (it will become a parent of the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>). If the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> only has one output <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>, then default to this <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
-<li><p><strong>fromTensor</strong> – Output <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID of the already included <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. Default to 0. </p></li>
-<li><p><strong>toTensor</strong> – Input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID of the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. Default to gk_IODefaultIndex, meaning first available data input for the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
+<li><p><strong>NodePtr</strong> – toOtherNode: Pointer to the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to add. </p></li>
+<li><p><strong>NodePtr</strong> – fromOutNode: Pointer to the already included <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> will be linked to (it will become a parent of the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>). If the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> only has one output <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>, then default to this <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
+<li><p><strong>IOIndex_t</strong> – fromTensor: Ouput <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID of the already included <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. Default to 0. </p></li>
+<li><p><strong>IOIndex_t</strong> – toTensor: Input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID of the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. Default to gk_IODefaultIndex, meaning first available data input for the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
 </ul>
 </dd>
 </dl>
@@ -2687,14 +3042,14 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t">
 <span class="target" id="classAidge_1_1GraphView_1a598a806fe75d3d6422a0331c8a420c8a"></span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">addChild</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">toOtherNode</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">fromOutNodeName</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">IOIndex_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">fromTensor</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">IOIndex_t</span></span><span class="p"><span class="pre">(</span></span><span class="m"><span class="pre">0</span></span><span class="p"><span class="pre">)</span></span>, <span class="n"><span class="pre">IOIndex_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">toTensor</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">gk_IODefaultIndex</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView8addChildE7NodePtrRKNSt6stringEK9IOIndex_t9IOIndex_t" title="Link to this definition">#</a><br /></dt>
-<dd><p>Include a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> in the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> and link it to another already contained <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
+<dd><p>Include a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> in the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> and link it to another already contained <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> as its child. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>toOtherNode</strong> – Pointer to the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to add. </p></li>
-<li><p><strong>fromOutNodeName</strong> – Name of the already included <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> will be linked to (it will become a parent of the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>). As a name is optional, ensure such <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> is in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> or it will send back an error message. </p></li>
-<li><p><strong>fromTensor</strong> – Output <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID of the already included <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. Default to 0. </p></li>
-<li><p><strong>toTensor</strong> – Input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID of the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. Default to gk_IODefaultIndex, meaning first available data input for the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
+<li><p><strong>NodePtr</strong> – toOtherNode: Pointer to the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to add. </p></li>
+<li><p><strong>string</strong> – fromOutNodeName: Name of the already included <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> will be linked to (it will become a parent of the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>). As a name is optional, ensure such <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> is in the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> or it will send back an error message. </p></li>
+<li><p><strong>IOIndex_t</strong> – fromTensor: Ouput <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID of the already included <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. Default to 0. </p></li>
+<li><p><strong>IOIndex_t</strong> – toTensor: Input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID of the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. Default to gk_IODefaultIndex, meaning first available data input for the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
 </ul>
 </dd>
 </dl>
@@ -2703,7 +3058,17 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE">
 <span class="target" id="classAidge_1_1GraphView_1ac68bb7e5fff90b99ce3faa8624ae14ae"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">updateNodeName</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">node</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">newName</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView14updateNodeNameERKNSt10shared_ptrI4NodeEERKNSt6stringE" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p>(from my comprehension) This function is made only to be used in <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>’s setName. This method update the registry with the new <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>’s Name </p>
+<p>todo only updates registery with pair (newName, node) but does not ensure node’s name is indeed newName in its args </p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>std::shared_ptr&lt;Node&gt;&amp;</strong> – node: The <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> that is updated </p></li>
+<li><p><strong>string</strong> – newName: The new name of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> that shall soon be updated </p></li>
+</ul>
+</dd>
+</dl>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView8addChildENSt10shared_ptrI9GraphViewEENSt4pairI7NodePtr9IOIndex_tEENSt4pairI7NodePtr9IOIndex_tEE">
@@ -2712,9 +3077,9 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>toOtherView</strong> – Pointer to the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> whose content should be added. </p></li>
-<li><p><strong>fromOutNode</strong> – Pair of pointer to <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> and <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID for specifying the connection. If the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> including the other one has only one output <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>, then it defaults to the first output <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> of this <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
-<li><p><strong>toNode</strong> – Pair of pointer to <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> and <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID for specifying the connection. If the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> whose content is included has only one input <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>, then it defaults to the first available data input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> of this <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
+<li><p><strong>std::shared_ptr&lt;GraphView&gt;</strong> – toOtherView: Pointer to the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> whose content should be added. </p></li>
+<li><p><strong>std::pair&lt;NodePtr, IOIndex_t&gt;</strong> – fromOutNode: Pair of pointer to <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> and <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID for specifying the connection. If the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> including the other one has only one output <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>, then it defaults to the first output <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> of this <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
+<li><p><strong>std::pair&lt;NodePtr, IOIndex_t&gt;</strong> – toNode: Pair of pointer to <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> and <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> ID for specifying the connection. If the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> whose content is included has only one input <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>, then it defaults to the first available data input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> of this <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
 </ul>
 </dd>
 </dl>
@@ -2724,18 +3089,19 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView4swapER4NodeR4Node">
 <span class="target" id="classAidge_1_1GraphView_1a0ae992d8f4a4b7aa7db8c2c1a84711d1"></span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">swap</span></span></span><span class="sig-paren">(</span><a class="reference internal" href="#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">node</span></span>, <a class="reference internal" href="#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">otherNode</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView4swapER4NodeR4Node" title="Link to this definition">#</a><br /></dt>
 <dd><p>Swap two <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> instances if possible. </p>
+<div class="admonition warning">
+<p class="admonition-title">Warning</p>
+<p>not implemented </p>
+</div>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>node</strong> – </p></li>
-<li><p><strong>otherNode</strong> – </p></li>
+<li><p><strong>Node</strong> – node: The <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to be swapped </p></li>
+<li><p><strong>Node</strong> – otherNode: the other <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> to be swapped with </p></li>
 </ul>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
-<dd class="field-even"><p>true </p>
-</dd>
-<dt class="field-odd">Returns<span class="colon">:</span></dt>
-<dd class="field-odd"><p>false </p>
+<dd class="field-even"><p>bool: False as not implemented </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2743,20 +3109,24 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE">
 <span class="target" id="classAidge_1_1GraphView_1ab32ee94ec761d51c0261cb88361db3e8"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">link</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name1_inID</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name2_outID</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView4linkERKNSt6stringERKNSt6stringE" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><div class="admonition warning">
+<p class="admonition-title">Warning</p>
+<p>not implemented </p>
+</div>
+</dd></dl>
 
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t">
 <span class="target" id="classAidge_1_1GraphView_1af4f0439c7409fb432617610fd03624f8"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">insertParent</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">childNode</span></span>, <span class="n"><span class="pre">NodePtr</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">newParentNode</span></span>, <span class="n"><span class="pre">IOIndex_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">childInputTensorIdx</span></span>, <span class="n"><span class="pre">IOIndex_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">newParentInputTensorIdx</span></span>, <span class="n"><span class="pre">IOIndex_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">newParentOutputTensorIdx</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView12insertParentE7NodePtr7NodePtr9IOIndex_t9IOIndex_t9IOIndex_t" title="Link to this definition">#</a><br /></dt>
-<dd><p>Insert a node (newParentNode) as a parent of the passed node (childNode). </p>
+<dd><p>Insert a node (newParentNode) as a parent of the passed node (childNode) and as a child of the current parent of the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>childNode</strong> – <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> that gets a new parent. </p></li>
-<li><p><strong>newParentNode</strong> – Inserted <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
-<li><p><strong>childInputTensorIdx</strong> – Index of the input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> for the childNode linked to the inserted <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> output. </p></li>
-<li><p><strong>newParentInputTensorIdx</strong> – Index of the input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> for the newParentNode linked to the former parent of childNode. </p></li>
-<li><p><strong>newParentOutputTensorIdx</strong> – Index of the output <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> for the newParentNode linked to the childNode’s input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a>. </p></li>
+<li><p><strong>NodePtr</strong> – childNode: <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> that gets a new parent. </p></li>
+<li><p><strong>NodePtr</strong> – newParentNode: Inserted <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p></li>
+<li><p><strong>IOIndex_t</strong> – childInputTensorIdx: Index of the input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> for the childNode linked to the inserted <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> output. </p></li>
+<li><p><strong>IOIndex_t</strong> – newParentInputTensorIdx: Index of the input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> for the newParentNode linked to the former parent of childNode. </p></li>
+<li><p><strong>IOIndex_t</strong> – newParentOutputTensorIdx: Index of the output <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> for the newParentNode linked to the childNode’s input <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a>. </p></li>
 </ul>
 </dd>
 </dl>
@@ -2768,7 +3138,7 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dd><p>Clone the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> with shared Operators. It is a new <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>, with cloned Nodes, but the new Nodes refer to the same Operators as the original ones. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Returns<span class="colon">:</span></dt>
-<dd class="field-odd"><p>std::shared_ptr&lt;GraphView&gt; </p>
+<dd class="field-odd"><p>std::shared_ptr&lt;GraphView&gt; The cloned graphView </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2779,7 +3149,7 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dd><p>Clone the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> with shared Producers. All the other Operators are copied. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Returns<span class="colon">:</span></dt>
-<dd class="field-odd"><p>std::shared_ptr&lt;GraphView&gt; </p>
+<dd class="field-odd"><p>std::shared_ptr&lt;GraphView&gt; The cloned graphView </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2790,7 +3160,7 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dd><p>Clone the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a>. Everything is cloned: Nodes and Operators. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Returns<span class="colon">:</span></dt>
-<dd class="field-odd"><p>std::shared_ptr&lt;GraphView&gt; </p>
+<dd class="field-odd"><p>std::shared_ptr&lt;GraphView&gt; The cloned graphView </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2801,10 +3171,10 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dd><p>Clone the current <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> using a callback function for the <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> cloning, allowing to specify how each <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> should be cloned or replaced by another <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> type, or removed (i.e. replaced by identity). When a <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> is removed, the <a class="reference internal" href="#classAidge_1_1GraphView_1ac5f5bb581a0550e65678fe71d5668dee"><span class="std std-ref">clone()</span></a> method automatically finds the next valid parent in line, going backward in the graph and connects it if that makes sense without ambiguity (effectively treating the removed <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a> as an identity operation). </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>cloneNode</strong> – Callback function to clone a node </p>
+<dd class="field-odd"><p><strong>cloneNode</strong> – Callback function to clone a node (see clone functions in <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>) </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
-<dd class="field-even"><p>std::shared_ptr&lt;GraphView&gt; </p>
+<dd class="field-even"><p>std::shared_ptr&lt;GraphView&gt; The cloned graphView </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2815,7 +3185,7 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dd><p>Get the sum of the number of free dataInput connection for all inputNodes of the <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> object. Data inputs exclude inputs expecting parameters (weights or bias). </p>
 <dl class="field-list simple">
 <dt class="field-odd">Returns<span class="colon">:</span></dt>
-<dd class="field-odd"><p>IOIndex_t </p>
+<dd class="field-odd"><p>IOIndex_t: number of free data inputs </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2834,21 +3204,18 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <li><p>same number of input/output connections in oldNodes, parents and children are linked according to these connections IDs</p></li>
 <li><p>different number of input/output connections in oldNodes =&gt; return false Case 4: newNodes set has no input and one output, oldNodes has any input and one output</p></li>
 <li><p>reconnect output</p></li>
-<li><p>all input are disconnected </p></li>
+<li><p>all input are disconnected</p></li>
 </ul>
 </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
-<li><p><strong>oldNodes</strong> – </p></li>
-<li><p><strong>newNodes</strong> – </p></li>
+<li><p><strong>std::set&lt;NodePtr&gt;</strong> – oldNodes: set of Nodes to be replaced </p></li>
+<li><p><strong>std::set&lt;NodePtr&gt;</strong> – newNodes: New set of Nodes replacing the old one </p></li>
 </ul>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
-<dd class="field-even"><p>true replacement has been performed </p>
-</dd>
-<dt class="field-odd">Returns<span class="colon">:</span></dt>
-<dd class="field-odd"><p>false no replacement has been performed </p>
+<dd class="field-even"><p>bool: status of the replacement (True if it succeeded, false if it failed or didn’t happen) </p>
 </dd>
 </dl>
 </dd></dl>
@@ -2856,7 +3223,20 @@ The algorithm works in several phases:<ol class="lowerroman simple">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE">
 <span class="target" id="classAidge_1_1GraphView_1a9edfde1dea903266144dfcf1c55d80dc"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">replace</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5Aidge9GraphViewE" title="Aidge::GraphView"><span class="n"><span class="pre">GraphView</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">oldG</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5Aidge9GraphViewE" title="Aidge::GraphView"><span class="n"><span class="pre">GraphView</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">newG</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge9GraphView7replaceERKNSt10shared_ptrI9GraphViewEERKNSt10shared_ptrI9GraphViewEE" title="Link to this definition">#</a><br /></dt>
-<dd></dd></dl>
+<dd><p><div class="admonition seealso">
+<p class="admonition-title">See also</p>
+<p><a class="reference internal" href="#classAidge_1_1GraphView_1ae484142e5f374b057f9b627e6dc97cf8"><span class="std std-ref">replace</span></a></p>
+</div>
+</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>std::shared_ptr&lt;GraphView&gt;</strong> – oldG: graphView to be replaced </p></li>
+<li><p><strong>std::shared_ptr&lt;GraphView&gt;</strong> – newG: New graphView replacing the old one </p></li>
+</ul>
+</dd>
+</dl>
+</dd></dl>
 
 </div>
 </dd></dl>
@@ -2871,7 +3251,19 @@ Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.get_connected_graph_view">
 <span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">get_connected_graph_view</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">arg0</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></span><a class="headerlink" href="#aidge_core.get_connected_graph_view" title="Link to this definition">#</a></dt>
-<dd></dd></dl>
+<dd><p>Create a GraphView containing all nodes with a path to given Node.</p>
+<dl class="field-list simple">
+<dt class="field-odd">Parameters<span class="colon">:</span></dt>
+<dd class="field-odd"><p><strong>node</strong> (<a class="reference internal" href="#aidge_core.Node" title="aidge_core.Node"><em>Node</em></a>) – Initial node to construct the graph.</p>
+</dd>
+<dt class="field-even">Returns<span class="colon">:</span></dt>
+<dd class="field-even"><p>GraphView GraphView containing all nodes with a path to node.</p>
+</dd>
+<dt class="field-odd">Return type<span class="colon">:</span></dt>
+<dd class="field-odd"><p><a class="reference internal" href="#aidge_core.GraphView" title="aidge_core.GraphView">GraphView</a></p>
+</dd>
+</dl>
+</dd></dl>
 
 </div>
 <input id="sd-tab-item-5" name="sd-tab-set-2" type="radio">
@@ -2880,10 +3272,10 @@ C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge21getConnectedGraphViewENSt10shared_ptrI4NodeEE">
 <span class="target" id="GraphView_8hpp_1aa8da64400df6be018ba8c96970d3a452"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5Aidge9GraphViewE" title="Aidge::GraphView"><span class="n"><span class="pre">GraphView</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">getConnectedGraphView</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">node</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge21getConnectedGraphViewENSt10shared_ptrI4NodeEE" title="Link to this definition">#</a><br /></dt>
-<dd><p>Create a <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> containing all nodes with a path to given argument. </p>
+<dd><p>Create a <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> containing all nodes with a path to given <a class="reference internal" href="#classAidge_1_1Node"><span class="std std-ref">Node</span></a>. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>node</strong> – Initial node to construct the graph. </p>
+<dd class="field-odd"><p><strong>std::shared_ptr&lt;Node&gt;</strong> – node: Initial node to construct the graph. </p>
 </dd>
 <dt class="field-even">Returns<span class="colon">:</span></dt>
 <dd class="field-even"><p><a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> <a class="reference internal" href="#classAidge_1_1GraphView"><span class="std std-ref">GraphView</span></a> containing all nodes with a path to node. </p>
diff --git a/source/API/Core/graphMatching.html b/source/API/Core/graphMatching.html
index 05985f24ee31e575e766a040910eb0aac6132ba3..cfdc2c49218d8cd90e1182a326f7d9698dc2fc4b 100644
--- a/source/API/Core/graphMatching.html
+++ b/source/API/Core/graphMatching.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Scheduler" href="scheduler.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/API/Core/index.html b/source/API/Core/index.html
index eaf7818b5df630ffb592b8644723c16ffa873c42..becebc3d297078e840e8e9c95114a2d8cd729823 100644
--- a/source/API/Core/index.html
+++ b/source/API/Core/index.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="API" href="../index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/API/Core/operator.html b/source/API/Core/operator.html
index ca3417b14989a84a96004c3b113d9260184e7257..0b2cd5c782842db34d4abab8e57db14f5b0670fa 100644
--- a/source/API/Core/operator.html
+++ b/source/API/Core/operator.html
@@ -68,7 +68,7 @@ window.addEventListener("load", () => mermaid.run());
     <link rel="prev" title="Graph" href="graph.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -451,23 +451,22 @@ window.addEventListener("load", () => mermaid.run());
 <li><p><a class="reference internal" href="#reducemean" id="id27">ReduceMean</a></p></li>
 <li><p><a class="reference internal" href="#relu" id="id28">ReLU</a></p></li>
 <li><p><a class="reference internal" href="#reshape" id="id29">Reshape</a></p></li>
-<li><p><a class="reference internal" href="#scaling" id="id30">Scaling</a></p></li>
-<li><p><a class="reference internal" href="#sigmoid" id="id31">Sigmoid</a></p></li>
-<li><p><a class="reference internal" href="#slice" id="id32">Slice</a></p></li>
-<li><p><a class="reference internal" href="#softmax" id="id33">Softmax</a></p></li>
-<li><p><a class="reference internal" href="#sqrt" id="id34">Sqrt</a></p></li>
-<li><p><a class="reference internal" href="#sub" id="id35">Sub</a></p></li>
-<li><p><a class="reference internal" href="#tanh" id="id36">Tanh</a></p></li>
-<li><p><a class="reference internal" href="#transpose" id="id37">Transpose</a></p></li>
+<li><p><a class="reference internal" href="#sigmoid" id="id30">Sigmoid</a></p></li>
+<li><p><a class="reference internal" href="#slice" id="id31">Slice</a></p></li>
+<li><p><a class="reference internal" href="#softmax" id="id32">Softmax</a></p></li>
+<li><p><a class="reference internal" href="#sqrt" id="id33">Sqrt</a></p></li>
+<li><p><a class="reference internal" href="#sub" id="id34">Sub</a></p></li>
+<li><p><a class="reference internal" href="#tanh" id="id35">Tanh</a></p></li>
+<li><p><a class="reference internal" href="#transpose" id="id36">Transpose</a></p></li>
 </ul>
 </li>
-<li><p><a class="reference internal" href="#predefined-meta-operators" id="id38">Predefined meta-operators</a></p>
+<li><p><a class="reference internal" href="#predefined-meta-operators" id="id37">Predefined meta-operators</a></p>
 <ul>
-<li><p><a class="reference internal" href="#paddedconv" id="id39">PaddedConv</a></p></li>
-<li><p><a class="reference internal" href="#paddedconvdepthwise" id="id40">PaddedConvDepthWise</a></p></li>
-<li><p><a class="reference internal" href="#paddedavgpooling" id="id41">PaddedAvgPooling</a></p></li>
-<li><p><a class="reference internal" href="#paddedmaxpooling" id="id42">PaddedMaxPooling</a></p></li>
-<li><p><a class="reference internal" href="#lstm" id="id43">LSTM</a></p></li>
+<li><p><a class="reference internal" href="#paddedconv" id="id38">PaddedConv</a></p></li>
+<li><p><a class="reference internal" href="#paddedconvdepthwise" id="id39">PaddedConvDepthWise</a></p></li>
+<li><p><a class="reference internal" href="#paddedavgpooling" id="id40">PaddedAvgPooling</a></p></li>
+<li><p><a class="reference internal" href="#paddedmaxpooling" id="id41">PaddedMaxPooling</a></p></li>
+<li><p><a class="reference internal" href="#lstm" id="id42">LSTM</a></p></li>
 </ul>
 </li>
 </ul>
@@ -1006,21 +1005,6 @@ If no <a class="reference internal" href="graph.html#classAidge_1_1Node"><span c
 </dl>
 </dd></dl>
 
-</div>
-<div class="breathe-sectiondef docutils container">
-<p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-static-functions">Public Static Functions</p>
-<dl class="cpp function">
-<dt class="sig sig-object cpp" id="_CPPv4N5Aidge8Operator13getInputsNameEv">
-<span class="target" id="classAidge_1_1Operator_1af090d6cca817332f5234f5c1b49edb2b"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getInputsName</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge8Operator13getInputsNameEv" title="Link to this definition">#</a><br /></dt>
-<dd><p>Returns an empty vector of input names. </p>
-</dd></dl>
-
-<dl class="cpp function">
-<dt class="sig sig-object cpp" id="_CPPv4N5Aidge8Operator14getOutputsNameEv">
-<span class="target" id="classAidge_1_1Operator_1ab08f3a07f166da1a492bf79db435c6c6"></span><span class="k"><span class="pre">static</span></span><span class="w"> </span><span class="k"><span class="pre">inline</span></span><span class="w"> </span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">getOutputsName</span></span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge8Operator14getOutputsNameEv" title="Link to this definition">#</a><br /></dt>
-<dd><p>Returns an empty vector of output names. </p>
-</dd></dl>
-
 </div>
 </dd></dl>
 
@@ -1228,7 +1212,7 @@ C++</label><div class="sd-tab-content docutils">
 <p><a class="reference internal" href="#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a></p>
 </div>
 </p>
-<p>Subclassed by Aidge::Abs_Op, Aidge::Add_Op, Aidge::And_Op, Aidge::ArgMax_Op, Aidge::Atan_Op, Aidge::AvgPooling_Op&lt; DIM &gt;, Aidge::BatchNorm_Op&lt; DIM &gt;, Aidge::BitShift_Op, Aidge::Cast_Op, Aidge::Clip_Op, Aidge::Concat_Op, Aidge::ConstantOfShape_Op, Aidge::ConvDepthWise_Op&lt; DIM &gt;, Aidge::ConvTranspose_Op&lt; DIM &gt;, Aidge::Conv_Op&lt; DIM &gt;, Aidge::CryptoHash_Op, Aidge::DepthToSpace_Op, Aidge::Div_Op, Aidge::Dropout_Op, Aidge::Equal_Op, Aidge::Erf_Op, Aidge::Expand_Op, Aidge::FC_Op, Aidge::Flatten_Op, Aidge::Fold_Op&lt; DIM &gt;, Aidge::Gather_Op, Aidge::GenericOperator_Op, Aidge::GlobalAveragePooling_Op, Aidge::GridSample_Op, Aidge::Heaviside_Op, Aidge::ILayerNorm_Op, Aidge::Identity_Op, Aidge::LRN_Op, Aidge::LeakyReLU_Op, Aidge::Ln_Op, Aidge::MatMul_Op, Aidge::MaxPooling_Op&lt; DIM &gt;, Aidge::Memorize_Op, Aidge::MetaOperator_Op, Aidge::Mod_Op, Aidge::Move_Op, Aidge::Mul_Op, Aidge::Pad_Op&lt; DIM &gt;, Aidge::Pop_Op, Aidge::Pow_Op, Aidge::Producer_Op, Aidge::ReLU_Op, Aidge::ReduceMean_Op, Aidge::ReduceSum_Op, Aidge::Reshape_Op, Aidge::Resize_Op, Aidge::Round_Op, Aidge::Scaling_Op, Aidge::Select_Op, Aidge::Shape_Op, Aidge::ShiftGELU_Op, Aidge::ShiftMax_Op, Aidge::Sigmoid_Op, Aidge::Slice_Op, Aidge::Softmax_Op, Aidge::Split_Op, Aidge::Sqrt_Op, Aidge::Squeeze_Op, Aidge::StackOp, Aidge::Sub_Op, Aidge::Tanh_Op, Aidge::TopK_Op, Aidge::Transpose_Op, Aidge::Unfold_Op&lt; DIM &gt;, Aidge::Unsqueeze_Op, Aidge::WeightInterleaving_Op</p>
+<p>Subclassed by Aidge::OperatorTensorWithImpl&lt; WeightInterleaving_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Slice_Op, Slice_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; ReLU_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Pop_Op, Pop_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Mul_Op &gt;, Aidge::OperatorTensorWithImpl&lt; AvgPooling_Op&lt; DIM &gt; &gt;, Aidge::OperatorTensorWithImpl&lt; Atan_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Split_Op, Split_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Ln_Op &gt;, Aidge::OperatorTensorWithImpl&lt; LeakyReLU_Op &gt;, Aidge::OperatorTensorWithImpl&lt; DepthToSpace_Op, DepthToSpace_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; ConvDepthWise_Op&lt; DIM &gt; &gt;, Aidge::OperatorTensorWithImpl&lt; BitShift_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Mod_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Flatten_Op, Flatten_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; FC_Op &gt;, Aidge::OperatorTensorWithImpl&lt; ArgMax_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Transpose_Op, TransposeImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Sqrt_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Pow_Op &gt;, Aidge::OperatorTensorWithImpl&lt; MaxPooling_Op&lt; DIM &gt; &gt;, Aidge::OperatorTensorWithImpl&lt; Heaviside_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Equal_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Conv_Op&lt; DIM &gt; &gt;, Aidge::OperatorTensorWithImpl&lt; Reshape_Op, Reshape_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; GlobalAveragePooling_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Unfold_Op&lt; DIM &gt;, Unfold_OpImpl&lt; DIM &gt; &gt;, Aidge::OperatorTensorWithImpl&lt; Shape_Op, Shape_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Sigmoid_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Dropout_Op &gt;, Aidge::OperatorTensorWithImpl&lt; CryptoHash_Op &gt;, Aidge::OperatorTensorWithImpl&lt; ConstantOfShape_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Sub_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Squeeze_Op, Squeeze_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; GridSample_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Softmax_Op &gt;, Aidge::OperatorTensorWithImpl&lt; MatMul_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Add_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Abs_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Memorize_Op, Memorize_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Div_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Clip_Op &gt;, Aidge::OperatorTensorWithImpl&lt; BatchNorm_Op&lt; DIM &gt; &gt;, Aidge::OperatorTensorWithImpl&lt; Tanh_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Round_Op &gt;, Aidge::OperatorTensorWithImpl&lt; ReduceSum_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Erf_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Concat_Op, Concat_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; TopK_Op &gt;, Aidge::OperatorTensorWithImpl&lt; ShiftGELU_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Pad_Op&lt; DIM &gt; &gt;, Aidge::OperatorTensorWithImpl&lt; And_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Gather_Op, Gather_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Cast_Op, Cast_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Unsqueeze_Op, Unsqueeze_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; StackOp, StackOpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Resize_Op &gt;, Aidge::OperatorTensorWithImpl&lt; ReduceMean_Op &gt;, Aidge::OperatorTensorWithImpl&lt; LRN_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Expand_Op &gt;, Aidge::OperatorTensorWithImpl&lt; ShiftMax_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Select_Op, Select_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; Identity_Op, Identity_OpImpl &gt;, Aidge::OperatorTensorWithImpl&lt; ILayerNorm_Op &gt;, Aidge::OperatorTensorWithImpl&lt; Fold_Op&lt; DIM &gt; &gt;, Aidge::OperatorTensorWithImpl&lt; ConvTranspose_Op&lt; DIM &gt; &gt;, Aidge::GenericOperator_Op, Aidge::Hardmax_Op, Aidge::MetaOperator_Op, Aidge::Move_Op, Aidge::OperatorTensorWithImpl&lt; T, DEF_IMPL &gt;, Aidge::Producer_Op</p>
 <div class="breathe-sectiondef docutils container">
 <p class="breathe-sectiondef-title rubric" id="breathe-section-title-public-functions">Public Functions</p>
 <dl class="cpp function">
@@ -1765,6 +1749,7 @@ graph TD
     &lt;sub&gt;&lt;em&gt;stride_dims&lt;/em&gt;&lt;/sub&gt;
     &lt;sub&gt;&lt;em&gt;dilations&lt;/em&gt;&lt;/sub&gt;
     &lt;sub&gt;&lt;em&gt;ceil_mode&lt;/em&gt;&lt;/sub&gt;
+    &lt;sub&gt;&lt;em&gt;rounding_mode&lt;/em&gt;&lt;/sub&gt;
     
     &quot;):::operator
 
@@ -1783,7 +1768,7 @@ graph TD
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.AvgPooling1D">
-<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">AvgPooling1D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">kernel_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">stride_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">[1]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dilations</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">[1]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ceil_mode</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.AvgPooling1D" title="Link to this definition">#</a></dt>
+<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">AvgPooling1D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">kernel_dims:</span> <span class="pre">list[int],</span> <span class="pre">name:</span> <span class="pre">str</span> <span class="pre">=</span> <span class="pre">'',</span> <span class="pre">stride_dims:</span> <span class="pre">list[int]</span> <span class="pre">=</span> <span class="pre">[1],</span> <span class="pre">dilations:</span> <span class="pre">list[int]</span> <span class="pre">=</span> <span class="pre">[1],</span> <span class="pre">ceil_mode:</span> <span class="pre">bool</span> <span class="pre">=</span> <span class="pre">False,</span> <span class="pre">rounding_mode:</span> <span class="pre">aidge_core.aidge_core.RoundingMode</span> <span class="pre">=</span> <span class="pre">&lt;RoundingMode.HalfAwayFromZero:</span> <span class="pre">7&gt;</span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.AvgPooling1D" title="Link to this definition">#</a></dt>
 <dd><p>Initialize a node containing an AvgPooling operator.</p>
 <p>This function performs average pooling on the tensor with the given kernel and stride dimensions.</p>
 <dl class="field-list simple">
@@ -1801,7 +1786,7 @@ Python</label><div class="sd-tab-content docutils">
 
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.AvgPooling2D">
-<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">AvgPooling2D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">kernel_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">stride_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">[1,</span> <span class="pre">1]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dilations</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">[1,</span> <span class="pre">1]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ceil_mode</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.AvgPooling2D" title="Link to this definition">#</a></dt>
+<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">AvgPooling2D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">kernel_dims:</span> <span class="pre">list[int],</span> <span class="pre">name:</span> <span class="pre">str</span> <span class="pre">=</span> <span class="pre">'',</span> <span class="pre">stride_dims:</span> <span class="pre">list[int]</span> <span class="pre">=</span> <span class="pre">[1,</span> <span class="pre">1],</span> <span class="pre">dilations:</span> <span class="pre">list[int]</span> <span class="pre">=</span> <span class="pre">[1,</span> <span class="pre">1],</span> <span class="pre">ceil_mode:</span> <span class="pre">bool</span> <span class="pre">=</span> <span class="pre">False,</span> <span class="pre">rounding_mode:</span> <span class="pre">aidge_core.aidge_core.RoundingMode</span> <span class="pre">=</span> <span class="pre">&lt;RoundingMode.HalfAwayFromZero:</span> <span class="pre">7&gt;</span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.AvgPooling2D" title="Link to this definition">#</a></dt>
 <dd><p>Initialize a node containing an AvgPooling operator.</p>
 <p>This function performs average pooling on the tensor with the given kernel and stride dimensions.</p>
 <dl class="field-list simple">
@@ -1819,7 +1804,7 @@ Python</label><div class="sd-tab-content docutils">
 
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.AvgPooling3D">
-<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">AvgPooling3D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">kernel_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">stride_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">[1,</span> <span class="pre">1,</span> <span class="pre">1]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dilations</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">[1,</span> <span class="pre">1,</span> <span class="pre">1]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ceil_mode</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.AvgPooling3D" title="Link to this definition">#</a></dt>
+<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">AvgPooling3D</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="pre">kernel_dims:</span> <span class="pre">list[int],</span> <span class="pre">name:</span> <span class="pre">str</span> <span class="pre">=</span> <span class="pre">'',</span> <span class="pre">stride_dims:</span> <span class="pre">list[int]</span> <span class="pre">=</span> <span class="pre">[1,</span> <span class="pre">1,</span> <span class="pre">1],</span> <span class="pre">dilations:</span> <span class="pre">list[int]</span> <span class="pre">=</span> <span class="pre">[1,</span> <span class="pre">1,</span> <span class="pre">1],</span> <span class="pre">ceil_mode:</span> <span class="pre">bool</span> <span class="pre">=</span> <span class="pre">False,</span> <span class="pre">rounding_mode:</span> <span class="pre">aidge_core.aidge_core.RoundingMode</span> <span class="pre">=</span> <span class="pre">&lt;RoundingMode.HalfAwayFromZero:</span> <span class="pre">7&gt;</span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.AvgPooling3D" title="Link to this definition">#</a></dt>
 <dd><p>Initialize a node containing an AvgPooling operator.</p>
 <p>This function performs average pooling on the tensor with the given kernel and stride dimensions.</p>
 <dl class="field-list simple">
@@ -1840,8 +1825,8 @@ Python</label><div class="sd-tab-content docutils">
 <label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-11">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
-<dt class="sig sig-object cpp" id="_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb">
-<span class="k"><span class="pre">template</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="m"><span class="pre">1</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">size_type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">DIM</span></span></span><span class="p"><span class="pre">&gt;</span></span><br /><span class="target" id="AvgPooling_8hpp_1ae0db06d151a45dc0b8704c8d910ef52a"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="graph.html#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">AvgPooling</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">kernel_dims</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;&quot;</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">stride_dims</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">create_array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">(</span></span><span class="m"><span class="pre">1</span></span><span class="p"><span class="pre">)</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dilations</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">create_array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">(</span></span><span class="m"><span class="pre">1</span></span><span class="p"><span class="pre">)</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">ceil_mode</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">false</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb" title="Link to this definition">#</a><br /></dt>
+<dt class="sig sig-object cpp" id="_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode">
+<span class="k"><span class="pre">template</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="m"><span class="pre">1</span></span><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">size_type</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">DIM</span></span></span><span class="p"><span class="pre">&gt;</span></span><br /><span class="target" id="AvgPooling_8hpp_1abd7e42918f9abcfe8b6d5be23b6c8c96"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="graph.html#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">AvgPooling</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">kernel_dims</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;&quot;</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">stride_dims</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">create_array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">(</span></span><span class="m"><span class="pre">1</span></span><span class="p"><span class="pre">)</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">dilations</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">create_array</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">DimSize_t</span></span><span class="p"><span class="pre">,</span></span><span class="w"> </span><a class="reference internal" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode" title="Aidge::AvgPooling::DIM"><span class="n"><span class="pre">DIM</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="p"><span class="pre">(</span></span><span class="m"><span class="pre">1</span></span><span class="p"><span class="pre">)</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">ceil_mode</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">false</span></span>, <span class="n"><span class="pre">RoundingMode</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">roundingMode</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">RoundingMode</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">HalfAwayFromZero</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode" title="Link to this definition">#</a><br /></dt>
 <dd><p>Creates an AvgPooling operator node. </p>
 <dl class="field-list simple">
 <dt class="field-odd">Template Parameters<span class="colon">:</span></dt>
@@ -2826,7 +2811,7 @@ C++</label><div class="sd-tab-content docutils">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.ReduceMean">
-<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">ReduceMean</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">axes</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">list</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">[]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">keep_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">noop_with_empty_axes</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.ReduceMean" title="Link to this definition">#</a></dt>
+<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">ReduceMean</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">axes:</span> <span class="pre">list[int]</span> <span class="pre">=</span> <span class="pre">[]</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">keep_dims:</span> <span class="pre">bool</span> <span class="pre">=</span> <span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">noop_with_empty_axes:</span> <span class="pre">bool</span> <span class="pre">=</span> <span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">rounding_mode:</span> <span class="pre">aidge_core.aidge_core.RoundingMode</span> <span class="pre">=</span> <span class="pre">&lt;RoundingMode.HalfAwayFromZero:</span> <span class="pre">7&gt;</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name:</span> <span class="pre">str</span> <span class="pre">=</span> <span class="pre">''</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.ReduceMean" title="Link to this definition">#</a></dt>
 <dd><p>Initialize a node containing a ReduceMean operator.</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
@@ -2845,8 +2830,8 @@ Python</label><div class="sd-tab-content docutils">
 <label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-51">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
-<dt class="sig sig-object cpp" id="_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE">
-<span class="target" id="ReduceMean_8hpp_1a8d66297757d1e39811a028fde574f038"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="graph.html#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">ReduceMean</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">int32_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">axes</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">keep_dims</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">noop_with_empty_axes</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">false</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;&quot;</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE" title="Link to this definition">#</a><br /></dt>
+<dt class="sig sig-object cpp" id="_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE">
+<span class="target" id="ReduceMean_8hpp_1a435e2589f4d1a74d116104852e6378eb"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="graph.html#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">ReduceMean</span></span></span><span class="sig-paren">(</span><span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">vector</span></span><span class="p"><span class="pre">&lt;</span></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">int32_t</span></span><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">axes</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">keep_dims</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">noop_with_empty_axes</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">false</span></span>, <span class="n"><span class="pre">RoundingMode</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">roundingMode</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="n"><span class="pre">RoundingMode</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">HalfAwayFromZero</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;&quot;</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE" title="Link to this definition">#</a><br /></dt>
 <dd><p>Compute the mean value of a <a class="reference internal" href="data.html#classAidge_1_1Tensor"><span class="std std-ref">Tensor</span></a> over the specified axes. </p>
 <p>Dimensions may be reduced by erasing the specified axes or retaining them with size 1.</p>
 <dl class="field-list simple">
@@ -2980,45 +2965,12 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </div>
 </section>
-<section id="scaling">
-<h3><a class="toc-backref" href="#id30" role="doc-backlink">Scaling</a><a class="headerlink" href="#scaling" title="Link to this heading">#</a></h3>
+<section id="sigmoid">
+<h3><a class="toc-backref" href="#id30" role="doc-backlink">Sigmoid</a><a class="headerlink" href="#sigmoid" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
 <input checked="checked" id="sd-tab-item-56" name="sd-tab-set-28" type="radio">
 <label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-56">
 Python</label><div class="sd-tab-content docutils">
-<p>Not available yet !</p>
-</div>
-<input id="sd-tab-item-57" name="sd-tab-set-28" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-57">
-C++</label><div class="sd-tab-content docutils">
-<dl class="cpp function">
-<dt class="sig sig-object cpp" id="_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE">
-<span class="target" id="Scaling_8hpp_1ade94c45220fc448f1100b5fb72f2f40e"></span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="graph.html#_CPPv4N5Aidge4NodeE" title="Aidge::Node"><span class="n"><span class="pre">Node</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">Scaling</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">scalingFactor</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">1.0f</span></span>, <span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">size_t</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">quantizedNbBits</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="m"><span class="pre">8</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">isOutputUnsigned</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">true</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">name</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;&quot;</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE" title="Link to this definition">#</a><br /></dt>
-<dd><p>Apply a scaling and quantization operation on a tensor. </p>
-<dl class="field-list simple">
-<dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><ul class="simple">
-<li><p><strong>scalingFactor</strong> – <strong>[in]</strong> Scaling factor to apply to the input tensor. </p></li>
-<li><p><strong>quantizedNbBits</strong> – <strong>[in]</strong> Number of bits for quantization. </p></li>
-<li><p><strong>isOutputUnsigned</strong> – <strong>[in]</strong> Whether the quantized output should be unsigned. </p></li>
-<li><p><strong>name</strong> – <strong>[in]</strong> Name of the <a class="reference internal" href="#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a>. </p></li>
-</ul>
-</dd>
-<dt class="field-even">Returns<span class="colon">:</span></dt>
-<dd class="field-even"><p>std::shared_ptr&lt;Node&gt; <a class="reference internal" href="graph.html#classAidge_1_1Node"><span class="std std-ref">Node</span></a> containing the <a class="reference internal" href="#classAidge_1_1Operator"><span class="std std-ref">Operator</span></a>. </p>
-</dd>
-</dl>
-</dd></dl>
-
-</div>
-</div>
-</section>
-<section id="sigmoid">
-<h3><a class="toc-backref" href="#id31" role="doc-backlink">Sigmoid</a><a class="headerlink" href="#sigmoid" title="Link to this heading">#</a></h3>
-<div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-58" name="sd-tab-set-29" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-58">
-Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.Sigmoid">
 <span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">Sigmoid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">''</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><a class="reference internal" href="graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">aidge_core.aidge_core.Node</span></a></span></span><a class="headerlink" href="#aidge_core.Sigmoid" title="Link to this definition">#</a></dt>
@@ -3042,8 +2994,8 @@ Python</label><div class="sd-tab-content docutils">
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-59" name="sd-tab-set-29" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-59">
+<input id="sd-tab-item-57" name="sd-tab-set-28" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-57">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge7SigmoidERKNSt6stringE">
@@ -3054,10 +3006,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="slice">
-<h3><a class="toc-backref" href="#id32" role="doc-backlink">Slice</a><a class="headerlink" href="#slice" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id31" role="doc-backlink">Slice</a><a class="headerlink" href="#slice" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-60" name="sd-tab-set-30" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-60">
+<input checked="checked" id="sd-tab-item-58" name="sd-tab-set-29" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-58">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.Slice">
@@ -3084,8 +3036,8 @@ Python</label><div class="sd-tab-content docutils">
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-61" name="sd-tab-set-30" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-61">
+<input id="sd-tab-item-59" name="sd-tab-set-29" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-59">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge5SliceERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt7int64_tEEERKNSt6vectorINSt6int8_tEEERKNSt6vectorINSt7int64_tEEERKNSt6stringE">
@@ -3111,7 +3063,7 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="softmax">
-<h3><a class="toc-backref" href="#id33" role="doc-backlink">Softmax</a><a class="headerlink" href="#softmax" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id32" role="doc-backlink">Softmax</a><a class="headerlink" href="#softmax" title="Link to this heading">#</a></h3>
 <pre align="center" class="mermaid align-center">
         %%{init: {'flowchart': { 'curve': 'monotoneY'}, 'fontFamily': 'Verdana' } }%%
 graph TD
@@ -3132,8 +3084,8 @@ graph TD
 
     classDef operator stroke-opacity:0;
     </pre><div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-62" name="sd-tab-set-31" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-62">
+<input checked="checked" id="sd-tab-item-60" name="sd-tab-set-30" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-60">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.Softmax">
@@ -3157,8 +3109,8 @@ where r is the rank (number of dimensions) of the input tensor.</p></li>
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-63" name="sd-tab-set-31" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-63">
+<input id="sd-tab-item-61" name="sd-tab-set-30" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-61">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge7SoftmaxENSt7int32_tERKNSt6stringE">
@@ -3181,10 +3133,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="sqrt">
-<h3><a class="toc-backref" href="#id34" role="doc-backlink">Sqrt</a><a class="headerlink" href="#sqrt" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id33" role="doc-backlink">Sqrt</a><a class="headerlink" href="#sqrt" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-64" name="sd-tab-set-32" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-64">
+<input checked="checked" id="sd-tab-item-62" name="sd-tab-set-31" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-62">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.Sqrt">
@@ -3198,8 +3150,8 @@ The input tensor values must be non-negative for the square root to be computed.
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-65" name="sd-tab-set-32" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-65">
+<input id="sd-tab-item-63" name="sd-tab-set-31" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-63">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge4SqrtERKNSt6stringE">
@@ -3210,10 +3162,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="sub">
-<h3><a class="toc-backref" href="#id35" role="doc-backlink">Sub</a><a class="headerlink" href="#sub" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id34" role="doc-backlink">Sub</a><a class="headerlink" href="#sub" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-66" name="sd-tab-set-33" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-66">
+<input checked="checked" id="sd-tab-item-64" name="sd-tab-set-32" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-64">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.Sub">
@@ -3243,8 +3195,8 @@ Input A: (1, 5, 3), Input B: (2, 1, 3), Output: (2, 5, 3)</p>
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-67" name="sd-tab-set-33" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-67">
+<input id="sd-tab-item-65" name="sd-tab-set-32" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-65">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge3SubERKNSt6stringE">
@@ -3255,10 +3207,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="tanh">
-<h3><a class="toc-backref" href="#id36" role="doc-backlink">Tanh</a><a class="headerlink" href="#tanh" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id35" role="doc-backlink">Tanh</a><a class="headerlink" href="#tanh" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-68" name="sd-tab-set-34" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-68">
+<input checked="checked" id="sd-tab-item-66" name="sd-tab-set-33" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-66">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.Tanh">
@@ -3282,8 +3234,8 @@ Python</label><div class="sd-tab-content docutils">
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-69" name="sd-tab-set-34" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-69">
+<input id="sd-tab-item-67" name="sd-tab-set-33" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-67">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge4TanhERKNSt6stringE">
@@ -3294,10 +3246,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="transpose">
-<h3><a class="toc-backref" href="#id37" role="doc-backlink">Transpose</a><a class="headerlink" href="#transpose" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id36" role="doc-backlink">Transpose</a><a class="headerlink" href="#transpose" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-70" name="sd-tab-set-35" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-70">
+<input checked="checked" id="sd-tab-item-68" name="sd-tab-set-34" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-68">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.Transpose">
@@ -3312,8 +3264,8 @@ Python</label><div class="sd-tab-content docutils">
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-71" name="sd-tab-set-35" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-71">
+<input id="sd-tab-item-69" name="sd-tab-set-34" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-69">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge9TransposeERKNSt6vectorI9DimSize_tEERKNSt6stringE">
@@ -3337,13 +3289,13 @@ C++</label><div class="sd-tab-content docutils">
 </section>
 </section>
 <section id="predefined-meta-operators">
-<h2><a class="toc-backref" href="#id38" role="doc-backlink">Predefined meta-operators</a><a class="headerlink" href="#predefined-meta-operators" title="Link to this heading">#</a></h2>
+<h2><a class="toc-backref" href="#id37" role="doc-backlink">Predefined meta-operators</a><a class="headerlink" href="#predefined-meta-operators" title="Link to this heading">#</a></h2>
 <p>Some meta-operators (or composite operators) are predefined for conveniance and/or for compatibility with others frameworks.</p>
 <section id="paddedconv">
-<h3><a class="toc-backref" href="#id39" role="doc-backlink">PaddedConv</a><a class="headerlink" href="#paddedconv" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id38" role="doc-backlink">PaddedConv</a><a class="headerlink" href="#paddedconv" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-72" name="sd-tab-set-36" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-72">
+<input checked="checked" id="sd-tab-item-70" name="sd-tab-set-35" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-70">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.PaddedConv1D">
@@ -3402,8 +3354,8 @@ kernel filter over an input tensor with specified stride and dilation settings.<
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-73" name="sd-tab-set-36" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-73">
+<input id="sd-tab-item-71" name="sd-tab-set-35" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-71">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4I_9DimSize_tEN5Aidge10PaddedConvENSt10shared_ptrI4NodeEE9DimSize_t9DimSize_tRA3DIM_K9DimSize_tRKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb">
@@ -3414,10 +3366,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="paddedconvdepthwise">
-<h3><a class="toc-backref" href="#id40" role="doc-backlink">PaddedConvDepthWise</a><a class="headerlink" href="#paddedconvdepthwise" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id39" role="doc-backlink">PaddedConvDepthWise</a><a class="headerlink" href="#paddedconvdepthwise" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-74" name="sd-tab-set-37" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-74">
+<input checked="checked" id="sd-tab-item-72" name="sd-tab-set-36" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-72">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.PaddedConvDepthWise1D">
@@ -3476,8 +3428,8 @@ stride control, and dilation options.</p>
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-75" name="sd-tab-set-37" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-75">
+<input id="sd-tab-item-73" name="sd-tab-set-36" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-73">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge19PaddedConvDepthWiseENSt10shared_ptrI4NodeEEK9DimSize_tRKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEERKNSt5arrayI9DimSize_t3DIMEEb">
@@ -3506,10 +3458,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="paddedavgpooling">
-<h3><a class="toc-backref" href="#id41" role="doc-backlink">PaddedAvgPooling</a><a class="headerlink" href="#paddedavgpooling" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id40" role="doc-backlink">PaddedAvgPooling</a><a class="headerlink" href="#paddedavgpooling" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-76" name="sd-tab-set-38" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-76">
+<input checked="checked" id="sd-tab-item-74" name="sd-tab-set-37" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-74">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.PaddedAvgPooling2D">
@@ -3538,8 +3490,8 @@ is computed as the average of input values within a defined kernel window.</p>
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-77" name="sd-tab-set-38" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-77">
+<input id="sd-tab-item-75" name="sd-tab-set-37" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-75">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedAvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb">
@@ -3567,10 +3519,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="paddedmaxpooling">
-<h3><a class="toc-backref" href="#id42" role="doc-backlink">PaddedMaxPooling</a><a class="headerlink" href="#paddedmaxpooling" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id41" role="doc-backlink">PaddedMaxPooling</a><a class="headerlink" href="#paddedmaxpooling" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-78" name="sd-tab-set-39" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-78">
+<input checked="checked" id="sd-tab-item-76" name="sd-tab-set-38" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-76">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.PaddedMaxPooling2D">
@@ -3599,8 +3551,8 @@ The output value is computed as the maximum of input values within a defined ker
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-79" name="sd-tab-set-39" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-79">
+<input id="sd-tab-item-77" name="sd-tab-set-38" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-77">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge16PaddedMaxPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_tXmlL2E3DIMEEEb">
@@ -3628,10 +3580,10 @@ C++</label><div class="sd-tab-content docutils">
 </div>
 </section>
 <section id="lstm">
-<h3><a class="toc-backref" href="#id43" role="doc-backlink">LSTM</a><a class="headerlink" href="#lstm" title="Link to this heading">#</a></h3>
+<h3><a class="toc-backref" href="#id42" role="doc-backlink">LSTM</a><a class="headerlink" href="#lstm" title="Link to this heading">#</a></h3>
 <div class="sd-tab-set docutils">
-<input checked="checked" id="sd-tab-item-80" name="sd-tab-set-40" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-80">
+<input checked="checked" id="sd-tab-item-78" name="sd-tab-set-39" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="python" for="sd-tab-item-78">
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.LSTM">
@@ -3660,8 +3612,8 @@ information flow through time.</p>
 </dd></dl>
 
 </div>
-<input id="sd-tab-item-81" name="sd-tab-set-40" type="radio">
-<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-81">
+<input id="sd-tab-item-79" name="sd-tab-set-39" type="radio">
+<label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-79">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
 <dt class="sig sig-object cpp" id="_CPPv4N5Aidge4LSTME9DimSize_t9DimSize_t9DimSize_tbRKNSt6stringE">
@@ -3805,8 +3757,6 @@ C++</label><div class="sd-tab-content docutils">
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4NK5Aidge8Operator9nbOutputsEv"><code class="docutils literal notranslate"><span class="pre">nbOutputs()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge8Operator12setBackEdgesERKNSt3setI9IOIndex_tEE"><code class="docutils literal notranslate"><span class="pre">setBackEdges()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4NK5Aidge8Operator10isBackEdgeE9IOIndex_t"><code class="docutils literal notranslate"><span class="pre">isBackEdge()</span></code></a></li>
-<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge8Operator13getInputsNameEv"><code class="docutils literal notranslate"><span class="pre">getInputsName()</span></code></a></li>
-<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge8Operator14getOutputsNameEv"><code class="docutils literal notranslate"><span class="pre">getOutputsName()</span></code></a></li>
 </ul>
 </li>
 </ul>
@@ -3891,7 +3841,7 @@ C++</label><div class="sd-tab-content docutils">
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.AvgPooling1D"><code class="docutils literal notranslate"><span class="pre">AvgPooling1D()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.AvgPooling2D"><code class="docutils literal notranslate"><span class="pre">AvgPooling2D()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.AvgPooling3D"><code class="docutils literal notranslate"><span class="pre">AvgPooling3D()</span></code></a></li>
-<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb"><code class="docutils literal notranslate"><span class="pre">AvgPooling()</span></code></a></li>
+<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4I_NSt5arrayI9DimSize_tXL1EEE9size_typeEEN5Aidge10AvgPoolingENSt10shared_ptrI4NodeEERKNSt5arrayI9DimSize_t3DIMEERKNSt6stringERKNSt5arrayI9DimSize_t3DIMEERKNSt5arrayI9DimSize_t3DIMEEb12RoundingMode"><code class="docutils literal notranslate"><span class="pre">AvgPooling()</span></code></a></li>
 </ul>
 </li>
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#batchnorm">BatchNorm</a><ul class="visible nav section-nav flex-column">
@@ -3990,7 +3940,7 @@ C++</label><div class="sd-tab-content docutils">
 </li>
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#reducemean">ReduceMean</a><ul class="visible nav section-nav flex-column">
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.ReduceMean"><code class="docutils literal notranslate"><span class="pre">ReduceMean()</span></code></a></li>
-<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbbRKNSt6stringE"><code class="docutils literal notranslate"><span class="pre">ReduceMean()</span></code></a></li>
+<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge10ReduceMeanERKNSt6vectorINSt7int32_tEEEbb12RoundingModeRKNSt6stringE"><code class="docutils literal notranslate"><span class="pre">ReduceMean()</span></code></a></li>
 </ul>
 </li>
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#relu">ReLU</a><ul class="visible nav section-nav flex-column">
@@ -4003,10 +3953,6 @@ C++</label><div class="sd-tab-content docutils">
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge7ReshapeERKNSt6vectorINSt7int64_tEEEbRKNSt6stringE"><code class="docutils literal notranslate"><span class="pre">Reshape()</span></code></a></li>
 </ul>
 </li>
-<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scaling">Scaling</a><ul class="visible nav section-nav flex-column">
-<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge7ScalingEfNSt6size_tEbRKNSt6stringE"><code class="docutils literal notranslate"><span class="pre">Scaling()</span></code></a></li>
-</ul>
-</li>
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#sigmoid">Sigmoid</a><ul class="visible nav section-nav flex-column">
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.Sigmoid"><code class="docutils literal notranslate"><span class="pre">Sigmoid()</span></code></a></li>
 <li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge7SigmoidERKNSt6stringE"><code class="docutils literal notranslate"><span class="pre">Sigmoid()</span></code></a></li>
diff --git a/source/API/Core/recipes.html b/source/API/Core/recipes.html
index 21eb20d063783ee3e6eb47e12e5eaa008db7617a..bfd9a3d2101498c57a9f0dd356e55981f65de2fe 100644
--- a/source/API/Core/recipes.html
+++ b/source/API/Core/recipes.html
@@ -68,7 +68,7 @@ window.addEventListener("load", () => mermaid.run());
     <link rel="prev" title="Graph Matching" href="graphMatching.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -625,13 +625,15 @@ classDef metaCls_rootCls stroke:#f00,stroke-width:5px
 Python</label><div class="sd-tab-content docutils">
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_core.expand_metaops">
-<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">expand_metaops</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">graph_view</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="graph.html#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">recursive</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.expand_metaops" title="Link to this definition">#</a></dt>
+<span class="sig-prename descclassname"><span class="pre">aidge_core.</span></span><span class="sig-name descname"><span class="pre">expand_metaops</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">graph_view</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="graph.html#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">aidge_core.aidge_core.GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">recursive</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name_format</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">'{0}'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">unique_name</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_core.expand_metaops" title="Link to this definition">#</a></dt>
 <dd><p>Flatten the graph by replacing the meta operators by their micro graph.</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
 <li><p><strong>graph_view</strong> (<a class="reference internal" href="graph.html#aidge_core.GraphView" title="aidge_core.GraphView"><code class="xref py py-class docutils literal notranslate"><span class="pre">aidge_core.GraphView</span></code></a>) – Graph view on which we want to apply the recipe</p></li>
 <li><p><strong>recursive</strong> (<em>bool</em>) – If true, recursively replace meta operators until there is no more meta operator in the graph.</p></li>
+<li><p><strong>name_format</strong> (<em>str</em>) – The formatting string to be used with fmt::format() for naming the nodes from the meta-op (inner nodes) in the expanded graph. The usable positional arguments are the following: {0} inner node name, {1} inner node type, {2} meta-node name, {3} meta-node type. Default is {0} (inner node name).</p></li>
+<li><p><strong>unique_name</strong> (<em>bool</em>) – If True, ensure that the expanded nodes name are unique in the expanded graph.</p></li>
 </ul>
 </dd>
 </dl>
@@ -642,12 +644,18 @@ Python</label><div class="sd-tab-content docutils">
 <label class="sd-tab-label" data-sync-group="language" data-sync-id="cpp" for="sd-tab-item-5">
 C++</label><div class="sd-tab-content docutils">
 <dl class="cpp function">
-<dt class="sig sig-object cpp" id="_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEb">
-<span class="target" id="Recipes_8hpp_1a965d064883305f80d7e4d8304ee102e9"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">expandMetaOps</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="graph.html#_CPPv4N5Aidge9GraphViewE" title="Aidge::GraphView"><span class="n"><span class="pre">GraphView</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">graph</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">recursive</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">false</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEb" title="Link to this definition">#</a><br /></dt>
-<dd><p>Flatten the graph by replacing the meta operators by their micro graph. </p>
+<dt class="sig sig-object cpp" id="_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb">
+<span class="target" id="Recipes_8hpp_1aadd699b63188cff138b64fb83e94091a"></span><span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-prename descclassname"><span class="n"><span class="pre">Aidge</span></span><span class="p"><span class="pre">::</span></span></span><span class="sig-name descname"><span class="n"><span class="pre">expandMetaOps</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">shared_ptr</span></span><span class="p"><span class="pre">&lt;</span></span><a class="reference internal" href="graph.html#_CPPv4N5Aidge9GraphViewE" title="Aidge::GraphView"><span class="n"><span class="pre">GraphView</span></span></a><span class="p"><span class="pre">&gt;</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">graph</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">recursive</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">false</span></span>, <span class="k"><span class="pre">const</span></span><span class="w"> </span><span class="n"><span class="pre">std</span></span><span class="p"><span class="pre">::</span></span><span class="n"><span class="pre">string</span></span><span class="w"> </span><span class="p"><span class="pre">&amp;</span></span><span class="n sig-param"><span class="pre">nameFormat</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="s"><span class="pre">&quot;{0}&quot;</span></span>, <span class="kt"><span class="pre">bool</span></span><span class="w"> </span><span class="n sig-param"><span class="pre">uniqueName</span></span><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="k"><span class="pre">false</span></span><span class="sig-paren">)</span><a class="headerlink" href="#_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb" title="Link to this definition">#</a><br /></dt>
+<dd><p><p>Flatten the graph by replacing the meta operators by their micro graph.</p>
+<p>The usable positional arguments are the following: {0} inner node name, {1} inner node type, {2} meta-node name, {3} meta-node type Default is {0} (inner node name).</p>
+</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
-<dd class="field-odd"><p><strong>recursive</strong> – If true, recursively replace meta operators until there is no more meta operator in the graph. </p>
+<dd class="field-odd"><ul class="simple">
+<li><p><strong>recursive</strong> – If true, recursively replace meta operators until there is no more meta operator in the graph. </p></li>
+<li><p><strong>string</strong> – nameFormat: The formatting string to be used with fmt::format() for naming the nodes from the meta-op (inner nodes) in the expanded graph.</p></li>
+<li><p><strong>bool</strong> – uniqueName: If true, ensure that the expanded nodes name are unique in the expanded graph. </p></li>
+</ul>
 </dd>
 </dl>
 </dd></dl>
@@ -1089,7 +1097,7 @@ C++</label><div class="sd-tab-content docutils">
 </li>
 <li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#expand-meta-operators">Expand meta operators</a><ul class="visible nav section-nav flex-column">
 <li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge_core.expand_metaops"><code class="docutils literal notranslate"><span class="pre">expand_metaops()</span></code></a></li>
-<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEb"><code class="docutils literal notranslate"><span class="pre">expandMetaOps()</span></code></a></li>
+<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#_CPPv4N5Aidge13expandMetaOpsENSt10shared_ptrI9GraphViewEEbRKNSt6stringEb"><code class="docutils literal notranslate"><span class="pre">expandMetaOps()</span></code></a></li>
 </ul>
 </li>
 <li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#explicit-cast-move">Explicit Cast Move</a><ul class="visible nav section-nav flex-column">
diff --git a/source/API/Core/scheduler.html b/source/API/Core/scheduler.html
index 27c7aeb46fb3266413b576e46cbf79fb25d3cb11..f9d5a027a3826483faddca3ffeeac9d56379fbe5 100644
--- a/source/API/Core/scheduler.html
+++ b/source/API/Core/scheduler.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Backend" href="backend.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/API/ExportTensorRT/index.html b/source/API/ExportTensorRT/index.html
index 29520d0bd5d1ff9a7a5190233d0eabbbe43cd899..1b9fa933781774c96b32a45e0cb33242fed11495 100644
--- a/source/API/ExportTensorRT/index.html
+++ b/source/API/ExportTensorRT/index.html
@@ -59,7 +59,7 @@
     <link rel="prev" title="Aidge backend OpenCV API" href="../BackendOPENCV/index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/API/Onnx/index.html b/source/API/Onnx/index.html
index 5661542ea475e8aa2cdb37ca5caa4b15546a86ac..b29b9d41b8809eec7e2dcea07a968aceea513e62 100644
--- a/source/API/Onnx/index.html
+++ b/source/API/Onnx/index.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Aidge backend CPU" href="../BackendCPU/index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -501,7 +501,7 @@ It is possible to add keys to this dictionnary at runtime using <code class="xre
 <p>Method related to the export of an Aidge <a class="reference internal" href="../Core/graph.html#aidge_core.GraphView" title="aidge_core.GraphView"><code class="xref py py-class docutils literal notranslate"><span class="pre">aidge_core.GraphView</span></code></a> to an ONNX file.</p>
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_onnx.export_onnx">
-<span class="sig-prename descclassname"><span class="pre">aidge_onnx.</span></span><span class="sig-name descname"><span class="pre">export_onnx</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">graph_view</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../Core/graph.html#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">path_to_save</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">inputs_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">outputs_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">verbose</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">enable_custom_op</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">opset</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#aidge_onnx.export_onnx" title="Link to this definition">#</a></dt>
+<span class="sig-prename descclassname"><span class="pre">aidge_onnx.</span></span><span class="sig-name descname"><span class="pre">export_onnx</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">graph_view</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../Core/graph.html#aidge_core.GraphView" title="aidge_core.aidge_core.GraphView"><span class="pre">GraphView</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">path_to_save</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">inputs_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">outputs_dims</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">Dict</span><span class="p"><span class="pre">[</span></span><span class="pre">str</span><span class="p"><span class="pre">,</span></span><span class="w"> </span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">List</span><span class="p"><span class="pre">[</span></span><span class="pre">int</span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="p"><span class="pre">]</span></span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">enable_custom_op</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">opset</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#aidge_onnx.export_onnx" title="Link to this definition">#</a></dt>
 <dd><p>Export a <a class="reference internal" href="../Core/graph.html#aidge_core.GraphView" title="aidge_core.GraphView"><code class="xref py py-class docutils literal notranslate"><span class="pre">aidge_core.GraphView</span></code></a> to an ONNX file.</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
@@ -510,7 +510,6 @@ It is possible to add keys to this dictionnary at runtime using <code class="xre
 <li><p><strong>path_to_save</strong> (<em>str</em>) – Path where to save the ONNX file, example <code class="docutils literal notranslate"><span class="pre">test.onnx</span></code></p></li>
 <li><p><strong>inputs_dims</strong> (<em>Mapping</em><em>[</em><em>str</em><em>, </em><em>List</em><em>[</em><em>List</em><em>[</em><em>int</em><em>]</em><em>]</em><em>]</em><em>, </em><em>optional</em>) – input dimensions of the network, if provided, <code class="docutils literal notranslate"><span class="pre">outputs_dims</span></code> must also be filled, this argument is a map, where the key is the name of the input node and the value is a list of dimensions ordered by the input index, defaults to None</p></li>
 <li><p><strong>outputs_dims</strong> (<em>Mapping</em><em>[</em><em>str</em><em>, </em><em>List</em><em>[</em><em>List</em><em>[</em><em>int</em><em>]</em><em>]</em><em>]</em><em>, </em><em>optional</em>) – output dimensions of the network, if provided, <code class="docutils literal notranslate"><span class="pre">inputs_dims</span></code> must also be filled, this argument is a map, where the key is the name of the output node and the value is a list of dimensions ordered by the output index, defaults to None</p></li>
-<li><p><strong>verbose</strong> (<em>bool</em><em>, </em><em>optional</em>) – If true, verbosity is activated, defaults to False</p></li>
 <li><p><strong>enable_custom_op</strong> (<em>bool</em><em>, </em><em>optional</em>) – If True, export will not fail for <a class="reference internal" href="../Core/operator.html#aidge_core.GenericOperator" title="aidge_core.GenericOperator"><code class="xref py py-class docutils literal notranslate"><span class="pre">aidge_core.GenericOperator</span></code></a> and will add the operator schema to a custom aidge domain, defaults to False</p></li>
 <li><p><strong>opset</strong> (<em>int</em><em>, </em><em>optional</em>) – The version of the ONNX opset generated, defaults to None</p></li>
 </ul>
@@ -529,7 +528,7 @@ A conversion function must have the following signature : <code class="docutils
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
 <dd class="field-odd"><ul class="simple">
 <li><p><strong>key</strong> (<em>str</em>) – This chain of characters must correspond to the Aidge type.</p></li>
-<li><p><strong>converter_function</strong> (<em>Callable</em><em>[</em><em>[</em><a class="reference internal" href="../Core/graph.html#aidge_core.Node" title="aidge_core.Node"><em>aidge_core.Node</em></a><em>, </em><em>List</em><em>[</em><em>str</em><em>]</em><em>, </em><em>List</em><em>[</em><em>str</em><em>]</em><em>, </em><em>int</em><em>, </em><em>bool</em><em>]</em><em>, </em><em>onnx.NodeProto</em><em>]</em>) – Function which take as an input an Aidge node, list of inputs name, outputs name and a boolean to handle verbosity level.</p></li>
+<li><p><strong>converter_function</strong> (<em>Callable</em><em>[</em><em>[</em><a class="reference internal" href="../Core/graph.html#aidge_core.Node" title="aidge_core.Node"><em>aidge_core.Node</em></a><em>, </em><em>List</em><em>[</em><em>str</em><em>]</em><em>, </em><em>List</em><em>[</em><em>str</em><em>]</em><em>, </em><em>Optional</em><em>[</em><em>int</em><em>]</em><em>]</em><em>, </em><em>onnx.NodeProto</em><em>]</em>) – Function which take as an input an Aidge node, list of inputs name, outputs name and a boolean to handle verbosity level.</p></li>
 </ul>
 </dd>
 </dl>
@@ -571,7 +570,7 @@ A conversion function must have the following signature : <code class="docutils
 <h3>Converters Aidge to ONNX<a class="headerlink" href="#converters-aidge-to-onnx" title="Link to this heading">#</a></h3>
 <dl class="py function">
 <dt class="sig sig-object py" id="aidge_onnx.node_export.generic_export.generic_export">
-<span class="sig-prename descclassname"><span class="pre">aidge_onnx.node_export.generic_export.</span></span><span class="sig-name descname"><span class="pre">generic_export</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">aidge_node</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../Core/graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">Node</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">node_inputs_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">node_outputs_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">opset</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">enable_custom_op</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">verbose</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_onnx.node_export.generic_export.generic_export" title="Link to this definition">#</a></dt>
+<span class="sig-prename descclassname"><span class="pre">aidge_onnx.node_export.generic_export.</span></span><span class="sig-name descname"><span class="pre">generic_export</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">aidge_node</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="../Core/graph.html#aidge_core.Node" title="aidge_core.aidge_core.Node"><span class="pre">Node</span></a></span></em>, <em class="sig-param"><span class="n"><span class="pre">node_inputs_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">node_outputs_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">opset</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">int</span><span class="w"> </span><span class="p"><span class="pre">|</span></span><span class="w"> </span><span class="pre">None</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">enable_custom_op</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">bool</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#aidge_onnx.node_export.generic_export.generic_export" title="Link to this definition">#</a></dt>
 <dd><p>Function to export a <a class="reference internal" href="../Core/operator.html#aidge_core.GenericOperator" title="aidge_core.GenericOperator"><code class="xref py py-class docutils literal notranslate"><span class="pre">aidge_core.GenericOperator</span></code></a> to an ONNX node</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters<span class="colon">:</span></dt>
@@ -581,7 +580,6 @@ A conversion function must have the following signature : <code class="docutils
 <li><p><strong>node_outputs_name</strong> (<em>list</em><em>[</em><em>str</em><em>]</em>) – list of names of outputs node</p></li>
 <li><p><strong>opset</strong> (<em>int</em><em>, </em><em>optional</em>) – opset to use for the export, defaults to None</p></li>
 <li><p><strong>enable_custom_op</strong> (<em>bool</em><em>, </em><em>optional</em>) – If True, the export will not fait if the type associated to the <a class="reference internal" href="../Core/operator.html#aidge_core.GenericOperator" title="aidge_core.GenericOperator"><code class="xref py py-class docutils literal notranslate"><span class="pre">aidge_core.GenericOperator</span></code></a> is not , defaults to False</p></li>
-<li><p><strong>verbose</strong> (<em>bool</em><em>, </em><em>optional</em>) – If true, verbosity is activated, defaults to False</p></li>
 </ul>
 </dd>
 </dl>
diff --git a/source/API/index.html b/source/API/index.html
index cca8de5624451d9477ec9c2638e91a534a0df8c8..6a9518bc295ef62404af85e1b93050dd8827c065 100644
--- a/source/API/index.html
+++ b/source/API/index.html
@@ -57,10 +57,10 @@
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
     <link rel="next" title="Aidge core API" href="Core/index.html" />
-    <link rel="prev" title="Export a MNIST model to a CPP standalone project" href="../Tutorial/export_cpp.html" />
+    <link rel="prev" title="STM32 export" href="../Tutorial/export_stm32.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -441,12 +441,12 @@
                   
 <div class="prev-next-area">
     <a class="left-prev"
-       href="../Tutorial/export_cpp.html"
+       href="../Tutorial/export_stm32.html"
        title="previous page">
       <i class="fa-solid fa-angle-left"></i>
       <div class="prev-next-info">
         <p class="prev-next-subtitle">previous</p>
-        <p class="prev-next-title">Export a MNIST model to a CPP standalone project</p>
+        <p class="prev-next-title">STM32 export</p>
       </div>
     </a>
     <a class="right-next"
diff --git a/source/GetStarted/index.html b/source/GetStarted/index.html
index d382b7d98929fccbf1acf8178c1b36ca7fdb5ec8..53b3c048511d70b63f69f355d6f2967d140dd8e9 100644
--- a/source/GetStarted/index.html
+++ b/source/GetStarted/index.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Aidge" href="../../index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/GetStarted/install.html b/source/GetStarted/install.html
index 320539f2aa648e6f0e63eff393cbeef1a8ccd02b..f9c354278b0b5baac4a49c5d6ab2205480f84646 100644
--- a/source/GetStarted/install.html
+++ b/source/GetStarted/install.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Get Started" href="index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/GetStarted/quickStart.html b/source/GetStarted/quickStart.html
index 650718186482c0d2f2816d8ed70b0e5be0c3973d..fa2f8f08d59e13ef97c7cfbc72efd4cdfde23edc 100644
--- a/source/GetStarted/quickStart.html
+++ b/source/GetStarted/quickStart.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Why Aidge?" href="whyAidge.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/GetStarted/whyAidge.html b/source/GetStarted/whyAidge.html
index 325bd6d10b7d97bf83fc200d09471e512b71b456..8d53d4f786f9dbd7ca577b31624e9b3b14c2473f 100644
--- a/source/GetStarted/whyAidge.html
+++ b/source/GetStarted/whyAidge.html
@@ -68,7 +68,7 @@ window.addEventListener("load", () => mermaid.run());
     <link rel="prev" title="Install" href="install.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/Tutorial/101_first_step.html b/source/Tutorial/101_first_step.html
index d6192f37b1a2757ba0a4029fa9e62f7ce6fcb232..f64a539676ea07fb8aa88af119b35bfc6c3434fb 100644
--- a/source/Tutorial/101_first_step.html
+++ b/source/Tutorial/101_first_step.html
@@ -59,11 +59,11 @@
     <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
-    <link rel="next" title="Database MNIST" href="database.html" />
+    <link rel="next" title="Data provider tutorial" href="database.html" />
     <link rel="prev" title="Tutorials" href="index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1 current active"><a class="current reference internal" href="#">Aidge demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -534,7 +540,7 @@ Available backends for Tensor:
 <div class="output_area docutils container">
 <div class="highlight"><pre>
 Available backends:
-{&#39;export_serialize&#39;, &#39;cpu&#39;}
+{&#39;cpu&#39;, &#39;export_serialize&#39;}
 </pre></div></div>
 </div>
 <p>For this tutorial, we will need to import <code class="docutils literal notranslate"><span class="pre">aidge_onnx</span></code> in order to load ONNX files, numpy in order to load data and matplotlib to display images.</p>
@@ -576,28 +582,28 @@ File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10
 <span class="ansi-green-fg">---&gt; 39</span> model <span style="color: rgb(98,98,98)">=</span> <span class="ansi-yellow-bg">onnx</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">load</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">filename</span><span class="ansi-yellow-bg">)</span>
 <span class="ansi-green-intense-fg ansi-bold">     40</span> <span class="ansi-bold" style="color: rgb(0,135,0)">return</span> _load_onnx2graphview(model, verbose)
 
-File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/onnx/__init__.py:212</span>, in <span class="ansi-cyan-fg">load_model</span><span class="ansi-blue-fg">(f, format, load_external_data)</span>
-<span class="ansi-green-intense-fg ansi-bold">    191</span> <span class="ansi-bold" style="color: rgb(0,135,0)">def</span><span style="color: rgb(188,188,188)"> </span><span style="color: rgb(0,0,255)">load_model</span>(
-<span class="ansi-green-intense-fg ansi-bold">    192</span>     f: IO[<span style="color: rgb(0,135,0)">bytes</span>] <span style="color: rgb(98,98,98)">|</span> <span style="color: rgb(0,135,0)">str</span> <span style="color: rgb(98,98,98)">|</span> os<span style="color: rgb(98,98,98)">.</span>PathLike,
-<span class="ansi-green-intense-fg ansi-bold">    193</span>     <span style="color: rgb(0,135,0)">format</span>: _SupportedFormat <span style="color: rgb(98,98,98)">|</span> <span class="ansi-bold" style="color: rgb(0,135,0)">None</span> <span style="color: rgb(98,98,98)">=</span> <span class="ansi-bold" style="color: rgb(0,135,0)">None</span>,  <span style="color: rgb(95,135,135)"># noqa: A002</span>
-<span class="ansi-green-intense-fg ansi-bold">    194</span>     load_external_data: <span style="color: rgb(0,135,0)">bool</span> <span style="color: rgb(98,98,98)">=</span> <span class="ansi-bold" style="color: rgb(0,135,0)">True</span>,
-<span class="ansi-green-intense-fg ansi-bold">    195</span> ) <span style="color: rgb(98,98,98)">-</span><span style="color: rgb(98,98,98)">&gt;</span> ModelProto:
-<span class="ansi-green-intense-fg ansi-bold">    196</span> <span style="color: rgb(188,188,188)">    </span><span style="color: rgb(175,0,0)">&#34;&#34;&#34;Loads a serialized ModelProto into memory.</span>
-<span class="ansi-green-intense-fg ansi-bold">    197</span>
-<span class="ansi-green-intense-fg ansi-bold">    198</span> <span style="color: rgb(175,0,0)">    Args:</span>
+File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/onnx/__init__.py:226</span>, in <span class="ansi-cyan-fg">load_model</span><span class="ansi-blue-fg">(f, format, load_external_data)</span>
+<span class="ansi-green-intense-fg ansi-bold">    205</span> <span class="ansi-bold" style="color: rgb(0,135,0)">def</span><span style="color: rgb(188,188,188)"> </span><span style="color: rgb(0,0,255)">load_model</span>(
+<span class="ansi-green-intense-fg ansi-bold">    206</span>     f: IO[<span style="color: rgb(0,135,0)">bytes</span>] <span style="color: rgb(98,98,98)">|</span> <span style="color: rgb(0,135,0)">str</span> <span style="color: rgb(98,98,98)">|</span> os<span style="color: rgb(98,98,98)">.</span>PathLike,
+<span class="ansi-green-intense-fg ansi-bold">    207</span>     <span style="color: rgb(0,135,0)">format</span>: _SupportedFormat <span style="color: rgb(98,98,98)">|</span> <span class="ansi-bold" style="color: rgb(0,135,0)">None</span> <span style="color: rgb(98,98,98)">=</span> <span class="ansi-bold" style="color: rgb(0,135,0)">None</span>,  <span style="color: rgb(95,135,135)"># noqa: A002</span>
+<span class="ansi-green-intense-fg ansi-bold">    208</span>     load_external_data: <span style="color: rgb(0,135,0)">bool</span> <span style="color: rgb(98,98,98)">=</span> <span class="ansi-bold" style="color: rgb(0,135,0)">True</span>,
+<span class="ansi-green-intense-fg ansi-bold">    209</span> ) <span style="color: rgb(98,98,98)">-</span><span style="color: rgb(98,98,98)">&gt;</span> ModelProto:
+<span class="ansi-green-intense-fg ansi-bold">    210</span> <span style="color: rgb(188,188,188)">    </span><span style="color: rgb(175,0,0)">&#34;&#34;&#34;Loads a serialized ModelProto into memory.</span>
+<span class="ansi-green-intense-fg ansi-bold">    211</span>
+<span class="ansi-green-intense-fg ansi-bold">    212</span> <span style="color: rgb(175,0,0)">    Args:</span>
 <span class="ansi-green-fg">   (...)</span>
-<span class="ansi-green-intense-fg ansi-bold">    210</span> <span style="color: rgb(175,0,0)">        Loaded in-memory ModelProto.</span>
-<span class="ansi-green-intense-fg ansi-bold">    211</span> <span style="color: rgb(175,0,0)">    &#34;&#34;&#34;</span>
-<span class="ansi-green-fg">--&gt; 212</span>     model <span style="color: rgb(98,98,98)">=</span> _get_serializer(<span style="color: rgb(0,135,0)">format</span>, f)<span style="color: rgb(98,98,98)">.</span>deserialize_proto(<span class="ansi-yellow-bg">_load_bytes</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">f</span><span class="ansi-yellow-bg">)</span>, ModelProto())
-<span class="ansi-green-intense-fg ansi-bold">    214</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> load_external_data:
-<span class="ansi-green-intense-fg ansi-bold">    215</span>         model_filepath <span style="color: rgb(98,98,98)">=</span> _get_file_path(f)
-
-File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/onnx/__init__.py:149</span>, in <span class="ansi-cyan-fg">_load_bytes</span><span class="ansi-blue-fg">(f)</span>
-<span class="ansi-green-intense-fg ansi-bold">    147</span> <span class="ansi-bold" style="color: rgb(0,135,0)">else</span>:
-<span class="ansi-green-intense-fg ansi-bold">    148</span>     f <span style="color: rgb(98,98,98)">=</span> typing<span style="color: rgb(98,98,98)">.</span>cast(Union[<span style="color: rgb(0,135,0)">str</span>, os<span style="color: rgb(98,98,98)">.</span>PathLike], f)
-<span class="ansi-green-fg">--&gt; 149</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">with</span> <span class="ansi-yellow-bg" style="color: rgb(0,135,0)">open</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">f</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">rb</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">)</span> <span class="ansi-bold" style="color: rgb(0,135,0)">as</span> readable:
-<span class="ansi-green-intense-fg ansi-bold">    150</span>         content <span style="color: rgb(98,98,98)">=</span> readable<span style="color: rgb(98,98,98)">.</span>read()
-<span class="ansi-green-intense-fg ansi-bold">    151</span> <span class="ansi-bold" style="color: rgb(0,135,0)">return</span> content
+<span class="ansi-green-intense-fg ansi-bold">    224</span> <span style="color: rgb(175,0,0)">        Loaded in-memory ModelProto.</span>
+<span class="ansi-green-intense-fg ansi-bold">    225</span> <span style="color: rgb(175,0,0)">    &#34;&#34;&#34;</span>
+<span class="ansi-green-fg">--&gt; 226</span>     model <span style="color: rgb(98,98,98)">=</span> _get_serializer(<span style="color: rgb(0,135,0)">format</span>, f)<span style="color: rgb(98,98,98)">.</span>deserialize_proto(<span class="ansi-yellow-bg">_load_bytes</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">f</span><span class="ansi-yellow-bg">)</span>, ModelProto())
+<span class="ansi-green-intense-fg ansi-bold">    228</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> load_external_data:
+<span class="ansi-green-intense-fg ansi-bold">    229</span>         model_filepath <span style="color: rgb(98,98,98)">=</span> _get_file_path(f)
+
+File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/onnx/__init__.py:163</span>, in <span class="ansi-cyan-fg">_load_bytes</span><span class="ansi-blue-fg">(f)</span>
+<span class="ansi-green-intense-fg ansi-bold">    161</span> <span class="ansi-bold" style="color: rgb(0,135,0)">else</span>:
+<span class="ansi-green-intense-fg ansi-bold">    162</span>     f <span style="color: rgb(98,98,98)">=</span> typing<span style="color: rgb(98,98,98)">.</span>cast(Union[<span style="color: rgb(0,135,0)">str</span>, os<span style="color: rgb(98,98,98)">.</span>PathLike], f)
+<span class="ansi-green-fg">--&gt; 163</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">with</span> <span class="ansi-yellow-bg" style="color: rgb(0,135,0)">open</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">f</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">rb</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">)</span> <span class="ansi-bold" style="color: rgb(0,135,0)">as</span> readable:
+<span class="ansi-green-intense-fg ansi-bold">    164</span>         content <span style="color: rgb(98,98,98)">=</span> readable<span style="color: rgb(98,98,98)">.</span>read()
+<span class="ansi-green-intense-fg ansi-bold">    165</span> <span class="ansi-bold" style="color: rgb(0,135,0)">return</span> content
 
 <span class="ansi-red-fg">FileNotFoundError</span>: [Errno 2] No such file or directory: &#39;MLP_MNIST.onnx&#39;
 </pre></div></div>
@@ -1323,7 +1329,7 @@ cat: myexport/main.cpp: No such file or directory
        title="next page">
       <div class="prev-next-info">
         <p class="prev-next-subtitle">next</p>
-        <p class="prev-next-title">Database MNIST</p>
+        <p class="prev-next-title">Data provider tutorial</p>
       </div>
       <i class="fa-solid fa-angle-right"></i>
     </a>
diff --git a/source/Tutorial/101_first_step.ipynb b/source/Tutorial/101_first_step.ipynb
index d560a6b537354a2497710f46cccd41a68448d820..986a4297289ab50278c359a711a0cce42802abd3 100644
--- a/source/Tutorial/101_first_step.ipynb
+++ b/source/Tutorial/101_first_step.ipynb
@@ -30,10 +30,10 @@
    "execution_count": 1,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:35.954733Z",
-     "iopub.status.busy": "2025-05-11T15:21:35.954470Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.077582Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.077273Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.056271Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.056139Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.205282Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.204978Z"
     }
    },
    "outputs": [
@@ -69,10 +69,10 @@
    "execution_count": 2,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.091885Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.091780Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.099661Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.099432Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.221626Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.221412Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.229690Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.229419Z"
     }
    },
    "outputs": [
@@ -122,10 +122,10 @@
    "execution_count": 3,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.100600Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.100504Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.307020Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.306678Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.230791Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.230598Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.502776Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.502388Z"
     }
    },
    "outputs": [
@@ -165,10 +165,10 @@
    "execution_count": 4,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.308227Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.308096Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.311424Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.311197Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.503989Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.503721Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.507100Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.506830Z"
     }
    },
    "outputs": [
@@ -177,7 +177,7 @@
      "output_type": "stream",
      "text": [
       "Available backends:\n",
-      "{'export_serialize', 'cpu'}\n"
+      "{'cpu', 'export_serialize'}\n"
      ]
     }
    ],
@@ -199,10 +199,10 @@
    "execution_count": 5,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.312405Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.312307Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.352665Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.352380Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.507963Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.507795Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.548261Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.547956Z"
     }
    },
    "outputs": [],
@@ -228,10 +228,10 @@
    "execution_count": 6,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.354167Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.354056Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.411038Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.410712Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.549602Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.549365Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.613593Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.613348Z"
     }
    },
    "outputs": [
@@ -244,8 +244,8 @@
       "\u001b[0;31mFileNotFoundError\u001b[0m                         Traceback (most recent call last)",
       "Cell \u001b[0;32mIn[6], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m model \u001b[38;5;241m=\u001b[39m \u001b[43maidge_onnx\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mload_onnx\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mMLP_MNIST.onnx\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n",
       "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/aidge_onnx/onnx_import.py:39\u001b[0m, in \u001b[0;36mload_onnx\u001b[0;34m(filename, verbose)\u001b[0m\n\u001b[1;32m     36\u001b[0m aidge_core\u001b[38;5;241m.\u001b[39mLog\u001b[38;5;241m.\u001b[39minfo(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mLoading ONNX \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mfilename\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m     38\u001b[0m \u001b[38;5;66;03m# Load the ONNX model\u001b[39;00m\n\u001b[0;32m---> 39\u001b[0m model \u001b[38;5;241m=\u001b[39m \u001b[43monnx\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mload\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfilename\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m     40\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m _load_onnx2graphview(model, verbose)\n",
-      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/onnx/__init__.py:212\u001b[0m, in \u001b[0;36mload_model\u001b[0;34m(f, format, load_external_data)\u001b[0m\n\u001b[1;32m    191\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21mload_model\u001b[39m(\n\u001b[1;32m    192\u001b[0m     f: IO[\u001b[38;5;28mbytes\u001b[39m] \u001b[38;5;241m|\u001b[39m \u001b[38;5;28mstr\u001b[39m \u001b[38;5;241m|\u001b[39m os\u001b[38;5;241m.\u001b[39mPathLike,\n\u001b[1;32m    193\u001b[0m     \u001b[38;5;28mformat\u001b[39m: _SupportedFormat \u001b[38;5;241m|\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m,  \u001b[38;5;66;03m# noqa: A002\u001b[39;00m\n\u001b[1;32m    194\u001b[0m     load_external_data: \u001b[38;5;28mbool\u001b[39m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m,\n\u001b[1;32m    195\u001b[0m ) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m ModelProto:\n\u001b[1;32m    196\u001b[0m \u001b[38;5;250m    \u001b[39m\u001b[38;5;124;03m\"\"\"Loads a serialized ModelProto into memory.\u001b[39;00m\n\u001b[1;32m    197\u001b[0m \n\u001b[1;32m    198\u001b[0m \u001b[38;5;124;03m    Args:\u001b[39;00m\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    210\u001b[0m \u001b[38;5;124;03m        Loaded in-memory ModelProto.\u001b[39;00m\n\u001b[1;32m    211\u001b[0m \u001b[38;5;124;03m    \"\"\"\u001b[39;00m\n\u001b[0;32m--> 212\u001b[0m     model \u001b[38;5;241m=\u001b[39m _get_serializer(\u001b[38;5;28mformat\u001b[39m, f)\u001b[38;5;241m.\u001b[39mdeserialize_proto(\u001b[43m_load_bytes\u001b[49m\u001b[43m(\u001b[49m\u001b[43mf\u001b[49m\u001b[43m)\u001b[49m, ModelProto())\n\u001b[1;32m    214\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m load_external_data:\n\u001b[1;32m    215\u001b[0m         model_filepath \u001b[38;5;241m=\u001b[39m _get_file_path(f)\n",
-      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/onnx/__init__.py:149\u001b[0m, in \u001b[0;36m_load_bytes\u001b[0;34m(f)\u001b[0m\n\u001b[1;32m    147\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m    148\u001b[0m     f \u001b[38;5;241m=\u001b[39m typing\u001b[38;5;241m.\u001b[39mcast(Union[\u001b[38;5;28mstr\u001b[39m, os\u001b[38;5;241m.\u001b[39mPathLike], f)\n\u001b[0;32m--> 149\u001b[0m     \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28;43mopen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mf\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mrb\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m readable:\n\u001b[1;32m    150\u001b[0m         content \u001b[38;5;241m=\u001b[39m readable\u001b[38;5;241m.\u001b[39mread()\n\u001b[1;32m    151\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m content\n",
+      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/onnx/__init__.py:226\u001b[0m, in \u001b[0;36mload_model\u001b[0;34m(f, format, load_external_data)\u001b[0m\n\u001b[1;32m    205\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21mload_model\u001b[39m(\n\u001b[1;32m    206\u001b[0m     f: IO[\u001b[38;5;28mbytes\u001b[39m] \u001b[38;5;241m|\u001b[39m \u001b[38;5;28mstr\u001b[39m \u001b[38;5;241m|\u001b[39m os\u001b[38;5;241m.\u001b[39mPathLike,\n\u001b[1;32m    207\u001b[0m     \u001b[38;5;28mformat\u001b[39m: _SupportedFormat \u001b[38;5;241m|\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m,  \u001b[38;5;66;03m# noqa: A002\u001b[39;00m\n\u001b[1;32m    208\u001b[0m     load_external_data: \u001b[38;5;28mbool\u001b[39m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m,\n\u001b[1;32m    209\u001b[0m ) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m ModelProto:\n\u001b[1;32m    210\u001b[0m \u001b[38;5;250m    \u001b[39m\u001b[38;5;124;03m\"\"\"Loads a serialized ModelProto into memory.\u001b[39;00m\n\u001b[1;32m    211\u001b[0m \n\u001b[1;32m    212\u001b[0m \u001b[38;5;124;03m    Args:\u001b[39;00m\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    224\u001b[0m \u001b[38;5;124;03m        Loaded in-memory ModelProto.\u001b[39;00m\n\u001b[1;32m    225\u001b[0m \u001b[38;5;124;03m    \"\"\"\u001b[39;00m\n\u001b[0;32m--> 226\u001b[0m     model \u001b[38;5;241m=\u001b[39m _get_serializer(\u001b[38;5;28mformat\u001b[39m, f)\u001b[38;5;241m.\u001b[39mdeserialize_proto(\u001b[43m_load_bytes\u001b[49m\u001b[43m(\u001b[49m\u001b[43mf\u001b[49m\u001b[43m)\u001b[49m, ModelProto())\n\u001b[1;32m    228\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m load_external_data:\n\u001b[1;32m    229\u001b[0m         model_filepath \u001b[38;5;241m=\u001b[39m _get_file_path(f)\n",
+      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/onnx/__init__.py:163\u001b[0m, in \u001b[0;36m_load_bytes\u001b[0;34m(f)\u001b[0m\n\u001b[1;32m    161\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m    162\u001b[0m     f \u001b[38;5;241m=\u001b[39m typing\u001b[38;5;241m.\u001b[39mcast(Union[\u001b[38;5;28mstr\u001b[39m, os\u001b[38;5;241m.\u001b[39mPathLike], f)\n\u001b[0;32m--> 163\u001b[0m     \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28;43mopen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mf\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mrb\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m readable:\n\u001b[1;32m    164\u001b[0m         content \u001b[38;5;241m=\u001b[39m readable\u001b[38;5;241m.\u001b[39mread()\n\u001b[1;32m    165\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m content\n",
       "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'MLP_MNIST.onnx'"
      ]
     }
@@ -275,10 +275,10 @@
    "execution_count": 7,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.412017Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.411914Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.418981Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.418764Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.614732Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.614493Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.621750Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.621542Z"
     }
    },
    "outputs": [
@@ -330,10 +330,10 @@
    "execution_count": 8,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.419910Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.419815Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.426572Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.426354Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.622651Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.622500Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.629548Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.629334Z"
     }
    },
    "outputs": [
@@ -366,10 +366,10 @@
    "execution_count": 9,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.427484Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.427384Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.434071Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.433851Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.630339Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.630250Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.636670Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.636462Z"
     }
    },
    "outputs": [
@@ -406,10 +406,10 @@
    "execution_count": 10,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.434967Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.434871Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.442465Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.442244Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.637632Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.637463Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.645037Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.644768Z"
     }
    },
    "outputs": [
@@ -440,10 +440,10 @@
    "execution_count": 11,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.443358Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.443255Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.449998Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.449778Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.645995Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.645815Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.652400Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.652189Z"
     }
    },
    "outputs": [
@@ -482,10 +482,10 @@
    "execution_count": 12,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.450891Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.450797Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.504000Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.503724Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.653203Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.653057Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.707902Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.707661Z"
     }
    },
    "outputs": [
@@ -520,10 +520,10 @@
    "execution_count": 13,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.504943Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.504840Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.516107Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.515880Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.709069Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.708889Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.720796Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.720561Z"
     }
    },
    "outputs": [
@@ -558,10 +558,10 @@
    "execution_count": 14,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.517038Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.516943Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.523819Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.523596Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.721888Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.721719Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.728896Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.728669Z"
     }
    },
    "outputs": [
@@ -603,10 +603,10 @@
    "execution_count": 15,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.524767Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.524668Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.531831Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.531613Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.729842Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.729670Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.736701Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.736495Z"
     }
    },
    "outputs": [
@@ -643,10 +643,10 @@
    "execution_count": 16,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.532760Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.532660Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.539349Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.539127Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.737656Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.737490Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.744488Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.744280Z"
     }
    },
    "outputs": [
@@ -675,10 +675,10 @@
    "execution_count": 17,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.540250Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.540150Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.547941Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.547724Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.745327Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.745210Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.752967Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.752739Z"
     }
    },
    "outputs": [
@@ -715,10 +715,10 @@
    "execution_count": 18,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.548858Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.548764Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.555325Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.555101Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.753992Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.753805Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.760830Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.760564Z"
     }
    },
    "outputs": [
@@ -753,10 +753,10 @@
    "execution_count": 19,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.556234Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.556135Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.562769Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.562555Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.761769Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.761609Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.768269Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.768042Z"
     }
    },
    "outputs": [
@@ -781,10 +781,10 @@
    "execution_count": 20,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.563703Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.563609Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.592226Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.591944Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.769124Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.768971Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.798303Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.798066Z"
     }
    },
    "outputs": [
@@ -826,10 +826,10 @@
    "execution_count": 21,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.593114Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.593026Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.601935Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.601665Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.799396Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.799238Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.808186Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.807935Z"
     }
    },
    "outputs": [
@@ -864,10 +864,10 @@
    "execution_count": 22,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.602830Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.602744Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.609872Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.609636Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.809098Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.808913Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.815736Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.815534Z"
     }
    },
    "outputs": [
@@ -910,10 +910,10 @@
    "execution_count": 23,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.610839Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.610655Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.725540Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.725202Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.816689Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.816535Z",
+     "iopub.status.idle": "2025-05-19T10:05:02.929320Z",
+     "shell.execute_reply": "2025-05-19T10:05:02.928846Z"
     }
    },
    "outputs": [
@@ -934,10 +934,10 @@
    "execution_count": 24,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.727387Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.727130Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.840907Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.840501Z"
+     "iopub.execute_input": "2025-05-19T10:05:02.930767Z",
+     "iopub.status.busy": "2025-05-19T10:05:02.930586Z",
+     "iopub.status.idle": "2025-05-19T10:05:03.044515Z",
+     "shell.execute_reply": "2025-05-19T10:05:03.044032Z"
     }
    },
    "outputs": [
@@ -967,10 +967,10 @@
    "execution_count": 25,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.842572Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.842405Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.857009Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.856764Z"
+     "iopub.execute_input": "2025-05-19T10:05:03.046094Z",
+     "iopub.status.busy": "2025-05-19T10:05:03.045915Z",
+     "iopub.status.idle": "2025-05-19T10:05:03.065479Z",
+     "shell.execute_reply": "2025-05-19T10:05:03.065195Z"
     }
    },
    "outputs": [
@@ -1020,10 +1020,10 @@
    "execution_count": 26,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.857905Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.857816Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.968330Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.968030Z"
+     "iopub.execute_input": "2025-05-19T10:05:03.066626Z",
+     "iopub.status.busy": "2025-05-19T10:05:03.066498Z",
+     "iopub.status.idle": "2025-05-19T10:05:03.180270Z",
+     "shell.execute_reply": "2025-05-19T10:05:03.179828Z"
     }
    },
    "outputs": [
@@ -1055,10 +1055,10 @@
    "execution_count": 27,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.969783Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.969676Z",
-     "iopub.status.idle": "2025-05-11T15:21:36.979165Z",
-     "shell.execute_reply": "2025-05-11T15:21:36.978959Z"
+     "iopub.execute_input": "2025-05-19T10:05:03.181813Z",
+     "iopub.status.busy": "2025-05-19T10:05:03.181643Z",
+     "iopub.status.idle": "2025-05-19T10:05:03.193138Z",
+     "shell.execute_reply": "2025-05-19T10:05:03.192863Z"
     }
    },
    "outputs": [
@@ -1083,10 +1083,10 @@
    "execution_count": 28,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:36.980013Z",
-     "iopub.status.busy": "2025-05-11T15:21:36.979927Z",
-     "iopub.status.idle": "2025-05-11T15:21:37.093185Z",
-     "shell.execute_reply": "2025-05-11T15:21:37.092869Z"
+     "iopub.execute_input": "2025-05-19T10:05:03.194532Z",
+     "iopub.status.busy": "2025-05-19T10:05:03.194328Z",
+     "iopub.status.idle": "2025-05-19T10:05:03.309200Z",
+     "shell.execute_reply": "2025-05-19T10:05:03.308706Z"
     }
    },
    "outputs": [
@@ -1132,10 +1132,10 @@
    "execution_count": 29,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:37.094406Z",
-     "iopub.status.busy": "2025-05-11T15:21:37.094302Z",
-     "iopub.status.idle": "2025-05-11T15:21:37.206431Z",
-     "shell.execute_reply": "2025-05-11T15:21:37.206085Z"
+     "iopub.execute_input": "2025-05-19T10:05:03.310955Z",
+     "iopub.status.busy": "2025-05-19T10:05:03.310734Z",
+     "iopub.status.idle": "2025-05-19T10:05:03.425192Z",
+     "shell.execute_reply": "2025-05-19T10:05:03.424603Z"
     }
    },
    "outputs": [
@@ -1163,10 +1163,10 @@
    "execution_count": 30,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:37.208015Z",
-     "iopub.status.busy": "2025-05-11T15:21:37.207913Z",
-     "iopub.status.idle": "2025-05-11T15:21:37.318275Z",
-     "shell.execute_reply": "2025-05-11T15:21:37.317922Z"
+     "iopub.execute_input": "2025-05-19T10:05:03.426667Z",
+     "iopub.status.busy": "2025-05-19T10:05:03.426513Z",
+     "iopub.status.idle": "2025-05-19T10:05:03.537767Z",
+     "shell.execute_reply": "2025-05-19T10:05:03.537349Z"
     }
    },
    "outputs": [
diff --git a/source/Tutorial/ONNX.html b/source/Tutorial/ONNX.html
index 2e87c8f88682ddfcb46425fc1d08abc55ff9d1f8..1813844fa4f91ad72a3aa283a60f335f76c898fe 100644
--- a/source/Tutorial/ONNX.html
+++ b/source/Tutorial/ONNX.html
@@ -59,11 +59,11 @@
     <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
-    <link rel="next" title="Post Training Quantization with AIDGE" href="ptq.html" />
+    <link rel="next" title="Perform static analysis on a neural network model" href="static_analysis.html" />
     <link rel="prev" title="Training a simple Neural Network" href="learning.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="current nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1 current active"><a class="current reference internal" href="#">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -886,11 +892,11 @@ Reference output:
       </div>
     </a>
     <a class="right-next"
-       href="ptq.html"
+       href="static_analysis.html"
        title="next page">
       <div class="prev-next-info">
         <p class="prev-next-subtitle">next</p>
-        <p class="prev-next-title">Post Training Quantization with AIDGE</p>
+        <p class="prev-next-title">Perform static analysis on a neural network model</p>
       </div>
       <i class="fa-solid fa-angle-right"></i>
     </a>
diff --git a/source/Tutorial/backend_cuda.html b/source/Tutorial/backend_cuda.html
new file mode 100644
index 0000000000000000000000000000000000000000..a881db0040fda1905b74f68fcf0df6cf2f809052
--- /dev/null
+++ b/source/Tutorial/backend_cuda.html
@@ -0,0 +1,672 @@
+
+<!DOCTYPE html>
+
+
+<html lang="en" data-content_root="../../" >
+
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
+
+    <title>Backend CUDA example &#8212; Eclipse Aidge  documentation</title>
+  
+  
+  
+  <script data-cfasync="false">
+    document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
+    document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
+  </script>
+  <!--
+    this give us a css class that will be invisible only if js is disabled
+  -->
+  <noscript>
+    <style>
+      .pst-js-only { display: none !important; }
+
+    </style>
+  </noscript>
+  
+  <!-- Loaded before other Sphinx assets -->
+  <link href="../../_static/styles/theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+<link href="../../_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+
+    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=8f2a1f02" />
+    <link rel="stylesheet" type="text/css" href="../../_static/graphviz.css?v=4ae1632d" />
+    <link rel="stylesheet" type="text/css" href="../../_static/copybutton.css?v=76b2166b" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sg_gallery.css?v=d2d258e8" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sphinx-design.min.css?v=95c83b7e" />
+    <link rel="stylesheet" type="text/css" href="../../_static/nbsphinx-code-cells.css?v=2aa19091" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/custom.css?v=abb81387" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/id.css?v=5eddeb79" />
+  
+  <!-- So that users can add custom icons -->
+  <script src="../../_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
+  <!-- Pre-loaded scripts that we'll load fully later -->
+  <link rel="preload" as="script" href="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
+<link rel="preload" as="script" href="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />
+
+    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
+    <script src="../../_static/doctools.js?v=9bcbadda"></script>
+    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
+    <script src="../../_static/clipboard.min.js?v=a7894cd8"></script>
+    <script src="../../_static/copybutton.js?v=f281be69"></script>
+    <script src="../../_static/design-tabs.js?v=f930bc37"></script>
+    <script src="https://cdn.jsdelivr.net/npm/@jupyter-widgets/html-manager@^1.0.1/dist/embed-amd.js"></script>
+    <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script>
+    <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
+    <script>DOCUMENTATION_OPTIONS.pagename = 'source/Tutorial/backend_cuda';</script>
+    <script src="../../_static/js/mermaid.min.js"></script>
+    <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
+    <link rel="index" title="Index" href="../../genindex.html" />
+    <link rel="search" title="Search" href="../../search.html" />
+    <link rel="next" title="Post Training Quantization with AIDGE" href="ptq.html" />
+    <link rel="prev" title="Perform static analysis on a neural network model" href="static_analysis.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1"/>
+  <meta name="docsearch:language" content="en"/>
+  <meta name="docsearch:version" content="0.6.1" />
+  </head>
+  
+  
+  <body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
+
+  
+  
+  <div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
+  
+  <div id="pst-scroll-pixel-helper"></div>
+  
+  <button type="button" class="btn rounded-pill" id="pst-back-to-top">
+    <i class="fa-solid fa-arrow-up"></i>Back to top</button>
+
+  
+  <dialog id="pst-search-dialog">
+    
+<form class="bd-search d-flex align-items-center"
+      action="../../search.html"
+      method="get">
+  <i class="fa-solid fa-magnifying-glass"></i>
+  <input type="search"
+         class="form-control"
+         name="q"
+         placeholder="Search the docs ..."
+         aria-label="Search the docs ..."
+         autocomplete="off"
+         autocorrect="off"
+         autocapitalize="off"
+         spellcheck="false"/>
+  <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
+</form>
+  </dialog>
+
+  <div class="pst-async-banner-revealer d-none">
+  <aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
+</div>
+
+  
+    <header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
+<div class="bd-header__inner bd-page-width">
+  <button class="pst-navbar-icon sidebar-toggle primary-toggle" aria-label="Site navigation">
+    <span class="fa-solid fa-bars"></span>
+  </button>
+  
+  
+  <div class="col-lg-3 navbar-header-items__start">
+    
+      <div class="navbar-item">
+
+  
+    
+  
+
+<a class="navbar-brand logo" href="../../index.html">
+  
+  
+  
+  
+  
+    
+    
+      
+    
+    
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-light" alt=""/>
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-dark pst-js-only" alt=""/>
+  
+  
+    <p class="title logo__title">Eclipse Aidge</p>
+  
+</a></div>
+    
+  </div>
+  
+  <div class="col-lg-9 navbar-header-items">
+    
+    <div class="me-auto navbar-header-items__center">
+      
+        <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+      
+    </div>
+    
+    
+    <div class="navbar-header-items__end">
+      
+        <div class="navbar-item navbar-persistent--container">
+          
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+        </div>
+      
+      
+        <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+      
+        <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+      
+    </div>
+    
+  </div>
+  
+  
+    <div class="navbar-persistent--mobile">
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+    </div>
+  
+
+  
+    <button class="pst-navbar-icon sidebar-toggle secondary-toggle" aria-label="On this page">
+      <span class="fa-solid fa-outdent"></span>
+    </button>
+  
+</div>
+
+    </header>
+  
+
+  <div class="bd-container">
+    <div class="bd-container__inner bd-page-width">
+      
+      
+      
+      <dialog id="pst-primary-sidebar-modal"></dialog>
+      <div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
+        
+
+  
+  <div class="sidebar-header-items sidebar-primary__section">
+    
+    
+      <div class="sidebar-header-items__center">
+        
+          
+          
+            <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+          
+        
+      </div>
+    
+    
+    
+      <div class="sidebar-header-items__end">
+        
+          <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+        
+          <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+        
+      </div>
+    
+  </div>
+  
+    <div class="sidebar-primary-items__start sidebar-primary__section">
+        <div class="sidebar-primary-item">
+<nav class="bd-docs-nav bd-links"
+     aria-label="Section Navigation">
+  <p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
+  <div class="bd-toc-item navbar-nav"><ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
+</ul>
+<ul class="current nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">Backend CUDA example</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
+<li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
+</ul>
+</div>
+</nav></div>
+    </div>
+  
+  
+  <div class="sidebar-primary-items__end sidebar-primary__section">
+      <div class="sidebar-primary-item">
+<div id="ethical-ad-placement"
+      class="flat"
+      data-ea-publisher="readthedocs"
+      data-ea-type="readthedocs-sidebar"
+      data-ea-manual="true">
+</div></div>
+  </div>
+
+
+      </div>
+      
+      <main id="main-content" class="bd-main" role="main">
+        
+        
+          <div class="bd-content">
+            <div class="bd-article-container">
+              
+              <div class="bd-header-article d-print-none">
+<div class="header-article-items header-article__inner">
+  
+    <div class="header-article-items__start">
+      
+        <div class="header-article-item">
+
+<nav aria-label="Breadcrumb" class="d-print-none">
+  <ul class="bd-breadcrumbs">
+    
+    <li class="breadcrumb-item breadcrumb-home">
+      <a href="../../index.html" class="nav-link" aria-label="Home">
+        <i class="fa-solid fa-home"></i>
+      </a>
+    </li>
+    
+    <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
+    
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Backend CUDA example</span></li>
+  </ul>
+</nav>
+</div>
+      
+    </div>
+  
+  
+</div>
+</div>
+              
+              
+              
+                
+<div id="searchbox"></div>
+                <article class="bd-article">
+                  
+  <section id="Backend-CUDA-example">
+<h1>Backend CUDA example<a class="headerlink" href="#Backend-CUDA-example" title="Link to this heading">#</a></h1>
+<p>This tutorial provides a step-by-step guide on performing inference with the LeNet model using <strong>Aidge Backend CUDA</strong>. Using randomly generated data as input, we will demonstrate how to pass data through the model and observe its predictions. For the sake of simplicity, we will not train the model. Feel free to replace the onnx model with one already trained.</p>
+<ul class="simple">
+<li><p>The required libraries for this tutorial are <strong>Numpy</strong> and <strong>PyTorch</strong> (optional if you you want to load your own model):</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span>pip<span class="w"> </span>install<span class="w"> </span>numpy
+<span class="o">!</span>pip<span class="w"> </span>install<span class="w"> </span>torch
+</pre></div>
+</div>
+</div>
+<ul class="simple">
+<li><p>We start by creating a LeNet model:</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">torch</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">torch.nn</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">nn</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">torch.onnx</span>
+
+<span class="k">class</span><span class="w"> </span><span class="nc">LeNet</span><span class="p">(</span><span class="n">nn</span><span class="o">.</span><span class="n">Module</span><span class="p">):</span>
+    <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">num_classes</span><span class="p">):</span>
+        <span class="nb">super</span><span class="p">(</span><span class="n">LeNet</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="fm">__init__</span><span class="p">()</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">conv1</span> <span class="o">=</span> <span class="n">nn</span><span class="o">.</span><span class="n">Conv2d</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">6</span><span class="p">,</span> <span class="n">kernel_size</span><span class="o">=</span><span class="mi">5</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">conv2</span> <span class="o">=</span> <span class="n">nn</span><span class="o">.</span><span class="n">Conv2d</span><span class="p">(</span><span class="mi">6</span><span class="p">,</span> <span class="mi">16</span><span class="p">,</span> <span class="n">kernel_size</span><span class="o">=</span><span class="mi">5</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">fc1</span> <span class="o">=</span> <span class="n">nn</span><span class="o">.</span><span class="n">Linear</span><span class="p">(</span><span class="mi">16</span> <span class="o">*</span> <span class="mi">4</span> <span class="o">*</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">120</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">fc2</span> <span class="o">=</span> <span class="n">nn</span><span class="o">.</span><span class="n">Linear</span><span class="p">(</span><span class="mi">120</span><span class="p">,</span> <span class="mi">84</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">fc3</span> <span class="o">=</span> <span class="n">nn</span><span class="o">.</span><span class="n">Linear</span><span class="p">(</span><span class="mi">84</span><span class="p">,</span> <span class="n">num_classes</span><span class="p">)</span>
+
+    <span class="k">def</span><span class="w"> </span><span class="nf">forward</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">x</span><span class="p">):</span>
+        <span class="n">x</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">relu</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">conv1</span><span class="p">(</span><span class="n">x</span><span class="p">))</span>
+        <span class="n">x</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">max_pool2d</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">kernel_size</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span> <span class="n">stride</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">x</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">relu</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">conv2</span><span class="p">(</span><span class="n">x</span><span class="p">))</span>
+        <span class="n">x</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">max_pool2d</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">kernel_size</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span> <span class="n">stride</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span>
+        <span class="n">x</span> <span class="o">=</span> <span class="n">x</span><span class="o">.</span><span class="n">view</span><span class="p">(</span><span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="mi">16</span> <span class="o">*</span> <span class="mi">4</span> <span class="o">*</span> <span class="mi">4</span><span class="p">)</span>
+        <span class="n">x</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">relu</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">fc1</span><span class="p">(</span><span class="n">x</span><span class="p">))</span>
+        <span class="n">x</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">relu</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">fc2</span><span class="p">(</span><span class="n">x</span><span class="p">))</span>
+        <span class="n">x</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">fc3</span><span class="p">(</span><span class="n">x</span><span class="p">)</span>
+        <span class="k">return</span> <span class="n">x</span>
+
+<span class="c1"># Instantiate the model</span>
+<span class="n">num_classes</span> <span class="o">=</span> <span class="mi">10</span>  <span class="c1"># Assuming you&#39;re working with MNIST dataset</span>
+<span class="n">model</span> <span class="o">=</span> <span class="n">LeNet</span><span class="p">(</span><span class="n">num_classes</span><span class="p">)</span>
+
+<span class="c1"># Set the model to evaluation mode</span>
+<span class="n">model</span><span class="o">.</span><span class="n">eval</span><span class="p">()</span>
+
+<span class="c1"># Example input shape (batch_size, channels, height, width)</span>
+<span class="n">dummy_input</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">randn</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">28</span><span class="p">,</span> <span class="mi">28</span><span class="p">)</span>
+
+<span class="c1"># Export the model to ONNX</span>
+<span class="n">torch</span><span class="o">.</span><span class="n">onnx</span><span class="o">.</span><span class="n">export</span><span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="n">dummy_input</span><span class="p">,</span> <span class="s2">&quot;lenet.onnx&quot;</span><span class="p">,</span> <span class="n">verbose</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<ul class="simple">
+<li><p>import the needed libraries</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_core</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_backend_cuda</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_onnx</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
+</pre></div>
+</div>
+</div>
+<ul class="simple">
+<li><p>load onnx model on Aidge</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span> <span class="o">=</span> <span class="n">aidge_onnx</span><span class="o">.</span><span class="n">load_onnx</span><span class="p">(</span><span class="s2">&quot;lenet.onnx&quot;</span><span class="p">)</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">remove_flatten</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+
+<span class="c1"># Configure the model</span>
+<span class="n">model</span><span class="o">.</span><span class="n">set_datatype</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">)</span>
+<span class="n">model</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s2">&quot;cuda&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<ul class="simple">
+<li><p>create input tensor:</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create an input tensor</span>
+<span class="nb">input</span> <span class="o">=</span>  <span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">randn</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">28</span><span class="p">,</span> <span class="mi">28</span><span class="p">)</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">float32</span><span class="p">)</span>
+<span class="n">input_tensor</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">Tensor</span><span class="p">(</span><span class="nb">input</span><span class="p">)</span>
+<span class="n">input_tensor</span><span class="o">.</span><span class="n">set_datatype</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">)</span>
+<span class="n">input_tensor</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s2">&quot;cuda&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<ul class="simple">
+<li><p>compile the model:</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s2">&quot;cuda&quot;</span><span class="p">,</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">,</span> <span class="n">dims</span><span class="o">=</span><span class="p">[</span><span class="n">input_tensor</span><span class="o">.</span><span class="n">dims</span><span class="p">()])</span>
+</pre></div>
+</div>
+</div>
+<ul class="simple">
+<li><p>create a scheduler and run inference</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Define the scheduler</span>
+<span class="n">scheduler</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">SequentialScheduler</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="c1"># Run inference !</span>
+<span class="n">scheduler</span><span class="o">.</span><span class="n">forward</span><span class="p">(</span><span class="n">data</span><span class="o">=</span><span class="p">[</span><span class="n">input_tensor</span><span class="p">])</span>
+<br/></pre></div>
+</div>
+</div>
+<ul class="simple">
+<li><p>get the ouput: Before getting the output we need to set it to backend cpu</p></li>
+</ul>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">for</span> <span class="n">outNode</span> <span class="ow">in</span> <span class="n">model</span><span class="o">.</span><span class="n">get_output_nodes</span><span class="p">():</span>
+    <span class="n">outNode</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">get_output</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s1">&#39;cpu&#39;</span><span class="p">)</span>
+    <span class="n">output_aidge</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">outNode</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">get_output</span><span class="p">(</span><span class="mi">0</span><span class="p">))</span>
+    <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Aidge output: </span><span class="si">{}</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">output_aidge</span><span class="p">))</span>
+    <span class="c1"># Make sure to set the  output back to &quot;cuda&quot; otherwise the model will not be usable</span>
+    <span class="n">outNode</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">get_output</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s1">&#39;cuda&#39;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+</section>
+
+
+                </article>
+              
+              
+              
+              
+              
+                <footer class="prev-next-footer d-print-none">
+                  
+<div class="prev-next-area">
+    <a class="left-prev"
+       href="static_analysis.html"
+       title="previous page">
+      <i class="fa-solid fa-angle-left"></i>
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">previous</p>
+        <p class="prev-next-title">Perform static analysis on a neural network model</p>
+      </div>
+    </a>
+    <a class="right-next"
+       href="ptq.html"
+       title="next page">
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">next</p>
+        <p class="prev-next-title">Post Training Quantization with AIDGE</p>
+      </div>
+      <i class="fa-solid fa-angle-right"></i>
+    </a>
+</div>
+                </footer>
+              
+            </div>
+            
+            
+              
+                <dialog id="pst-secondary-sidebar-modal"></dialog>
+                <div id="pst-secondary-sidebar" class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
+
+
+  <div class="sidebar-secondary-item">
+  <div role="note" aria-label="source link">
+    <h3>This Page</h3>
+    <ul class="this-page-menu">
+      <li><a href="../../_sources/source/Tutorial/backend_cuda.nblink.txt"
+            rel="nofollow">Show Source</a></li>
+    </ul>
+   </div></div>
+
+</div></div>
+              
+            
+          </div>
+          <footer class="bd-footer-content">
+            
+          </footer>
+        
+      </main>
+    </div>
+  </div>
+  
+  <!-- Scripts loaded after <body> so the DOM is not blocked -->
+  <script defer src="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
+<script defer src="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>
+
+  <footer class="bd-footer">
+<div class="bd-footer__inner bd-page-width">
+  
+    <div class="footer-items__start">
+      
+        <div class="footer-item">
+
+  <p class="copyright">
+    
+      © Copyright 2023, CEA LIST.
+      <br/>
+    
+  </p>
+</div>
+      
+        <div class="footer-item">
+
+  <p class="sphinx-version">
+    Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.1.3.
+    <br/>
+  </p>
+</div>
+      
+    </div>
+  
+  
+  
+    <div class="footer-items__end">
+      
+        <div class="footer-item">
+<p class="theme-version">
+  <!-- # L10n: Setting the PST URL as an argument as this does not need to be localized -->
+  Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.16.1.
+</p></div>
+      
+    </div>
+  
+</div>
+
+  </footer>
+  </body>
+</html>
\ No newline at end of file
diff --git a/source/Tutorial/backend_cuda.ipynb b/source/Tutorial/backend_cuda.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..5140a9e895565b03b35f67542c83de2e45473214
--- /dev/null
+++ b/source/Tutorial/backend_cuda.ipynb
@@ -0,0 +1,216 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Backend CUDA example\n",
+    "This tutorial provides a step-by-step guide on performing inference with the LeNet model using **Aidge Backend CUDA**. <br>\n",
+    "Using randomly generated data as input, we will demonstrate how to pass data through the model and observe its predictions. <br>\n",
+    "For the sake of simplicity, we will not train the model. Feel free to replace the onnx model with one already trained. <br>\n",
+    "\n",
+    "- The required libraries for this tutorial are **Numpy** and **PyTorch** (optional if you you want to load your own model):"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "!pip install numpy\n",
+    "!pip install torch"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "\n",
+    "- We start by creating a LeNet model:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "import torch\n",
+    "import torch.nn as nn\n",
+    "import torch.onnx\n",
+    "\n",
+    "class LeNet(nn.Module):\n",
+    "    def __init__(self, num_classes):\n",
+    "        super(LeNet, self).__init__()\n",
+    "        self.conv1 = nn.Conv2d(1, 6, kernel_size=5)\n",
+    "        self.conv2 = nn.Conv2d(6, 16, kernel_size=5)\n",
+    "        self.fc1 = nn.Linear(16 * 4 * 4, 120)\n",
+    "        self.fc2 = nn.Linear(120, 84)\n",
+    "        self.fc3 = nn.Linear(84, num_classes)\n",
+    "\n",
+    "    def forward(self, x):\n",
+    "        x = torch.relu(self.conv1(x))\n",
+    "        x = torch.max_pool2d(x, kernel_size=2, stride=2)\n",
+    "        x = torch.relu(self.conv2(x))\n",
+    "        x = torch.max_pool2d(x, kernel_size=2, stride=2)\n",
+    "        x = x.view(-1, 16 * 4 * 4)\n",
+    "        x = torch.relu(self.fc1(x))\n",
+    "        x = torch.relu(self.fc2(x))\n",
+    "        x = self.fc3(x)\n",
+    "        return x\n",
+    "\n",
+    "# Instantiate the model\n",
+    "num_classes = 10  # Assuming you're working with MNIST dataset\n",
+    "model = LeNet(num_classes)\n",
+    "\n",
+    "# Set the model to evaluation mode\n",
+    "model.eval()\n",
+    "\n",
+    "# Example input shape (batch_size, channels, height, width)\n",
+    "dummy_input = torch.randn(1, 1, 28, 28)\n",
+    "\n",
+    "# Export the model to ONNX\n",
+    "torch.onnx.export(model, dummy_input, \"lenet.onnx\", verbose=True)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "- import the needed libraries"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "import aidge_core\n",
+    "import aidge_backend_cuda\n",
+    "import aidge_onnx\n",
+    "import numpy as np"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "- load onnx model on Aidge"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "model = aidge_onnx.load_onnx(\"lenet.onnx\")\n",
+    "aidge_core.remove_flatten(model)\n",
+    "\n",
+    "# Configure the model\n",
+    "model.set_datatype(aidge_core.dtype.float32)\n",
+    "model.set_backend(\"cuda\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "- create input tensor:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Create an input tensor\n",
+    "input =  np.random.randn(1, 1, 28, 28).astype(np.float32)\n",
+    "input_tensor = aidge_core.Tensor(input)\n",
+    "input_tensor.set_datatype(aidge_core.dtype.float32)\n",
+    "input_tensor.set_backend(\"cuda\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "- compile the model:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "model.compile(\"cuda\", aidge_core.dtype.float32, dims=[input_tensor.dims()])"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "- create a scheduler and run inference"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Define the scheduler\n",
+    "scheduler = aidge_core.SequentialScheduler(model)\n",
+    "# Run inference !\n",
+    "scheduler.forward(data=[input_tensor])\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "- get the ouput: <br>\n",
+    "Before getting the output we need to set it to backend cpu"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "for outNode in model.get_output_nodes():\n",
+    "    outNode.get_operator().get_output(0).set_backend('cpu')\n",
+    "    output_aidge = np.array(outNode.get_operator().get_output(0))\n",
+    "    print(\"Aidge output: {}\".format(output_aidge))\n",
+    "    # Make sure to set the  output back to \"cuda\" otherwise the model will not be usable\n",
+    "    outNode.get_operator().get_output(0).set_backend('cuda')"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "aidge",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.12.6"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/source/Tutorial/database.html b/source/Tutorial/database.html
index f5c0680df1fbc3e1637b086216b2ab872727dbde..c85ed432897e7cfc7ffe8a0e313b3ed48af8093c 100644
--- a/source/Tutorial/database.html
+++ b/source/Tutorial/database.html
@@ -8,7 +8,7 @@
     <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
 
-    <title>Database MNIST &#8212; Eclipse Aidge  documentation</title>
+    <title>Data provider tutorial &#8212; Eclipse Aidge  documentation</title>
   
   
   
@@ -59,11 +59,11 @@
     <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
-    <link rel="next" title="Graph matching and manipulation with Aidge" href="graph_matching.html" />
+    <link rel="next" title="Graph matching and manipulation" href="graph_matching.html" />
     <link rel="prev" title="Aidge demonstration" href="101_first_step.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="current nav bd-sidenav">
-<li class="toctree-l1 current active"><a class="current reference internal" href="#">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -392,7 +398,7 @@
     
     <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
     
-    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Database MNIST</span></li>
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Data provider tutorial</span></li>
   </ul>
 </nav>
 </div>
@@ -409,8 +415,8 @@
 <div id="searchbox"></div>
                 <article class="bd-article">
                   
-  <section id="Database-MNIST">
-<h1>Database MNIST<a class="headerlink" href="#Database-MNIST" title="Link to this heading">#</a></h1>
+  <section id="Data-provider-tutorial">
+<h1>Data provider tutorial<a class="headerlink" href="#Data-provider-tutorial" title="Link to this heading">#</a></h1>
 <p>This tutorial demonstrate the usage of databases and data providers to perform an evaluation on a model using Aidge.</p>
 <section id="Installation-and-Requirements">
 <h2>Installation and Requirements<a class="headerlink" href="#Installation-and-Requirements" title="Link to this heading">#</a></h2>
@@ -569,7 +575,7 @@ Decompression complete
 <div class="prompt empty docutils container">
 </div>
 <div class="output_area rendered_html docutils container">
-<img src="https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpQcm9kdWNlcl8wKCJmYzFfd2VpZ2h0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHNfcm9vdENscwpQcm9kdWNlcl8xKCJmYzFfYmlhczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzMoImZjMl9iaWFzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMyk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNSgiZmMzX2JpYXM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8yKCJmYzJfd2VpZ2h0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMik8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNCgiZmMzX3dlaWdodDxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzQpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkZDXzAoImZjMV9HZW1tPGJyLz48c3ViPjxlbT4oRkMjMCk8L2VtPjwvc3ViPiIpClJlTFVfMCgiUmVsdTxici8+PHN1Yj48ZW0+KFJlTFUjMCk8L2VtPjwvc3ViPiIpCkZDXzEoImZjMl9HZW1tPGJyLz48c3ViPjxlbT4oRkMjMSk8L2VtPjwvc3ViPiIpClJlTFVfMSgiUmVsdV8xPGJyLz48c3ViPjxlbT4oUmVMVSMxKTwvZW0+PC9zdWI+IikKRkNfMigiZmMzX0dlbW0mbmJzcDs8c3VwPjxzcGFuIHRpdGxlPSJuYW1lID0gZmMzX0dlbW0Kb3V0cHV0X25hbWVzID0gWyZxdW90O291dHB1dCZxdW90O10KIiBzdHlsZT0iY3Vyc29yOiBwb2ludGVyOyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6IGJsdWUiPlsyXTwvc3Bhbj48L3N1cD48YnIvPjxzdWI+PGVtPihGQyMyKTwvZW0+PC9zdWI+IikKUHJvZHVjZXJfMC0tPnwiMCBbNTAsIDc4NF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxGQ18wClByb2R1Y2VyXzEtLT58IjAgWzUwXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifEZDXzAKUHJvZHVjZXJfMy0tPnwiMCBbNTBdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8RkNfMQpQcm9kdWNlcl81LS0+fCIwIFsxMF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxGQ18yClByb2R1Y2VyXzItLT58IjAgWzUwLCA1MF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxGQ18xClByb2R1Y2VyXzQtLT58IjAgWzEwLCA1MF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxGQ18yCkZDXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8wClJlTFVfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxGQ18xCkZDXzEtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8xClJlTFVfMS0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxGQ18yCmlucHV0MCgoaW4jMCkpOjo6aW5wdXRDbHMtLS0+fCImZGFycjs8YnIvPjAifEZDXzAKRkNfMi0tLT58IjA8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg=="/></div>
+<img src="https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpQcm9kdWNlcl80KCJmYzNfd2VpZ2h0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjNCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMigiZmMyX3dlaWdodDxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzIpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzMoImZjMl9iaWFzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMyk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNSgiZmMzX2JpYXM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8wKCJmYzFfd2VpZ2h0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHNfcm9vdENscwpQcm9kdWNlcl8xKCJmYzFfYmlhczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkZDXzAoImZjMV9HZW1tPGJyLz48c3ViPjxlbT4oRkMjMCk8L2VtPjwvc3ViPiIpClJlTFVfMCgiUmVsdTxici8+PHN1Yj48ZW0+KFJlTFUjMCk8L2VtPjwvc3ViPiIpCkZDXzEoImZjMl9HZW1tPGJyLz48c3ViPjxlbT4oRkMjMSk8L2VtPjwvc3ViPiIpClJlTFVfMSgiUmVsdV8xPGJyLz48c3ViPjxlbT4oUmVMVSMxKTwvZW0+PC9zdWI+IikKRkNfMigiZmMzX0dlbW0mbmJzcDs8c3VwPjxzcGFuIHRpdGxlPSJuYW1lID0gZmMzX0dlbW0Kb3V0cHV0X25hbWVzID0gWyZxdW90O291dHB1dCZxdW90O10KIiBzdHlsZT0iY3Vyc29yOiBwb2ludGVyOyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6IGJsdWUiPlsyXTwvc3Bhbj48L3N1cD48YnIvPjxzdWI+PGVtPihGQyMyKTwvZW0+PC9zdWI+IikKUHJvZHVjZXJfNC0tPnwiMCBbMTAsIDUwXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifEZDXzIKUHJvZHVjZXJfMi0tPnwiMCBbNTAsIDUwXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifEZDXzEKUHJvZHVjZXJfMy0tPnwiMCBbNTBdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8RkNfMQpQcm9kdWNlcl81LS0+fCIwIFsxMF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxGQ18yClByb2R1Y2VyXzAtLT58IjAgWzUwLCA3ODRdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8RkNfMApQcm9kdWNlcl8xLS0+fCIwIFs1MF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxGQ18wCkZDXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8wClJlTFVfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxGQ18xCkZDXzEtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8xClJlTFVfMS0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxGQ18yCmlucHV0MCgoaW4jMCkpOjo6aW5wdXRDbHMtLS0+fCImZGFycjs8YnIvPjAifEZDXzAKRkNfMi0tLT58IjA8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg=="/></div>
 </div>
 <div class="nbinput nblast docutils container">
 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]:
@@ -631,7 +637,7 @@ Decompression complete
 </div>
 <div class="output_area docutils container">
 <div class="highlight"><pre>
-0.9634000000000001
+0.9633999999999999
 </pre></div></div>
 </div>
 </section>
@@ -661,7 +667,7 @@ Decompression complete
        title="next page">
       <div class="prev-next-info">
         <p class="prev-next-subtitle">next</p>
-        <p class="prev-next-title">Graph matching and manipulation with Aidge</p>
+        <p class="prev-next-title">Graph matching and manipulation</p>
       </div>
       <i class="fa-solid fa-angle-right"></i>
     </a>
diff --git a/source/Tutorial/database.ipynb b/source/Tutorial/database.ipynb
index 030c7cb9f1b5fdfed95d0c6669029a1c86da3dc5..3a45e9a316e9c8c38ced95516394a7be172f14d1 100644
--- a/source/Tutorial/database.ipynb
+++ b/source/Tutorial/database.ipynb
@@ -4,7 +4,8 @@
    "cell_type": "markdown",
    "metadata": {},
    "source": [
-    "# Database MNIST\n",
+    "# Data provider tutorial\n",
+    "\n",
     "This tutorial demonstrate the usage of databases and data providers to perform an evaluation on a model using Aidge."
    ]
   },
@@ -24,10 +25,10 @@
    "execution_count": 1,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:40.366688Z",
-     "iopub.status.busy": "2025-05-11T15:21:40.366467Z",
-     "iopub.status.idle": "2025-05-11T15:21:40.523587Z",
-     "shell.execute_reply": "2025-05-11T15:21:40.523206Z"
+     "iopub.execute_input": "2025-05-19T10:05:06.993801Z",
+     "iopub.status.busy": "2025-05-19T10:05:06.993643Z",
+     "iopub.status.idle": "2025-05-19T10:05:07.634370Z",
+     "shell.execute_reply": "2025-05-19T10:05:07.634104Z"
     }
    },
    "outputs": [
@@ -51,7 +52,7 @@
     "                f.write(response.content)\n",
     "            print(\"File downloaded successfully.\")\n",
     "        else:\n",
-    "            print(\"Failed to download file. Status code:\", response.status_code) \n",
+    "            print(\"Failed to download file. Status code:\", response.status_code)\n",
     "\n",
     "# Download onnx model file\n",
     "download_material(\"MLP_MNIST.onnx\")\n"
@@ -62,10 +63,10 @@
    "execution_count": 2,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:40.524707Z",
-     "iopub.status.busy": "2025-05-11T15:21:40.524459Z",
-     "iopub.status.idle": "2025-05-11T15:21:44.279027Z",
-     "shell.execute_reply": "2025-05-11T15:21:44.278715Z"
+     "iopub.execute_input": "2025-05-19T10:05:07.635492Z",
+     "iopub.status.busy": "2025-05-19T10:05:07.635292Z",
+     "iopub.status.idle": "2025-05-19T10:05:10.326935Z",
+     "shell.execute_reply": "2025-05-19T10:05:10.326544Z"
     }
    },
    "outputs": [
@@ -130,10 +131,10 @@
    "execution_count": 3,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:44.280225Z",
-     "iopub.status.busy": "2025-05-11T15:21:44.279999Z",
-     "iopub.status.idle": "2025-05-11T15:21:44.477341Z",
-     "shell.execute_reply": "2025-05-11T15:21:44.477012Z"
+     "iopub.execute_input": "2025-05-19T10:05:10.327990Z",
+     "iopub.status.busy": "2025-05-19T10:05:10.327808Z",
+     "iopub.status.idle": "2025-05-19T10:05:10.508886Z",
+     "shell.execute_reply": "2025-05-19T10:05:10.508573Z"
     }
    },
    "outputs": [],
@@ -158,10 +159,10 @@
    "execution_count": 4,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:44.478753Z",
-     "iopub.status.busy": "2025-05-11T15:21:44.478611Z",
-     "iopub.status.idle": "2025-05-11T15:21:44.480493Z",
-     "shell.execute_reply": "2025-05-11T15:21:44.480286Z"
+     "iopub.execute_input": "2025-05-19T10:05:10.510424Z",
+     "iopub.status.busy": "2025-05-19T10:05:10.510265Z",
+     "iopub.status.idle": "2025-05-19T10:05:10.512063Z",
+     "shell.execute_reply": "2025-05-19T10:05:10.511862Z"
     }
    },
    "outputs": [],
@@ -193,10 +194,10 @@
    "execution_count": 5,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:44.481473Z",
-     "iopub.status.busy": "2025-05-11T15:21:44.481311Z",
-     "iopub.status.idle": "2025-05-11T15:21:44.560520Z",
-     "shell.execute_reply": "2025-05-11T15:21:44.560226Z"
+     "iopub.execute_input": "2025-05-19T10:05:10.512900Z",
+     "iopub.status.busy": "2025-05-19T10:05:10.512821Z",
+     "iopub.status.idle": "2025-05-19T10:05:10.586573Z",
+     "shell.execute_reply": "2025-05-19T10:05:10.586264Z"
     }
    },
    "outputs": [],
@@ -213,17 +214,17 @@
    "execution_count": 6,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:44.562364Z",
-     "iopub.status.busy": "2025-05-11T15:21:44.562229Z",
-     "iopub.status.idle": "2025-05-11T15:21:44.574154Z",
-     "shell.execute_reply": "2025-05-11T15:21:44.573893Z"
+     "iopub.execute_input": "2025-05-19T10:05:10.588333Z",
+     "iopub.status.busy": "2025-05-19T10:05:10.588175Z",
+     "iopub.status.idle": "2025-05-19T10:05:10.599411Z",
+     "shell.execute_reply": "2025-05-19T10:05:10.599158Z"
     }
    },
    "outputs": [
     {
      "data": {
       "text/html": [
-       "<img src=\"https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpQcm9kdWNlcl8wKCJmYzFfd2VpZ2h0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHNfcm9vdENscwpQcm9kdWNlcl8xKCJmYzFfYmlhczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzMoImZjMl9iaWFzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMyk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNSgiZmMzX2JpYXM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8yKCJmYzJfd2VpZ2h0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMik8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNCgiZmMzX3dlaWdodDxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzQpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkZDXzAoImZjMV9HZW1tPGJyLz48c3ViPjxlbT4oRkMjMCk8L2VtPjwvc3ViPiIpClJlTFVfMCgiUmVsdTxici8+PHN1Yj48ZW0+KFJlTFUjMCk8L2VtPjwvc3ViPiIpCkZDXzEoImZjMl9HZW1tPGJyLz48c3ViPjxlbT4oRkMjMSk8L2VtPjwvc3ViPiIpClJlTFVfMSgiUmVsdV8xPGJyLz48c3ViPjxlbT4oUmVMVSMxKTwvZW0+PC9zdWI+IikKRkNfMigiZmMzX0dlbW0mbmJzcDs8c3VwPjxzcGFuIHRpdGxlPSJuYW1lID0gZmMzX0dlbW0Kb3V0cHV0X25hbWVzID0gWyZxdW90O291dHB1dCZxdW90O10KIiBzdHlsZT0iY3Vyc29yOiBwb2ludGVyOyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6IGJsdWUiPlsyXTwvc3Bhbj48L3N1cD48YnIvPjxzdWI+PGVtPihGQyMyKTwvZW0+PC9zdWI+IikKUHJvZHVjZXJfMC0tPnwiMCBbNTAsIDc4NF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxGQ18wClByb2R1Y2VyXzEtLT58IjAgWzUwXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifEZDXzAKUHJvZHVjZXJfMy0tPnwiMCBbNTBdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8RkNfMQpQcm9kdWNlcl81LS0+fCIwIFsxMF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxGQ18yClByb2R1Y2VyXzItLT58IjAgWzUwLCA1MF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxGQ18xClByb2R1Y2VyXzQtLT58IjAgWzEwLCA1MF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxGQ18yCkZDXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8wClJlTFVfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxGQ18xCkZDXzEtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8xClJlTFVfMS0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxGQ18yCmlucHV0MCgoaW4jMCkpOjo6aW5wdXRDbHMtLS0+fCImZGFycjs8YnIvPjAifEZDXzAKRkNfMi0tLT58IjA8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg==\"/>"
+       "<img src=\"https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpQcm9kdWNlcl80KCJmYzNfd2VpZ2h0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjNCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMigiZmMyX3dlaWdodDxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzIpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzMoImZjMl9iaWFzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMyk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNSgiZmMzX2JpYXM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8wKCJmYzFfd2VpZ2h0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHNfcm9vdENscwpQcm9kdWNlcl8xKCJmYzFfYmlhczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkZDXzAoImZjMV9HZW1tPGJyLz48c3ViPjxlbT4oRkMjMCk8L2VtPjwvc3ViPiIpClJlTFVfMCgiUmVsdTxici8+PHN1Yj48ZW0+KFJlTFUjMCk8L2VtPjwvc3ViPiIpCkZDXzEoImZjMl9HZW1tPGJyLz48c3ViPjxlbT4oRkMjMSk8L2VtPjwvc3ViPiIpClJlTFVfMSgiUmVsdV8xPGJyLz48c3ViPjxlbT4oUmVMVSMxKTwvZW0+PC9zdWI+IikKRkNfMigiZmMzX0dlbW0mbmJzcDs8c3VwPjxzcGFuIHRpdGxlPSJuYW1lID0gZmMzX0dlbW0Kb3V0cHV0X25hbWVzID0gWyZxdW90O291dHB1dCZxdW90O10KIiBzdHlsZT0iY3Vyc29yOiBwb2ludGVyOyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6IGJsdWUiPlsyXTwvc3Bhbj48L3N1cD48YnIvPjxzdWI+PGVtPihGQyMyKTwvZW0+PC9zdWI+IikKUHJvZHVjZXJfNC0tPnwiMCBbMTAsIDUwXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifEZDXzIKUHJvZHVjZXJfMi0tPnwiMCBbNTAsIDUwXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifEZDXzEKUHJvZHVjZXJfMy0tPnwiMCBbNTBdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8RkNfMQpQcm9kdWNlcl81LS0+fCIwIFsxMF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxGQ18yClByb2R1Y2VyXzAtLT58IjAgWzUwLCA3ODRdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8RkNfMApQcm9kdWNlcl8xLS0+fCIwIFs1MF0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxGQ18wCkZDXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8wClJlTFVfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxGQ18xCkZDXzEtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8xClJlTFVfMS0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxGQ18yCmlucHV0MCgoaW4jMCkpOjo6aW5wdXRDbHMtLS0+fCImZGFycjs8YnIvPjAifEZDXzAKRkNfMi0tLT58IjA8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg==\"/>"
       ],
       "text/plain": [
        "<IPython.core.display.Image object>"
@@ -245,10 +246,10 @@
    "execution_count": 7,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:44.575040Z",
-     "iopub.status.busy": "2025-05-11T15:21:44.574872Z",
-     "iopub.status.idle": "2025-05-11T15:21:44.576563Z",
-     "shell.execute_reply": "2025-05-11T15:21:44.576363Z"
+     "iopub.execute_input": "2025-05-19T10:05:10.600292Z",
+     "iopub.status.busy": "2025-05-19T10:05:10.600199Z",
+     "iopub.status.idle": "2025-05-19T10:05:10.601867Z",
+     "shell.execute_reply": "2025-05-19T10:05:10.601659Z"
     }
    },
    "outputs": [],
@@ -266,10 +267,10 @@
    "execution_count": 8,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:44.577483Z",
-     "iopub.status.busy": "2025-05-11T15:21:44.577321Z",
-     "iopub.status.idle": "2025-05-11T15:21:44.900404Z",
-     "shell.execute_reply": "2025-05-11T15:21:44.900086Z"
+     "iopub.execute_input": "2025-05-19T10:05:10.602704Z",
+     "iopub.status.busy": "2025-05-19T10:05:10.602618Z",
+     "iopub.status.idle": "2025-05-19T10:05:10.914157Z",
+     "shell.execute_reply": "2025-05-19T10:05:10.913874Z"
     }
    },
    "outputs": [],
@@ -289,10 +290,10 @@
    "execution_count": 9,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:44.901305Z",
-     "iopub.status.busy": "2025-05-11T15:21:44.901208Z",
-     "iopub.status.idle": "2025-05-11T15:21:45.223108Z",
-     "shell.execute_reply": "2025-05-11T15:21:45.222647Z"
+     "iopub.execute_input": "2025-05-19T10:05:10.915745Z",
+     "iopub.status.busy": "2025-05-19T10:05:10.915584Z",
+     "iopub.status.idle": "2025-05-19T10:05:11.217836Z",
+     "shell.execute_reply": "2025-05-19T10:05:11.217375Z"
     }
    },
    "outputs": [
@@ -300,7 +301,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "0.9634000000000001\n"
+      "0.9633999999999999\n"
      ]
     }
    ],
@@ -331,7 +332,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "env_aidge",
+   "display_name": "aidge",
    "language": "python",
    "name": "python3"
   },
diff --git a/source/Tutorial/export_cpp.html b/source/Tutorial/export_cpp.html
index b22cce59db2e670008ce1703e767a29879397e68..ac04902694c5e695bccdcfbe067df81ed38a65da 100644
--- a/source/Tutorial/export_cpp.html
+++ b/source/Tutorial/export_cpp.html
@@ -8,7 +8,7 @@
     <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
 
-    <title>Export a MNIST model to a CPP standalone project &#8212; Eclipse Aidge  documentation</title>
+    <title>Export 101 &#8212; Eclipse Aidge  documentation</title>
   
   
   
@@ -59,11 +59,11 @@
     <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
-    <link rel="next" title="API" href="../API/index.html" />
+    <link rel="next" title="Quantized model C++ export" href="export_cpp_quant.html" />
     <link rel="prev" title="Aidge tiling demonstration" href="tiling.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="current nav bd-sidenav">
-<li class="toctree-l1 current active"><a class="current reference internal" href="#">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -392,7 +398,7 @@
     
     <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
     
-    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Export a MNIST model to a CPP standalone project</span></li>
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Export 101</span></li>
   </ul>
 </nav>
 </div>
@@ -409,8 +415,8 @@
 <div id="searchbox"></div>
                 <article class="bd-article">
                   
-  <section id="Export-a-MNIST-model-to-a-CPP-standalone-project">
-<h1>Export a MNIST model to a CPP standalone project<a class="headerlink" href="#Export-a-MNIST-model-to-a-CPP-standalone-project" title="Link to this heading">#</a></h1>
+  <section id="Export-101">
+<h1>Export 101<a class="headerlink" href="#Export-101" title="Link to this heading">#</a></h1>
 <div class="nbinput docutils container">
 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]:
 </pre></div>
@@ -425,7 +431,7 @@
 <div class="output_area docutils container">
 <div class="highlight"><pre>
 Requirement already satisfied: requests in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.32.3)
-Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.2.5)
+Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.2.6)
 Collecting ipywidgets
   Downloading ipywidgets-8.1.7-py3-none-any.whl.metadata (2.4 kB)
 Collecting ipycanvas
@@ -460,7 +466,7 @@ Requirement already satisfied: pure-eval in /builds/eclipse/aidge/aidge/venv/lib
 Downloading ipywidgets-8.1.7-py3-none-any.whl (139 kB)
 Downloading jupyterlab_widgets-3.0.15-py3-none-any.whl (216 kB)
 Downloading widgetsnbextension-4.0.14-py3-none-any.whl (2.2 MB)
-   <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">2.2/2.2 MB</span> <span class="ansi-red-fg">53.9 MB/s</span> eta <span class="ansi-cyan-fg">0:00:00</span>
+   <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">2.2/2.2 MB</span> <span class="ansi-red-fg">34.7 MB/s</span> eta <span class="ansi-cyan-fg">0:00:00</span>
 Downloading ipycanvas-0.13.3-py2.py3-none-any.whl (125 kB)
 Installing collected packages: widgetsnbextension, jupyterlab_widgets, ipywidgets, ipycanvas
    <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">4/4</span> [ipycanvas]
@@ -470,55 +476,41 @@ Note: you may need to restart the kernel to use updated packages.
 </div>
 <section id="Download-the-model">
 <h2>Download the model<a class="headerlink" href="#Download-the-model" title="Link to this heading">#</a></h2>
-<div class="nbinput nblast docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]:
-</pre></div>
-</div>
-<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">os</span>
-<span class="kn">import</span><span class="w"> </span><span class="nn">requests</span>
-</pre></div>
-</div>
-</div>
 <div class="nbinput docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]:
 </pre></div>
 </div>
-<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Download onnx file if it has not been done before</span>
-<span class="k">if</span> <span class="ow">not</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">isfile</span><span class="p">(</span><span class="s2">&quot;./lenet_mnist.onnx&quot;</span><span class="p">):</span>
-    <span class="n">response</span> <span class="o">=</span> <span class="n">requests</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;https://huggingface.co/vtemplier/LeNet_MNIST/resolve/main/lenet_mnist.onnx?download=true&quot;</span><span class="p">)</span>
-    <span class="k">if</span> <span class="n">response</span><span class="o">.</span><span class="n">status_code</span> <span class="o">==</span> <span class="mi">200</span><span class="p">:</span>
-        <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="s2">&quot;lenet_mnist.onnx&quot;</span><span class="p">,</span> <span class="s1">&#39;wb&#39;</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
-            <span class="n">f</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">response</span><span class="o">.</span><span class="n">content</span><span class="p">)</span>
-        <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;ONNX model downloaded successfully.&quot;</span><span class="p">)</span>
-    <span class="k">else</span><span class="p">:</span>
-        <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Failed to download ONNX model. Status code:&quot;</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">status_code</span><span class="p">)</span>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_core</span>
+
+<span class="n">file_url</span> <span class="o">=</span> <span class="s2">&quot;https://huggingface.co/EclipseAidge/LeNet/resolve/main/lenet_mnist.onnx?download=true&quot;</span>
+<span class="n">file_path</span> <span class="o">=</span> <span class="s2">&quot;lenet_mnist.onnx&quot;</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">download_file</span><span class="p">(</span><span class="n">file_path</span><span class="p">,</span> <span class="n">file_url</span><span class="p">)</span>
 </pre></div>
 </div>
 </div>
 <div class="nboutput nblast docutils container">
 <div class="prompt empty docutils container">
 </div>
-<div class="output_area docutils container">
+<div class="output_area stderr docutils container">
 <div class="highlight"><pre>
-ONNX model downloaded successfully.
+lenet_mnist.onnx: 100%|██████████| 349k/349k [00:00&lt;00:00, 8.07MB/s]
 </pre></div></div>
 </div>
 </section>
 <section id="Load-the-model-in-Aidge-and-manipulate-it">
 <h2>Load the model in Aidge and manipulate it<a class="headerlink" href="#Load-the-model-in-Aidge-and-manipulate-it" title="Link to this heading">#</a></h2>
 <div class="nbinput nblast docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]:
 </pre></div>
 </div>
-<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_core</span>
-<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_backend_cpu</span>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_backend_cpu</span>
 <span class="kn">import</span><span class="w"> </span><span class="nn">aidge_onnx</span>
 <span class="kn">import</span><span class="w"> </span><span class="nn">aidge_export_cpp</span>
 </pre></div>
 </div>
 </div>
 <div class="nbinput nblast docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]:
 </pre></div>
 </div>
 <div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span> <span class="o">=</span> <span class="n">aidge_onnx</span><span class="o">.</span><span class="n">load_onnx</span><span class="p">(</span><span class="s2">&quot;lenet_mnist.onnx&quot;</span><span class="p">)</span>
@@ -526,7 +518,7 @@ ONNX model downloaded successfully.
 </div>
 </div>
 <div class="nbinput nblast docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]:
 </pre></div>
 </div>
 <div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Remove Flatten node, useless in the CPP export</span>
@@ -538,7 +530,7 @@ ONNX model downloaded successfully.
 </div>
 </div>
 <div class="nbinput nblast docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]:
 </pre></div>
 </div>
 <div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span>rm<span class="w"> </span>-rf<span class="w"> </span>lenet_export_fp32
@@ -546,7 +538,7 @@ ONNX model downloaded successfully.
 </div>
 </div>
 <div class="nbinput nblast docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]:
 </pre></div>
 </div>
 <div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Generate scheduling of the model</span>
@@ -558,8 +550,8 @@ ONNX model downloaded successfully.
 </section>
 <section id="Export-the-model">
 <h2>Export the model<a class="headerlink" href="#Export-the-model" title="Link to this heading">#</a></h2>
-<div class="nbinput docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]:
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]:
 </pre></div>
 </div>
 <div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">export_folder</span> <span class="o">=</span> <span class="s2">&quot;lenet_export_fp32&quot;</span>
@@ -571,23 +563,13 @@ ONNX model downloaded successfully.
         <span class="n">memory_manager</span><span class="o">=</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">mem_info</span><span class="o">.</span><span class="n">generate_optimized_memory_info</span><span class="p">,</span>
         <span class="n">memory_manager_args</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;stats_folder&quot;</span><span class="p">:</span> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">export_folder</span><span class="si">}</span><span class="s2">/stats&quot;</span><span class="p">,</span> <span class="s2">&quot;wrapping&quot;</span><span class="p">:</span> <span class="kc">False</span> <span class="p">}</span>
 <span class="p">)</span>
-
-<span class="n">aidge_core</span><span class="o">.</span><span class="n">export_utils</span><span class="o">.</span><span class="n">generate_main_cpp</span><span class="p">(</span><span class="n">export_folder</span><span class="p">,</span> <span class="n">model</span><span class="p">)</span>
 </pre></div>
 </div>
 </div>
-<div class="nboutput nblast docutils container">
-<div class="prompt empty docutils container">
-</div>
-<div class="output_area docutils container">
-<div class="highlight"><pre>
-gen : lenet_export_fp32/data/feature_feature_0_Conv_input_0.h
-</pre></div></div>
-</div>
 <section id="Draw-your-own-number">
 <h3>Draw your own number<a class="headerlink" href="#Draw-your-own-number" title="Link to this heading">#</a></h3>
 <div class="nbinput docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]:
 </pre></div>
 </div>
 <div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="nn">ipywidgets</span><span class="w"> </span><span class="kn">import</span> <span class="n">HBox</span><span class="p">,</span> <span class="n">VBox</span><span class="p">,</span> <span class="n">Button</span><span class="p">,</span> <span class="n">Layout</span>
@@ -664,27 +646,26 @@ gen : lenet_export_fp32/data/feature_feature_0_Conv_input_0.h
 </div>
 </div>
 <div class="nboutput nblast docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]:
 </pre></div>
 </div>
 <div class="output_area docutils container">
-<script type="application/vnd.jupyter.widget-view+json">{"version_major": 2, "version_minor": 0, "model_id": "44dd172846d746d787387796b29867aa"}</script></div>
+<script type="application/vnd.jupyter.widget-view+json">{"version_major": 2, "version_minor": 0, "model_id": "a6d4edc48ab74af9a004a0b7d66dbd77"}</script></div>
 </div>
 </section>
 <section id="Generate-inputs-for-testing-the-model-from-your-drawing">
 <h3>Generate inputs for testing the model from your drawing<a class="headerlink" href="#Generate-inputs-for-testing-the-model-from-your-drawing" title="Link to this heading">#</a></h3>
 <div class="nbinput docutils container">
-<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]:
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
 </pre></div>
 </div>
-<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">try</span><span class="p">:</span>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">aidge_tensor</span> <span class="o">=</span> <span class="kc">None</span>
+<span class="k">try</span><span class="p">:</span>
     <span class="n">number_np</span> <span class="o">=</span> <span class="n">canvas</span><span class="o">.</span><span class="n">get_image_data</span><span class="p">()</span>
     <span class="c1"># We got a numpy array with the shape of (28,28,4)</span>
     <span class="c1"># Transform it to (28,28)</span>
     <span class="n">x</span> <span class="o">=</span> <span class="n">number_np</span><span class="p">[:,</span> <span class="p">:,</span> <span class="mi">3</span><span class="p">]</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="s2">&quot;float32&quot;</span><span class="p">)</span>
-    <span class="c1"># Convert from [0, 255] to [0, 1] and export it</span>
-    <span class="n">aidge_core</span><span class="o">.</span><span class="n">export_utils</span><span class="o">.</span><span class="n">generate_input_file</span><span class="p">(</span><span class="n">export_folder</span><span class="o">=</span><span class="s2">&quot;lenet_export_fp32&quot;</span><span class="p">,</span> <span class="n">array_name</span><span class="o">=</span><span class="s2">&quot;feature_feature_0_Conv_input_0&quot;</span><span class="p">,</span> <span class="n">tensor</span><span class="o">=</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">Tensor</span><span class="p">(</span><span class="n">x</span> <span class="o">/</span> <span class="mi">255</span><span class="p">))</span>
-
+    <span class="n">aidge_tensor</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">Tensor</span><span class="p">(</span><span class="n">x</span> <span class="o">/</span> <span class="mi">255</span><span class="p">)</span>
 <span class="k">except</span><span class="p">:</span>
     <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Please draw a number in the previous cell before running this one.&quot;</span><span class="p">)</span>
 </pre></div>
@@ -698,6 +679,26 @@ gen : lenet_export_fp32/data/feature_feature_0_Conv_input_0.h
 Please draw a number in the previous cell before running this one.
 </pre></div></div>
 </div>
+<p>Generate a main that will do an inference on the drawing.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="n">aidge_tensor</span><span class="p">:</span>
+    <span class="n">aidge_core</span><span class="o">.</span><span class="n">export_utils</span><span class="o">.</span><span class="n">generate_main_cpp</span><span class="p">(</span><span class="n">export_folder</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">inputs_tensor</span><span class="o">=</span><span class="n">aidge_tensor</span><span class="p">)</span>
+<span class="k">else</span><span class="p">:</span>
+    <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Please draw a number before generating the export.&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+Please draw a number before generating the export.
+</pre></div></div>
+</div>
 </section>
 <section id="Compile-the-export-and-test-it">
 <h3>Compile the export and test it<a class="headerlink" href="#Compile-the-export-and-test-it" title="Link to this heading">#</a></h3>
@@ -715,21 +716,17 @@ Please draw a number in the previous cell before running this one.
 <div class="output_area docutils container">
 <div class="highlight"><pre>
 make[1]: Entering directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/lenet_export_fp32&#39;
-g++  -O2 -Wall -Wextra -MMD -fopenmp -I. -I./dnn -I./dnn/include -I./dnn/layers -I./dnn/parameters -c main.cpp -o build/./main.o
-In file included from <span class="ansi-bold">main.cpp:4</span>:
-<span class="ansi-bold">data/feature_feature_0_Conv_input_0.h:4:393:</span> <span class="ansi-red-intense-fg ansi-bold">error: </span>‘<span class="ansi-bold">nan</span>’ was not declared in this scope
-    4 |  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.6624670822171524e-44, <span class="ansi-red-intense-fg ansi-bold">nan</span>, 1.6815581571897805e-44, 2.942726775082116e-44, 1.0089348943138683e-43, 0.0, 4.273960316190692e-43, 0.0, 1.425184075619792e+37, 4.072873986560081e-41, 1.425184075619792e+37, 4.072873986560081e-41, 1.0166547672625598e+37, 4.072873986560081e-41, 1.0166547672625598e+37, 4.072873986560081e-41, 1551.88671875, 4.072873986560081e-41, 4.8130715755729514e+36, 4.072873986560081e-41, 4.420287501791034e+36, 4.072873986560081e-41, 4.8130715755729514e+36, 4.072873986560081e-41, 4.8130715755729514e+36, 4.072873986560081e-41, 1550.3515625, 4.072873986560081e-41, 7.948017145358971e+36, 4.072873986560081e-41, 4.276196193364292e+36, 4.072873986560081e-41, 1876.568359375, 4.072873986560081e-41, 4.2459246970308416e+36, 4.072873986560081e-41, 1.0166547672625598e+37, 4.072873986560081e-41, 7.948017145358971e+36, 4.072873986560081e-41, 4.2459246970308416e+36, 4.072873986560081e-41, 7.948017145358971e+36, 4.072873986560081e-41, 4.2459246970308416e+36, 4.072873986560081e-41, 7.948017145358971e+36, 4.072873986560081e-41, 1551.294921875, 4.072873986560081e-41, 7.946637941505923e+36, 4.072873986560081e-41, 4.420287501791034e+36, 4.072873986560081e-41, 7.946637941505923e+36, 4.072873986560081e-41, 7.946637941505923e+36, 4.072873986560081e-41, 1551.21875, 4.072873986560081e-41, 8.913581536950412e+36, 4.072873986560081e-41, 4.276196193364292e+36, 4.072873986560081e-41, 0.0, 0.0, 9.10844001811131e-44, 0.0, 3.5748036475435896e-12, 3.2931915210097526e-41, 1.425190160342673e+37, 4.072873986560081e-41, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 7.174648137343064e-43, 0.0, 2.780176153220437e-42, 0.0, 0.0, 0.0, -6.044944005260339e+35, 3.29305139116332e-41, 2.6862891561106743e-42, 0.0, nan, nan, 3.194960498660583e-43, 0.0, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 6.792110083058292e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 8.895038568559888e-15, 2.7603642276376897e+20, 1.4328903369374592e-19, 2.0108239825872136e-19, 3170.010498046875, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 12691.8427734375, 0.0032389953266829252, 6.646346445936972e-33, 1.3563156426940112e-19, 1.1578380784113246e+27, 1.6676381918920442e+19, 4.9171690175937894e+33, 0.013943285681307316, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 223.25900268554688, 865096192.0, 3.0027241543911787e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 239651504128.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 1.4864516498717671e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 245527325179904.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 1.400123274514609e+19, 14249442304.0, 3.0031717130479807e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 1.5300222170479722e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 245553296310272.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 785.0205078125, 1.4361496526079918e+19, 1.170372808069421e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 773.2557983398438, 52809.265625, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298307595397904e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3253.9560546875, 51722568.0, 808069.9375, 3.0167133981823246e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14634063.0, 3301.141845703125, 882164.75, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14985280512.0, 836852.9375, 3835896004608.0, 2.8039985697919656e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 13.956130027770996, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 8.888750195959472e-15, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 6.2090808306983485e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 2.6447895466691317e+20, 7.156120728699916e+22, 2.6448006297463397e+20, 7.156120728699916e+22, 234038768.0, 6.451841121074237e+28, 6.914624536135793e+28, 3.048128113421378e+32, 3.9162642855201935e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 10250.5673828125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 3631340322816.0, 202659104.0, 1.8917654862266218e+23, 1.7751997780891114e+28, 3.031376270124142e+32, 7.7782809489959315e+31, 6.793872341592482e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 7.873816070105814e+31, 2.170740716611165e-18, 0.002580789616331458, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.1431658257577701e+33, 7.774188493311372e+31, 1.9368016799321393e+31, 7.31620560934271e+28, 1.0572354386536535e-14, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3745664512.0, 14316288868352.0, 8.297171039297452e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 228689.328125, 204069.078125, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 14250483384320.0, 882165.25, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 12691.8427734375, 3.016549466813845e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 1.4167034451460096e+16, 1.170370223130007e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 3746578688.0, 3380.39208984375, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 959124144128.0, 2.8045502118573262e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 861509.1875, 8.294526177008102e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 2.3677763001830605e+20, 7.406419809684859e+28, 3.0344099969329157e+32, 7.7782809489959315e+31, 8.29059635245651e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 1.1703712571057726e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 2.737577596819939e+20, 744.913330078125, 2.8572841821150455e+32, 0.00258567463606596, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.0996337309183355e+27, 1.2737084302582354e-14, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 9.011490303617355e-33, 1.3563127992606555e-19, 1.7728632692125496e+28, 1.1093918953717347e-32, 1.3563156426940112e-19, 6.653328882380856e-33, 1.2754205139829522e+19, 2.780176153220437e-42, 0.0, 1.884746434516879e-42, 0.0, 3.785687041624186e-12, 3.2931915210097526e-41, 4.041059153969684e-12, 3.2931915210097526e-41, 0.0, 0.0, 0.0, 0.0, 1551.84033203125, 4.072873986560081e-41, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 1.098312206172895e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 1.4939362661438726e-19, 1.9848806511142385e+23, 7.1443279863152655e+31, 3.0979603668382307e+27, 5.69952342700103e-13, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 14250522181632.0, 3664702865408.0, 3744489216.0, 3380.39208984375, 6.655616688261144e-33, 1.3555848803216089e-19, 4.1528322667931175e+21, 2.840936087877394e+20, 1.8523600588218255e+28, 4.7418032899659543e+30, 1.7884540591926476e+22, 12.766414642333984, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 51.59309768676758, 3320303058944.0, 1.170369706142124e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 51150976.0, 865588.0625, 211834470400.0, 12.766448020935059, 12884.8310546875, 1.515159678570673e+19, 3365.9501953125, 13.958324432373047, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3.101367854591673e+21, 1.9282594100907423e+31, 6.888753277821998e+22, 1.0995075551888714e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 57139.37109375, 1.7108441610124788e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 1.0983123537468476e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 3365.958251953125, 50662732.0, 4.4254777929264924e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 160.1651153564453, 907333599232.0, 3220.392822265625, 51215688.0, 865588.0625, 211834470400.0, 239664087040.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 227982950400.0, 1.7385771295049327e-19, 7.122052594949249e+28, 1.3233649744613663e-14, 7.77811750222512e+31, 1.9368016799321393e+31, 2.7253615828306965e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 1.7859880630426323e+31, 1.7409431772977156e+25, 2.081010990195864e-07, 1.1089319967361296e+27, 3.034411737786096e+32, 7.7782809489959315e+31, 5.520268162362513e+31, 2.30862377825769e-12, 3.3492807700068108e-18, 1.1708629125823588e-19, 1.3563156426940112e-19, 1.2686448208222805e+31, 3849740544.0, 3.048128113421378e+32, 2.2248365825721957e+23, 7.1443279863152655e+31, 1.1702369695032034e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 160.12548828125, 907333599232.0, 3220.392822265625
-      |                                                             <span class="ansi-red-intense-fg ansi-bold">^~~</span>
-
-<span class="ansi-bold">data/feature_feature_0_Conv_input_0.h:4:2069:</span> <span class="ansi-red-intense-fg ansi-bold">error: </span>‘<span class="ansi-bold">nan</span>’ was not declared in this scope
-    4 | 339e+35, 3.29305139116332e-41, 2.6862891561106743e-42, 0.0, <span class="ansi-red-intense-fg ansi-bold">nan</span>, nan, 3.194960498660583e-43, 0.0, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 6.792110083058292e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 8.895038568559888e-15, 2.7603642276376897e+20, 1.4328903369374592e-19, 2.0108239825872136e-19, 3170.010498046875, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 12691.8427734375, 0.0032389953266829252, 6.646346445936972e-33, 1.3563156426940112e-19, 1.1578380784113246e+27, 1.6676381918920442e+19, 4.9171690175937894e+33, 0.013943285681307316, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 223.25900268554688, 865096192.0, 3.0027241543911787e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 239651504128.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 1.4864516498717671e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 245527325179904.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 1.400123274514609e+19, 14249442304.0, 3.0031717130479807e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 1.5300222170479722e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 245553296310272.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 785.0205078125, 1.4361496526079918e+19, 1.170372808069421e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 773.2557983398438, 52809.265625, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298307595397904e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3253.9560546875, 51722568.0, 808069.9375, 3.0167133981823246e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14634063.0, 3301.141845703125, 882164.75, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14985280512.0, 836852.9375, 3835896004608.0, 2.8039985697919656e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 13.956130027770996, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 8.888750195959472e-15, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 6.2090808306983485e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 2.6447895466691317e+20, 7.156120728699916e+22, 2.6448006297463397e+20, 7.156120728699916e+22, 234038768.0, 6.451841121074237e+28, 6.914624536135793e+28, 3.048128113421378e+32, 3.9162642855201935e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 10250.5673828125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 3631340322816.0, 202659104.0, 1.8917654862266218e+23, 1.7751997780891114e+28, 3.031376270124142e+32, 7.7782809489959315e+31, 6.793872341592482e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 7.873816070105814e+31, 2.170740716611165e-18, 0.002580789616331458, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.1431658257577701e+33, 7.774188493311372e+31, 1.9368016799321393e+31, 7.31620560934271e+28, 1.0572354386536535e-14, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3745664512.0, 14316288868352.0, 8.297171039297452e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 228689.328125, 204069.078125, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 14250483384320.0, 882165.25, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 12691.8427734375, 3.016549466813845e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 1.4167034451460096e+16, 1.170370223130007e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 3746578688.0, 3380.39208984375, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 959124144128.0, 2.8045502118573262e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 861509.1875, 8.294526177008102e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 2.3677763001830605e+20, 7.406419809684859e+28, 3.0344099969329157e+32, 7.7782809489959315e+31, 8.29059635245651e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 1.1703712571057726e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 2.737577596819939e+20, 744.913330078125, 2.8572841821150455e+32, 0.00258567463606596, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.0996337309183355e+27, 1.2737084302582354e-14, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 9.011490303617355e-33, 1.3563127992606555e-19, 1.7728632692125496e+28, 1.1093918953717347e-32, 1.3563156426940112e-19, 6.653328882380856e-33, 1.2754205139829522e+19, 2.780176153220437e-42, 0.0, 1.884746434516879e-42, 0.0, 3.785687041624186e-12, 3.2931915210097526e-41, 4.041059153969684e-12, 3.2931915210097526e-41, 0.0, 0.0, 0.0, 0.0, 1551.84033203125, 4.072873986560081e-41, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 1.098312206172895e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 1.4939362661438726e-19, 1.9848806511142385e+23, 7.1443279863152655e+31, 3.0979603668382307e+27, 5.69952342700103e-13, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 14250522181632.0, 3664702865408.0, 3744489216.0, 3380.39208984375, 6.655616688261144e-33, 1.3555848803216089e-19, 4.1528322667931175e+21, 2.840936087877394e+20, 1.8523600588218255e+28, 4.7418032899659543e+30, 1.7884540591926476e+22, 12.766414642333984, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 51.59309768676758, 3320303058944.0, 1.170369706142124e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 51150976.0, 865588.0625, 211834470400.0, 12.766448020935059, 12884.8310546875, 1.515159678570673e+19, 3365.9501953125, 13.958324432373047, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3.101367854591673e+21, 1.9282594100907423e+31, 6.888753277821998e+22, 1.0995075551888714e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 57139.37109375, 1.7108441610124788e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 1.0983123537468476e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 3365.958251953125, 50662732.0, 4.4254777929264924e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 160.1651153564453, 907333599232.0, 3220.392822265625, 51215688.0, 865588.0625, 211834470400.0, 239664087040.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 227982950400.0, 1.7385771295049327e-19, 7.122052594949249e+28, 1.3233649744613663e-14, 7.77811750222512e+31, 1.9368016799321393e+31, 2.7253615828306965e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 1.7859880630426323e+31, 1.7409431772977156e+25, 2.081010990195864e-07, 1.1089319967361296e+27, 3.034411737786096e+32, 7.7782809489959315e+31, 5.520268162362513e+31, 2.30862377825769e-12, 3.3492807700068108e-18, 1.1708629125823588e-19, 1.3563156426940112e-19, 1.2686448208222805e+31, 3849740544.0, 3.048128113421378e+32, 2.2248365825721957e+23, 7.1443279863152655e+31, 1.1702369695032034e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 160.12548828125, 907333599232.0, 3220.392822265625
-      |                                                             <span class="ansi-red-intense-fg ansi-bold">^~~</span>
-
-<span class="ansi-bold">data/feature_feature_0_Conv_input_0.h:4:2074:</span> <span class="ansi-red-intense-fg ansi-bold">error: </span>‘<span class="ansi-bold">nan</span>’ was not declared in this scope
-    4 | 35, 3.29305139116332e-41, 2.6862891561106743e-42, 0.0, nan, <span class="ansi-red-intense-fg ansi-bold">nan</span>, 3.194960498660583e-43, 0.0, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 6.792110083058292e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 8.895038568559888e-15, 2.7603642276376897e+20, 1.4328903369374592e-19, 2.0108239825872136e-19, 3170.010498046875, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 12691.8427734375, 0.0032389953266829252, 6.646346445936972e-33, 1.3563156426940112e-19, 1.1578380784113246e+27, 1.6676381918920442e+19, 4.9171690175937894e+33, 0.013943285681307316, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 223.25900268554688, 865096192.0, 3.0027241543911787e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 239651504128.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 1.4864516498717671e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 245527325179904.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 1.400123274514609e+19, 14249442304.0, 3.0031717130479807e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 1.5300222170479722e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 245553296310272.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 785.0205078125, 1.4361496526079918e+19, 1.170372808069421e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 773.2557983398438, 52809.265625, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298307595397904e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3253.9560546875, 51722568.0, 808069.9375, 3.0167133981823246e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14634063.0, 3301.141845703125, 882164.75, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14985280512.0, 836852.9375, 3835896004608.0, 2.8039985697919656e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 13.956130027770996, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 8.888750195959472e-15, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 6.2090808306983485e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 2.6447895466691317e+20, 7.156120728699916e+22, 2.6448006297463397e+20, 7.156120728699916e+22, 234038768.0, 6.451841121074237e+28, 6.914624536135793e+28, 3.048128113421378e+32, 3.9162642855201935e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 10250.5673828125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 3631340322816.0, 202659104.0, 1.8917654862266218e+23, 1.7751997780891114e+28, 3.031376270124142e+32, 7.7782809489959315e+31, 6.793872341592482e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 7.873816070105814e+31, 2.170740716611165e-18, 0.002580789616331458, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.1431658257577701e+33, 7.774188493311372e+31, 1.9368016799321393e+31, 7.31620560934271e+28, 1.0572354386536535e-14, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3745664512.0, 14316288868352.0, 8.297171039297452e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 228689.328125, 204069.078125, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 14250483384320.0, 882165.25, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 12691.8427734375, 3.016549466813845e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 1.4167034451460096e+16, 1.170370223130007e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 3746578688.0, 3380.39208984375, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 959124144128.0, 2.8045502118573262e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 861509.1875, 8.294526177008102e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 2.3677763001830605e+20, 7.406419809684859e+28, 3.0344099969329157e+32, 7.7782809489959315e+31, 8.29059635245651e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 1.1703712571057726e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 2.737577596819939e+20, 744.913330078125, 2.8572841821150455e+32, 0.00258567463606596, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.0996337309183355e+27, 1.2737084302582354e-14, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 9.011490303617355e-33, 1.3563127992606555e-19, 1.7728632692125496e+28, 1.1093918953717347e-32, 1.3563156426940112e-19, 6.653328882380856e-33, 1.2754205139829522e+19, 2.780176153220437e-42, 0.0, 1.884746434516879e-42, 0.0, 3.785687041624186e-12, 3.2931915210097526e-41, 4.041059153969684e-12, 3.2931915210097526e-41, 0.0, 0.0, 0.0, 0.0, 1551.84033203125, 4.072873986560081e-41, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 1.098312206172895e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 1.4939362661438726e-19, 1.9848806511142385e+23, 7.1443279863152655e+31, 3.0979603668382307e+27, 5.69952342700103e-13, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 14250522181632.0, 3664702865408.0, 3744489216.0, 3380.39208984375, 6.655616688261144e-33, 1.3555848803216089e-19, 4.1528322667931175e+21, 2.840936087877394e+20, 1.8523600588218255e+28, 4.7418032899659543e+30, 1.7884540591926476e+22, 12.766414642333984, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 51.59309768676758, 3320303058944.0, 1.170369706142124e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 51150976.0, 865588.0625, 211834470400.0, 12.766448020935059, 12884.8310546875, 1.515159678570673e+19, 3365.9501953125, 13.958324432373047, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3.101367854591673e+21, 1.9282594100907423e+31, 6.888753277821998e+22, 1.0995075551888714e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 57139.37109375, 1.7108441610124788e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 1.0983123537468476e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 3365.958251953125, 50662732.0, 4.4254777929264924e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 160.1651153564453, 907333599232.0, 3220.392822265625, 51215688.0, 865588.0625, 211834470400.0, 239664087040.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 227982950400.0, 1.7385771295049327e-19, 7.122052594949249e+28, 1.3233649744613663e-14, 7.77811750222512e+31, 1.9368016799321393e+31, 2.7253615828306965e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 1.7859880630426323e+31, 1.7409431772977156e+25, 2.081010990195864e-07, 1.1089319967361296e+27, 3.034411737786096e+32, 7.7782809489959315e+31, 5.520268162362513e+31, 2.30862377825769e-12, 3.3492807700068108e-18, 1.1708629125823588e-19, 1.3563156426940112e-19, 1.2686448208222805e+31, 3849740544.0, 3.048128113421378e+32, 2.2248365825721957e+23, 7.1443279863152655e+31, 1.1702369695032034e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 160.12548828125, 907333599232.0, 3220.392822265625
-      |                                                             <span class="ansi-red-intense-fg ansi-bold">^~~</span>
-
-make[1]: *** [Makefile:23: build/./main.o] Error 1
+g++  -O2 -Wall -Wextra -MMD -fopenmp -I. -I./dnn -I./dnn/include -I./dnn/layers -I./dnn/parameters -c dnn/src/forward.cpp -o build/./dnn/src/forward.o
+In file included from <span class="ansi-bold">./dnn/include/kernels/fullyconnected.hpp:5</span>,
+                 from <span class="ansi-bold">dnn/src/forward.cpp:16</span>:
+<span class="ansi-bold">./dnn/include/network/rescaling_utils.hpp:11:16:</span> <span class="ansi-magenta-intense-fg ansi-bold">warning: </span>‘<span class="ansi-bold">int64_t smlal(int32_t, int32_t, uint32_t, uint32_t)</span>’ defined but not used [<span class="ansi-magenta-intense-fg ansi-bold">]8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-function-Wunused-function]8;;</span>]
+   11 | static int64_t <span class="ansi-magenta-intense-fg ansi-bold">smlal</span>(int32_t lhs, int32_t rhs,
+      |                <span class="ansi-magenta-intense-fg ansi-bold">^~~~~</span>
+g++  build/./dnn/src/forward.o  -fopenmp -o bin/run_export
+/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o: in function `_start&#39;:
+(.text+0x1b): undefined reference to `main&#39;
+collect2: error: ld returned 1 exit status
+make[1]: *** [Makefile:19: build] Error 1
 make[1]: Leaving directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/lenet_export_fp32&#39;
 </pre></div></div>
 </div>
@@ -750,7 +747,7 @@ make[1]: Leaving directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial
 </pre></div></div>
 </div>
 <script type="application/vnd.jupyter.widget-state+json">
-{"state": {"4844bdbba9b04f56bc42e25bbdbca74e": {"model_name": "CanvasManagerModel", "model_module": "ipycanvas", "model_module_version": "^0.13", "state": {"_model_module": "ipycanvas", "_model_module_version": "^0.13", "_model_name": "CanvasManagerModel", "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null}}, "f4b921933e1942f797e95099977c42df": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "6e2797c1af5d43afb7abb8d906112889": {"model_name": "RoughCanvasModel", "model_module": "ipycanvas", "model_module_version": "^0.13", "state": {"_canvas_manager": "IPY_MODEL_4844bdbba9b04f56bc42e25bbdbca74e", "_dom_classes": [], "_model_module": "ipycanvas", "_model_module_version": "^0.13", "_model_name": "RoughCanvasModel", "_send_client_ready_event": true, "_view_count": null, "_view_module": "ipycanvas", "_view_module_version": "^0.13", "_view_name": "CanvasView", "height": 28, "image_data": null, "layout": "IPY_MODEL_f4b921933e1942f797e95099977c42df", "sync_image_data": true, "tabbable": null, "tooltip": null, "width": 28}}, "47c2b64028af4c9783ecc7f67f86aa9a": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "ac49bdb9ed7d4658bbfac9a664efd0fa": {"model_name": "ButtonStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "button_color": null, "font_family": null, "font_size": null, "font_style": null, "font_variant": null, "font_weight": null, "text_color": null, "text_decoration": null}}, "8f98ec525f254b2ba716ef5603f00e1a": {"model_name": "ButtonModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ButtonView", "button_style": "", "description": "Generate PNG", "disabled": false, "icon": "", "layout": "IPY_MODEL_47c2b64028af4c9783ecc7f67f86aa9a", "style": "IPY_MODEL_ac49bdb9ed7d4658bbfac9a664efd0fa", "tabbable": null, "tooltip": null}}, "cd185cf741fa46889a9fe191d3ef6d3d": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "2fbdec33a15648e0923012c8d2ea778b": {"model_name": "ButtonStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "button_color": null, "font_family": null, "font_size": null, "font_style": null, "font_variant": null, "font_weight": null, "text_color": null, "text_decoration": null}}, "3ea4b9ad78754973b741562a077d73c5": {"model_name": "ButtonModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ButtonView", "button_style": "", "description": "Clear", "disabled": false, "icon": "", "layout": "IPY_MODEL_cd185cf741fa46889a9fe191d3ef6d3d", "style": "IPY_MODEL_2fbdec33a15648e0923012c8d2ea778b", "tabbable": null, "tooltip": null}}, "42572276135644a69e11d945c339463c": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "26c41596eacd435b996e0edc0da387fe": {"model_name": "HBoxModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_8f98ec525f254b2ba716ef5603f00e1a", "IPY_MODEL_3ea4b9ad78754973b741562a077d73c5"], "layout": "IPY_MODEL_42572276135644a69e11d945c339463c", "tabbable": null, "tooltip": null}}, "3a95385e564f4e218265dad660909928": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": "auto", "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "300px"}}, "44dd172846d746d787387796b29867aa": {"model_name": "VBoxModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "VBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "VBoxView", "box_style": "", "children": ["IPY_MODEL_6e2797c1af5d43afb7abb8d906112889", "IPY_MODEL_26c41596eacd435b996e0edc0da387fe"], "layout": "IPY_MODEL_3a95385e564f4e218265dad660909928", "tabbable": null, "tooltip": null}}}, "version_major": 2, "version_minor": 0}
+{"state": {"8d182b3f098c4561a9fb2663ca08746b": {"model_name": "CanvasManagerModel", "model_module": "ipycanvas", "model_module_version": "^0.13", "state": {"_model_module": "ipycanvas", "_model_module_version": "^0.13", "_model_name": "CanvasManagerModel", "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null}}, "5fea29daefab4368a478fd02a570f514": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "c85fb2bb0f49435484a23d795bdbfaf0": {"model_name": "RoughCanvasModel", "model_module": "ipycanvas", "model_module_version": "^0.13", "state": {"_canvas_manager": "IPY_MODEL_8d182b3f098c4561a9fb2663ca08746b", "_dom_classes": [], "_model_module": "ipycanvas", "_model_module_version": "^0.13", "_model_name": "RoughCanvasModel", "_send_client_ready_event": true, "_view_count": null, "_view_module": "ipycanvas", "_view_module_version": "^0.13", "_view_name": "CanvasView", "height": 28, "image_data": null, "layout": "IPY_MODEL_5fea29daefab4368a478fd02a570f514", "sync_image_data": true, "tabbable": null, "tooltip": null, "width": 28}}, "ae63052964eb4452a512fbc579e0c3b2": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "9e1993e7b513461bac55cd4b1fcf5a90": {"model_name": "ButtonStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "button_color": null, "font_family": null, "font_size": null, "font_style": null, "font_variant": null, "font_weight": null, "text_color": null, "text_decoration": null}}, "3a3c5f3c51c242abaa7dbbe034d13617": {"model_name": "ButtonModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ButtonView", "button_style": "", "description": "Generate PNG", "disabled": false, "icon": "", "layout": "IPY_MODEL_ae63052964eb4452a512fbc579e0c3b2", "style": "IPY_MODEL_9e1993e7b513461bac55cd4b1fcf5a90", "tabbable": null, "tooltip": null}}, "7cf1bcefe6fa48949d2e2248a642ebe4": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "ff271f40b47a498788c39b774153150a": {"model_name": "ButtonStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "button_color": null, "font_family": null, "font_size": null, "font_style": null, "font_variant": null, "font_weight": null, "text_color": null, "text_decoration": null}}, "6812b6691b07470bb8ecbe93c0b7838f": {"model_name": "ButtonModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ButtonView", "button_style": "", "description": "Clear", "disabled": false, "icon": "", "layout": "IPY_MODEL_7cf1bcefe6fa48949d2e2248a642ebe4", "style": "IPY_MODEL_ff271f40b47a498788c39b774153150a", "tabbable": null, "tooltip": null}}, "cbde1e32a4ae4f6f9f7b711c70c4094e": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "d46354a5c3db4b72869a11baeb9153d3": {"model_name": "HBoxModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_3a3c5f3c51c242abaa7dbbe034d13617", "IPY_MODEL_6812b6691b07470bb8ecbe93c0b7838f"], "layout": "IPY_MODEL_cbde1e32a4ae4f6f9f7b711c70c4094e", "tabbable": null, "tooltip": null}}, "3bc9a3d9e39b41b4a0119c31c3568d2b": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": "auto", "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "300px"}}, "a6d4edc48ab74af9a004a0b7d66dbd77": {"model_name": "VBoxModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "VBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "VBoxView", "box_style": "", "children": ["IPY_MODEL_c85fb2bb0f49435484a23d795bdbfaf0", "IPY_MODEL_d46354a5c3db4b72869a11baeb9153d3"], "layout": "IPY_MODEL_3bc9a3d9e39b41b4a0119c31c3568d2b", "tabbable": null, "tooltip": null}}}, "version_major": 2, "version_minor": 0}
 </script></section>
 </section>
 </section>
@@ -775,11 +772,11 @@ make[1]: Leaving directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial
       </div>
     </a>
     <a class="right-next"
-       href="../API/index.html"
+       href="export_cpp_quant.html"
        title="next page">
       <div class="prev-next-info">
         <p class="prev-next-subtitle">next</p>
-        <p class="prev-next-title">API</p>
+        <p class="prev-next-title">Quantized model C++ export</p>
       </div>
       <i class="fa-solid fa-angle-right"></i>
     </a>
diff --git a/source/Tutorial/export_cpp.ipynb b/source/Tutorial/export_cpp.ipynb
index c46e4b120d16ff0e6017f8323872e56a1807bc7a..12c59968c064a6589f825fcea10e45244e05e591 100644
--- a/source/Tutorial/export_cpp.ipynb
+++ b/source/Tutorial/export_cpp.ipynb
@@ -4,7 +4,7 @@
    "cell_type": "markdown",
    "metadata": {},
    "source": [
-    "# Export a MNIST model to a CPP standalone project"
+    "# Export 101"
    ]
   },
   {
@@ -12,10 +12,10 @@
    "execution_count": 1,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:46.339852Z",
-     "iopub.status.busy": "2025-05-11T15:21:46.339603Z",
-     "iopub.status.idle": "2025-05-11T15:21:47.326474Z",
-     "shell.execute_reply": "2025-05-11T15:21:47.326082Z"
+     "iopub.execute_input": "2025-05-19T10:05:12.331886Z",
+     "iopub.status.busy": "2025-05-19T10:05:12.331789Z",
+     "iopub.status.idle": "2025-05-19T10:05:13.736670Z",
+     "shell.execute_reply": "2025-05-19T10:05:13.736256Z"
     }
    },
    "outputs": [
@@ -24,7 +24,7 @@
      "output_type": "stream",
      "text": [
       "Requirement already satisfied: requests in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.32.3)\r\n",
-      "Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.2.5)\r\n"
+      "Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.2.6)\r\n"
      ]
     },
     {
@@ -46,14 +46,26 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "  Downloading ipycanvas-0.13.3-py2.py3-none-any.whl.metadata (6.3 kB)\r\n",
+      "  Downloading ipycanvas-0.13.3-py2.py3-none-any.whl.metadata (6.3 kB)\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
       "Requirement already satisfied: charset-normalizer<4,>=2 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (3.4.2)\r\n",
       "Requirement already satisfied: idna<4,>=2.5 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (3.10)\r\n",
       "Requirement already satisfied: urllib3<3,>=1.21.1 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (2.4.0)\r\n",
       "Requirement already satisfied: certifi>=2017.4.17 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (2025.4.26)\r\n",
       "Requirement already satisfied: comm>=0.1.3 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (0.2.2)\r\n",
       "Requirement already satisfied: ipython>=6.1.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (8.36.0)\r\n",
-      "Requirement already satisfied: traitlets>=4.3.1 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (5.14.3)\r\n",
+      "Requirement already satisfied: traitlets>=4.3.1 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (5.14.3)\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
       "Collecting widgetsnbextension~=4.0.14 (from ipywidgets)\r\n"
      ]
     },
@@ -61,8 +73,20 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "  Downloading widgetsnbextension-4.0.14-py3-none-any.whl.metadata (1.6 kB)\r\n",
-      "Collecting jupyterlab_widgets~=3.0.15 (from ipywidgets)\r\n",
+      "  Downloading widgetsnbextension-4.0.14-py3-none-any.whl.metadata (1.6 kB)\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Collecting jupyterlab_widgets~=3.0.15 (from ipywidgets)\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
       "  Downloading jupyterlab_widgets-3.0.15-py3-none-any.whl.metadata (20 kB)\r\n"
      ]
     },
@@ -85,7 +109,13 @@
       "Requirement already satisfied: ptyprocess>=0.5 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from pexpect>4.3->ipython>=6.1.0->ipywidgets) (0.7.0)\r\n",
       "Requirement already satisfied: executing>=1.2.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (2.2.0)\r\n",
       "Requirement already satisfied: asttokens>=2.1.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (3.0.0)\r\n",
-      "Requirement already satisfied: pure-eval in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (0.2.3)\r\n",
+      "Requirement already satisfied: pure-eval in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (0.2.3)\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
       "Downloading ipywidgets-8.1.7-py3-none-any.whl (139 kB)\r\n"
      ]
     },
@@ -101,8 +131,15 @@
      "output_type": "stream",
      "text": [
       "Downloading widgetsnbextension-4.0.14-py3-none-any.whl (2.2 MB)\r\n",
-      "\u001b[?25l   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/2.2 MB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.2/2.2 MB\u001b[0m \u001b[31m53.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n",
+      "\u001b[?25l   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/2.2 MB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.2/2.2 MB\u001b[0m \u001b[31m34.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n",
       "\u001b[?25h"
      ]
     },
@@ -155,48 +192,43 @@
    "execution_count": 2,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:47.327663Z",
-     "iopub.status.busy": "2025-05-11T15:21:47.327514Z",
-     "iopub.status.idle": "2025-05-11T15:21:47.374054Z",
-     "shell.execute_reply": "2025-05-11T15:21:47.373739Z"
-    }
-   },
-   "outputs": [],
-   "source": [
-    "import os\n",
-    "import requests"
-   ]
-  },
-  {
-   "cell_type": "code",
-   "execution_count": 3,
-   "metadata": {
-    "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:47.375738Z",
-     "iopub.status.busy": "2025-05-11T15:21:47.375612Z",
-     "iopub.status.idle": "2025-05-11T15:21:47.563707Z",
-     "shell.execute_reply": "2025-05-11T15:21:47.563422Z"
+     "iopub.execute_input": "2025-05-19T10:05:13.737867Z",
+     "iopub.status.busy": "2025-05-19T10:05:13.737741Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.033964Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.033577Z"
     }
    },
    "outputs": [
     {
-     "name": "stdout",
+     "name": "stderr",
      "output_type": "stream",
      "text": [
-      "ONNX model downloaded successfully.\n"
+      "\r",
+      "lenet_mnist.onnx:   0%|          | 0.00/349k [00:00<?, ?B/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "lenet_mnist.onnx: 100%|██████████| 349k/349k [00:00<00:00, 8.07MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\n"
      ]
     }
    ],
    "source": [
-    "# Download onnx file if it has not been done before\n",
-    "if not os.path.isfile(\"./lenet_mnist.onnx\"):\n",
-    "    response = requests.get(\"https://huggingface.co/vtemplier/LeNet_MNIST/resolve/main/lenet_mnist.onnx?download=true\")\n",
-    "    if response.status_code == 200:\n",
-    "        with open(\"lenet_mnist.onnx\", 'wb') as f:\n",
-    "            f.write(response.content)\n",
-    "        print(\"ONNX model downloaded successfully.\")\n",
-    "    else:\n",
-    "        print(\"Failed to download ONNX model. Status code:\", response.status_code)"
+    "import aidge_core\n",
+    "\n",
+    "file_url = \"https://huggingface.co/EclipseAidge/LeNet/resolve/main/lenet_mnist.onnx?download=true\"\n",
+    "file_path = \"lenet_mnist.onnx\"\n",
+    "aidge_core.utils.download_file(file_path, file_url)"
    ]
   },
   {
@@ -208,18 +240,17 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 4,
+   "execution_count": 3,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:47.564688Z",
-     "iopub.status.busy": "2025-05-11T15:21:47.564564Z",
-     "iopub.status.idle": "2025-05-11T15:21:47.800291Z",
-     "shell.execute_reply": "2025-05-11T15:21:47.799914Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.035338Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.035030Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.125348Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.125035Z"
     }
    },
    "outputs": [],
    "source": [
-    "import aidge_core\n",
     "import aidge_backend_cpu\n",
     "import aidge_onnx\n",
     "import aidge_export_cpp"
@@ -227,13 +258,13 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 5,
+   "execution_count": 4,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:47.801825Z",
-     "iopub.status.busy": "2025-05-11T15:21:47.801616Z",
-     "iopub.status.idle": "2025-05-11T15:21:47.836605Z",
-     "shell.execute_reply": "2025-05-11T15:21:47.836327Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.126701Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.126554Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.136686Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.136414Z"
     }
    },
    "outputs": [],
@@ -243,13 +274,13 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 6,
+   "execution_count": 5,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:47.837721Z",
-     "iopub.status.busy": "2025-05-11T15:21:47.837620Z",
-     "iopub.status.idle": "2025-05-11T15:21:47.839570Z",
-     "shell.execute_reply": "2025-05-11T15:21:47.839359Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.137553Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.137435Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.139346Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.139111Z"
     }
    },
    "outputs": [],
@@ -263,13 +294,13 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 7,
+   "execution_count": 6,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:47.840388Z",
-     "iopub.status.busy": "2025-05-11T15:21:47.840304Z",
-     "iopub.status.idle": "2025-05-11T15:21:47.952715Z",
-     "shell.execute_reply": "2025-05-11T15:21:47.952351Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.140229Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.140080Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.254889Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.254389Z"
     }
    },
    "outputs": [],
@@ -279,13 +310,13 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 8,
+   "execution_count": 7,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:47.954033Z",
-     "iopub.status.busy": "2025-05-11T15:21:47.953876Z",
-     "iopub.status.idle": "2025-05-11T15:21:47.955927Z",
-     "shell.execute_reply": "2025-05-11T15:21:47.955713Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.256280Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.256165Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.258455Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.258184Z"
     }
    },
    "outputs": [],
@@ -304,24 +335,16 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 9,
+   "execution_count": 8,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:47.956797Z",
-     "iopub.status.busy": "2025-05-11T15:21:47.956710Z",
-     "iopub.status.idle": "2025-05-11T15:21:48.272305Z",
-     "shell.execute_reply": "2025-05-11T15:21:48.272020Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.259349Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.259134Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.585679Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.585286Z"
     }
    },
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "gen : lenet_export_fp32/data/feature_feature_0_Conv_input_0.h\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "export_folder = \"lenet_export_fp32\"\n",
     "\n",
@@ -331,9 +354,7 @@
     "        aidge_export_cpp.ExportLibCpp,\n",
     "        memory_manager=aidge_core.mem_info.generate_optimized_memory_info,\n",
     "        memory_manager_args={\"stats_folder\": f\"{export_folder}/stats\", \"wrapping\": False }\n",
-    ")\n",
-    "\n",
-    "aidge_core.export_utils.generate_main_cpp(export_folder, model)"
+    ")"
    ]
   },
   {
@@ -345,20 +366,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 10,
+   "execution_count": 9,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:48.273415Z",
-     "iopub.status.busy": "2025-05-11T15:21:48.273273Z",
-     "iopub.status.idle": "2025-05-11T15:21:48.306393Z",
-     "shell.execute_reply": "2025-05-11T15:21:48.306173Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.587306Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.587020Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.622348Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.621962Z"
     }
    },
    "outputs": [
     {
      "data": {
       "application/vnd.jupyter.widget-view+json": {
-       "model_id": "44dd172846d746d787387796b29867aa",
+       "model_id": "a6d4edc48ab74af9a004a0b7d66dbd77",
        "version_major": 2,
        "version_minor": 0
       },
@@ -366,7 +387,7 @@
        "VBox(children=(RoughCanvas(height=28, sync_image_data=True, width=28), HBox(children=(Button(description='Gene…"
       ]
      },
-     "execution_count": 10,
+     "execution_count": 9,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -453,13 +474,13 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 11,
+   "execution_count": 10,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:48.307919Z",
-     "iopub.status.busy": "2025-05-11T15:21:48.307702Z",
-     "iopub.status.idle": "2025-05-11T15:21:48.309921Z",
-     "shell.execute_reply": "2025-05-11T15:21:48.309710Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.624038Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.623832Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.625949Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.625718Z"
     }
    },
    "outputs": [
@@ -472,18 +493,51 @@
     }
    ],
    "source": [
+    "aidge_tensor = None\n",
     "try:\n",
     "    number_np = canvas.get_image_data()\n",
     "    # We got a numpy array with the shape of (28,28,4)\n",
     "    # Transform it to (28,28)\n",
     "    x = number_np[:, :, 3].astype(\"float32\")\n",
-    "    # Convert from [0, 255] to [0, 1] and export it\n",
-    "    aidge_core.export_utils.generate_input_file(export_folder=\"lenet_export_fp32\", array_name=\"feature_feature_0_Conv_input_0\", tensor=aidge_core.Tensor(x / 255))\n",
-    "\n",
+    "    aidge_tensor = aidge_core.Tensor(x / 255)\n",
     "except:\n",
     "    print(\"Please draw a number in the previous cell before running this one.\")"
    ]
   },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Generate a main that will do an inference on the drawing."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:15.626927Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.626750Z",
+     "iopub.status.idle": "2025-05-19T10:05:15.628702Z",
+     "shell.execute_reply": "2025-05-19T10:05:15.628459Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Please draw a number before generating the export.\n"
+     ]
+    }
+   ],
+   "source": [
+    "if aidge_tensor:\n",
+    "    aidge_core.export_utils.generate_main_cpp(export_folder, model, inputs_tensor=aidge_tensor)\n",
+    "else:\n",
+    "    print(\"Please draw a number before generating the export.\")"
+   ]
+  },
   {
    "cell_type": "markdown",
    "metadata": {},
@@ -496,10 +550,10 @@
    "execution_count": 12,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:48.310799Z",
-     "iopub.status.busy": "2025-05-11T15:21:48.310665Z",
-     "iopub.status.idle": "2025-05-11T15:21:48.559205Z",
-     "shell.execute_reply": "2025-05-11T15:21:48.558801Z"
+     "iopub.execute_input": "2025-05-19T10:05:15.629665Z",
+     "iopub.status.busy": "2025-05-19T10:05:15.629503Z",
+     "iopub.status.idle": "2025-05-19T10:05:16.138491Z",
+     "shell.execute_reply": "2025-05-19T10:05:16.138058Z"
     }
    },
    "outputs": [
@@ -508,27 +562,29 @@
      "output_type": "stream",
      "text": [
       "make[1]: Entering directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/lenet_export_fp32'\r\n",
-      "g++  -O2 -Wall -Wextra -MMD -fopenmp -I. -I./dnn -I./dnn/include -I./dnn/layers -I./dnn/parameters -c main.cpp -o build/./main.o \r\n"
+      "g++  -O2 -Wall -Wextra -MMD -fopenmp -I. -I./dnn -I./dnn/include -I./dnn/layers -I./dnn/parameters -c dnn/src/forward.cpp -o build/./dnn/src/forward.o \r\n"
      ]
     },
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "In file included from \u001b[01m\u001b[Kmain.cpp:4\u001b[m\u001b[K:\r\n",
-      "\u001b[01m\u001b[Kdata/feature_feature_0_Conv_input_0.h:4:393:\u001b[m\u001b[K \u001b[01;31m\u001b[Kerror: \u001b[m\u001b[K‘\u001b[01m\u001b[Knan\u001b[m\u001b[K’ was not declared in this scope\r\n",
-      "    4 |  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 2.6624670822171524e-44, \u001b[01;31m\u001b[Knan\u001b[m\u001b[K, 1.6815581571897805e-44, 2.942726775082116e-44, 1.0089348943138683e-43, 0.0, 4.273960316190692e-43, 0.0, 1.425184075619792e+37, 4.072873986560081e-41, 1.425184075619792e+37, 4.072873986560081e-41, 1.0166547672625598e+37, 4.072873986560081e-41, 1.0166547672625598e+37, 4.072873986560081e-41, 1551.88671875, 4.072873986560081e-41, 4.8130715755729514e+36, 4.072873986560081e-41, 4.420287501791034e+36, 4.072873986560081e-41, 4.8130715755729514e+36, 4.072873986560081e-41, 4.8130715755729514e+36, 4.072873986560081e-41, 1550.3515625, 4.072873986560081e-41, 7.948017145358971e+36, 4.072873986560081e-41, 4.276196193364292e+36, 4.072873986560081e-41, 1876.568359375, 4.072873986560081e-41, 4.2459246970308416e+36, 4.072873986560081e-41, 1.0166547672625598e+37, 4.072873986560081e-41, 7.948017145358971e+36, 4.072873986560081e-41, 4.2459246970308416e+36, 4.072873986560081e-41, 7.948017145358971e+36, 4.072873986560081e-41, 4.2459246970308416e+36, 4.072873986560081e-41, 7.948017145358971e+36, 4.072873986560081e-41, 1551.294921875, 4.072873986560081e-41, 7.946637941505923e+36, 4.072873986560081e-41, 4.420287501791034e+36, 4.072873986560081e-41, 7.946637941505923e+36, 4.072873986560081e-41, 7.946637941505923e+36, 4.072873986560081e-41, 1551.21875, 4.072873986560081e-41, 8.913581536950412e+36, 4.072873986560081e-41, 4.276196193364292e+36, 4.072873986560081e-41, 0.0, 0.0, 9.10844001811131e-44, 0.0, 3.5748036475435896e-12, 3.2931915210097526e-41, 1.425190160342673e+37, 4.072873986560081e-41, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 7.174648137343064e-43, 0.0, 2.780176153220437e-42, 0.0, 0.0, 0.0, -6.044944005260339e+35, 3.29305139116332e-41, 2.6862891561106743e-42, 0.0, nan, nan, 3.194960498660583e-43, 0.0, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 6.792110083058292e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 8.895038568559888e-15, 2.7603642276376897e+20, 1.4328903369374592e-19, 2.0108239825872136e-19, 3170.010498046875, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 12691.8427734375, 0.0032389953266829252, 6.646346445936972e-33, 1.3563156426940112e-19, 1.1578380784113246e+27, 1.6676381918920442e+19, 4.9171690175937894e+33, 0.013943285681307316, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 223.25900268554688, 865096192.0, 3.0027241543911787e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 239651504128.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 1.4864516498717671e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 245527325179904.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 1.400123274514609e+19, 14249442304.0, 3.0031717130479807e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 1.5300222170479722e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 245553296310272.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 785.0205078125, 1.4361496526079918e+19, 1.170372808069421e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 773.2557983398438, 52809.265625, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298307595397904e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3253.9560546875, 51722568.0, 808069.9375, 3.0167133981823246e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14634063.0, 3301.141845703125, 882164.75, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14985280512.0, 836852.9375, 3835896004608.0, 2.8039985697919656e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 13.956130027770996, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 8.888750195959472e-15, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 6.2090808306983485e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 2.6447895466691317e+20, 7.156120728699916e+22, 2.6448006297463397e+20, 7.156120728699916e+22, 234038768.0, 6.451841121074237e+28, 6.914624536135793e+28, 3.048128113421378e+32, 3.9162642855201935e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 10250.5673828125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 3631340322816.0, 202659104.0, 1.8917654862266218e+23, 1.7751997780891114e+28, 3.031376270124142e+32, 7.7782809489959315e+31, 6.793872341592482e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 7.873816070105814e+31, 2.170740716611165e-18, 0.002580789616331458, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.1431658257577701e+33, 7.774188493311372e+31, 1.9368016799321393e+31, 7.31620560934271e+28, 1.0572354386536535e-14, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3745664512.0, 14316288868352.0, 8.297171039297452e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 228689.328125, 204069.078125, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 14250483384320.0, 882165.25, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 12691.8427734375, 3.016549466813845e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 1.4167034451460096e+16, 1.170370223130007e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 3746578688.0, 3380.39208984375, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 959124144128.0, 2.8045502118573262e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 861509.1875, 8.294526177008102e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 2.3677763001830605e+20, 7.406419809684859e+28, 3.0344099969329157e+32, 7.7782809489959315e+31, 8.29059635245651e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 1.1703712571057726e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 2.737577596819939e+20, 744.913330078125, 2.8572841821150455e+32, 0.00258567463606596, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.0996337309183355e+27, 1.2737084302582354e-14, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 9.011490303617355e-33, 1.3563127992606555e-19, 1.7728632692125496e+28, 1.1093918953717347e-32, 1.3563156426940112e-19, 6.653328882380856e-33, 1.2754205139829522e+19, 2.780176153220437e-42, 0.0, 1.884746434516879e-42, 0.0, 3.785687041624186e-12, 3.2931915210097526e-41, 4.041059153969684e-12, 3.2931915210097526e-41, 0.0, 0.0, 0.0, 0.0, 1551.84033203125, 4.072873986560081e-41, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 1.098312206172895e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 1.4939362661438726e-19, 1.9848806511142385e+23, 7.1443279863152655e+31, 3.0979603668382307e+27, 5.69952342700103e-13, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 14250522181632.0, 3664702865408.0, 3744489216.0, 3380.39208984375, 6.655616688261144e-33, 1.3555848803216089e-19, 4.1528322667931175e+21, 2.840936087877394e+20, 1.8523600588218255e+28, 4.7418032899659543e+30, 1.7884540591926476e+22, 12.766414642333984, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 51.59309768676758, 3320303058944.0, 1.170369706142124e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 51150976.0, 865588.0625, 211834470400.0, 12.766448020935059, 12884.8310546875, 1.515159678570673e+19, 3365.9501953125, 13.958324432373047, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3.101367854591673e+21, 1.9282594100907423e+31, 6.888753277821998e+22, 1.0995075551888714e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 57139.37109375, 1.7108441610124788e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 1.0983123537468476e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 3365.958251953125, 50662732.0, 4.4254777929264924e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 160.1651153564453, 907333599232.0, 3220.392822265625, 51215688.0, 865588.0625, 211834470400.0, 239664087040.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 227982950400.0, 1.7385771295049327e-19, 7.122052594949249e+28, 1.3233649744613663e-14, 7.77811750222512e+31, 1.9368016799321393e+31, 2.7253615828306965e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 1.7859880630426323e+31, 1.7409431772977156e+25, 2.081010990195864e-07, 1.1089319967361296e+27, 3.034411737786096e+32, 7.7782809489959315e+31, 5.520268162362513e+31, 2.30862377825769e-12, 3.3492807700068108e-18, 1.1708629125823588e-19, 1.3563156426940112e-19, 1.2686448208222805e+31, 3849740544.0, 3.048128113421378e+32, 2.2248365825721957e+23, 7.1443279863152655e+31, 1.1702369695032034e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 160.12548828125, 907333599232.0, 3220.392822265625\r\n",
-      "      |                                                             \u001b[01;31m\u001b[K^~~\u001b[m\u001b[K\r\n",
-      "\r\n",
-      "\u001b[01m\u001b[Kdata/feature_feature_0_Conv_input_0.h:4:2069:\u001b[m\u001b[K \u001b[01;31m\u001b[Kerror: \u001b[m\u001b[K‘\u001b[01m\u001b[Knan\u001b[m\u001b[K’ was not declared in this scope\r\n",
-      "    4 | 339e+35, 3.29305139116332e-41, 2.6862891561106743e-42, 0.0, \u001b[01;31m\u001b[Knan\u001b[m\u001b[K, nan, 3.194960498660583e-43, 0.0, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 6.792110083058292e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 8.895038568559888e-15, 2.7603642276376897e+20, 1.4328903369374592e-19, 2.0108239825872136e-19, 3170.010498046875, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 12691.8427734375, 0.0032389953266829252, 6.646346445936972e-33, 1.3563156426940112e-19, 1.1578380784113246e+27, 1.6676381918920442e+19, 4.9171690175937894e+33, 0.013943285681307316, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 223.25900268554688, 865096192.0, 3.0027241543911787e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 239651504128.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 1.4864516498717671e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 245527325179904.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 1.400123274514609e+19, 14249442304.0, 3.0031717130479807e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 1.5300222170479722e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 245553296310272.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 785.0205078125, 1.4361496526079918e+19, 1.170372808069421e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 773.2557983398438, 52809.265625, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298307595397904e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3253.9560546875, 51722568.0, 808069.9375, 3.0167133981823246e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14634063.0, 3301.141845703125, 882164.75, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14985280512.0, 836852.9375, 3835896004608.0, 2.8039985697919656e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 13.956130027770996, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 8.888750195959472e-15, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 6.2090808306983485e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 2.6447895466691317e+20, 7.156120728699916e+22, 2.6448006297463397e+20, 7.156120728699916e+22, 234038768.0, 6.451841121074237e+28, 6.914624536135793e+28, 3.048128113421378e+32, 3.9162642855201935e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 10250.5673828125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 3631340322816.0, 202659104.0, 1.8917654862266218e+23, 1.7751997780891114e+28, 3.031376270124142e+32, 7.7782809489959315e+31, 6.793872341592482e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 7.873816070105814e+31, 2.170740716611165e-18, 0.002580789616331458, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.1431658257577701e+33, 7.774188493311372e+31, 1.9368016799321393e+31, 7.31620560934271e+28, 1.0572354386536535e-14, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3745664512.0, 14316288868352.0, 8.297171039297452e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 228689.328125, 204069.078125, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 14250483384320.0, 882165.25, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 12691.8427734375, 3.016549466813845e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 1.4167034451460096e+16, 1.170370223130007e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 3746578688.0, 3380.39208984375, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 959124144128.0, 2.8045502118573262e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 861509.1875, 8.294526177008102e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 2.3677763001830605e+20, 7.406419809684859e+28, 3.0344099969329157e+32, 7.7782809489959315e+31, 8.29059635245651e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 1.1703712571057726e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 2.737577596819939e+20, 744.913330078125, 2.8572841821150455e+32, 0.00258567463606596, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.0996337309183355e+27, 1.2737084302582354e-14, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 9.011490303617355e-33, 1.3563127992606555e-19, 1.7728632692125496e+28, 1.1093918953717347e-32, 1.3563156426940112e-19, 6.653328882380856e-33, 1.2754205139829522e+19, 2.780176153220437e-42, 0.0, 1.884746434516879e-42, 0.0, 3.785687041624186e-12, 3.2931915210097526e-41, 4.041059153969684e-12, 3.2931915210097526e-41, 0.0, 0.0, 0.0, 0.0, 1551.84033203125, 4.072873986560081e-41, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 1.098312206172895e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 1.4939362661438726e-19, 1.9848806511142385e+23, 7.1443279863152655e+31, 3.0979603668382307e+27, 5.69952342700103e-13, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 14250522181632.0, 3664702865408.0, 3744489216.0, 3380.39208984375, 6.655616688261144e-33, 1.3555848803216089e-19, 4.1528322667931175e+21, 2.840936087877394e+20, 1.8523600588218255e+28, 4.7418032899659543e+30, 1.7884540591926476e+22, 12.766414642333984, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 51.59309768676758, 3320303058944.0, 1.170369706142124e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 51150976.0, 865588.0625, 211834470400.0, 12.766448020935059, 12884.8310546875, 1.515159678570673e+19, 3365.9501953125, 13.958324432373047, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3.101367854591673e+21, 1.9282594100907423e+31, 6.888753277821998e+22, 1.0995075551888714e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 57139.37109375, 1.7108441610124788e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 1.0983123537468476e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 3365.958251953125, 50662732.0, 4.4254777929264924e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 160.1651153564453, 907333599232.0, 3220.392822265625, 51215688.0, 865588.0625, 211834470400.0, 239664087040.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 227982950400.0, 1.7385771295049327e-19, 7.122052594949249e+28, 1.3233649744613663e-14, 7.77811750222512e+31, 1.9368016799321393e+31, 2.7253615828306965e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 1.7859880630426323e+31, 1.7409431772977156e+25, 2.081010990195864e-07, 1.1089319967361296e+27, 3.034411737786096e+32, 7.7782809489959315e+31, 5.520268162362513e+31, 2.30862377825769e-12, 3.3492807700068108e-18, 1.1708629125823588e-19, 1.3563156426940112e-19, 1.2686448208222805e+31, 3849740544.0, 3.048128113421378e+32, 2.2248365825721957e+23, 7.1443279863152655e+31, 1.1702369695032034e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 160.12548828125, 907333599232.0, 3220.392822265625\r\n",
-      "      |                                                             \u001b[01;31m\u001b[K^~~\u001b[m\u001b[K\r\n",
-      "\r\n",
-      "\u001b[01m\u001b[Kdata/feature_feature_0_Conv_input_0.h:4:2074:\u001b[m\u001b[K \u001b[01;31m\u001b[Kerror: \u001b[m\u001b[K‘\u001b[01m\u001b[Knan\u001b[m\u001b[K’ was not declared in this scope\r\n",
-      "    4 | 35, 3.29305139116332e-41, 2.6862891561106743e-42, 0.0, nan, \u001b[01;31m\u001b[Knan\u001b[m\u001b[K, 3.194960498660583e-43, 0.0, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 6.792110083058292e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 8.895038568559888e-15, 2.7603642276376897e+20, 1.4328903369374592e-19, 2.0108239825872136e-19, 3170.010498046875, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 12691.8427734375, 0.0032389953266829252, 6.646346445936972e-33, 1.3563156426940112e-19, 1.1578380784113246e+27, 1.6676381918920442e+19, 4.9171690175937894e+33, 0.013943285681307316, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 223.25900268554688, 865096192.0, 3.0027241543911787e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 239651504128.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 1.4864516498717671e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 3365.949462890625, 3746909184.0, 14316288868352.0, 1.2708969032439562e+19, 245527325179904.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 14249442304.0, 8.124677042253836e-10, 1.400123274514609e+19, 14249442304.0, 3.0031717130479807e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 1.5300222170479722e+19, 51525.28125, 8.297350302185953e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 245553296310272.0, 217361.140625, 1.355589274718613e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3170.0078125, 229060395008.0, 3173.954345703125, 229060395008.0, 1.2853067727841001e+19, 14512632832.0, 1.4722072568316035e+19, 785.0205078125, 1.4361496526079918e+19, 1.170372808069421e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 773.2557983398438, 52809.265625, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298307595397904e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3631347662848.0, 3140.58251953125, 8.298119516301772e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 3253.9560546875, 51722568.0, 808069.9375, 3.0167133981823246e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14634063.0, 3301.141845703125, 882164.75, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 14985280512.0, 836852.9375, 3835896004608.0, 2.8039985697919656e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 13.956130027770996, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 8.888750195959472e-15, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 6.2090808306983485e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 2.6447895466691317e+20, 7.156120728699916e+22, 2.6448006297463397e+20, 7.156120728699916e+22, 234038768.0, 6.451841121074237e+28, 6.914624536135793e+28, 3.048128113421378e+32, 3.9162642855201935e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 10250.5673828125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 3631340322816.0, 202659104.0, 1.8917654862266218e+23, 1.7751997780891114e+28, 3.031376270124142e+32, 7.7782809489959315e+31, 6.793872341592482e+22, 4.8617293357346353e+30, 6.7994000597751165e+22, 4.8617293357346353e+30, 1.285310291221309e+19, 16668505088.0, 1.7036957961156559e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 7.873816070105814e+31, 2.170740716611165e-18, 0.002580789616331458, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.1431658257577701e+33, 7.774188493311372e+31, 1.9368016799321393e+31, 7.31620560934271e+28, 1.0572354386536535e-14, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3745664512.0, 14316288868352.0, 8.297171039297452e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 3744489216.0, 228689.328125, 204069.078125, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 14250483384320.0, 882165.25, 2.8468486248933722e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 12691.8427734375, 3.016549466813845e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 3544372215808.0, 1.4167034451460096e+16, 1.170370223130007e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 3746578688.0, 3380.39208984375, 1.1703721618345676e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 14586049724416.0, 14289.330078125, 14586049724416.0, 1.299606999793923e-08, 850152201912320.0, 54345024.0, 3664638640128.0, 1.530022326999135e+19, 231253737472.0, 959124144128.0, 2.8045502118573262e-12, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 12.329620361328125, 3365.3330078125, 12.329680442810059, 3365.3330078125, 234038768.0, 3495444736.0, 3746320128.0, 14316288868352.0, 1.2708969032439562e+19, 861509.1875, 8.294526177008102e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 7.143087144854013e+31, 1.6533405824890962e+19, 7.143087144854013e+31, 1.6533405824890962e+19, 2.3677763001830605e+20, 7.406419809684859e+28, 3.0344099969329157e+32, 7.7782809489959315e+31, 8.29059635245651e-33, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 1.1703712571057726e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 10248.03125, 2.737577596819939e+20, 744.913330078125, 2.8572841821150455e+32, 0.00258567463606596, 1.3563127992606555e-19, 1.3563156426940112e-19, 1.0996337309183355e+27, 1.2737084302582354e-14, 3320363614208.0, 1.4218520432050438e+19, 3320363614208.0, 1.4218520432050438e+19, 12.83574104309082, 3478149120.0, 14250512744448.0, 3664702865408.0, 958589239296.0, 12.332599639892578, 9.011490303617355e-33, 1.3563127992606555e-19, 1.7728632692125496e+28, 1.1093918953717347e-32, 1.3563156426940112e-19, 6.653328882380856e-33, 1.2754205139829522e+19, 2.780176153220437e-42, 0.0, 1.884746434516879e-42, 0.0, 3.785687041624186e-12, 3.2931915210097526e-41, 4.041059153969684e-12, 3.2931915210097526e-41, 0.0, 0.0, 0.0, 0.0, 1551.84033203125, 4.072873986560081e-41, 0.0, 0.0, 1.1692376319256628e-19, 1.3563156426940112e-19, 1.890428097281278e+23, 7.1443279863152655e+31, 1.098312206172895e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 1.4939362661438726e-19, 1.9848806511142385e+23, 7.1443279863152655e+31, 3.0979603668382307e+27, 5.69952342700103e-13, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 14250522181632.0, 3664702865408.0, 3744489216.0, 3380.39208984375, 6.655616688261144e-33, 1.3555848803216089e-19, 4.1528322667931175e+21, 2.840936087877394e+20, 1.8523600588218255e+28, 4.7418032899659543e+30, 1.7884540591926476e+22, 12.766414642333984, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 51.59309768676758, 3320303058944.0, 1.170369706142124e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 51150976.0, 865588.0625, 211834470400.0, 12.766448020935059, 12884.8310546875, 1.515159678570673e+19, 3365.9501953125, 13.958324432373047, 55340934627328.0, 3377742080.0, 1.1709669563937815e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 3.101367854591673e+21, 1.9282594100907423e+31, 6.888753277821998e+22, 1.0995075551888714e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 57139.37109375, 1.7108441610124788e+19, 3.0262524359993083e+29, 8.129242279331095e-10, 1.0983123537468476e+27, 1.8394614727878753e+25, 4.543967113057844e+30, 2.725370027079998e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 6.209082181778237e+22, 6.915711152663501e+28, 3.048128113421378e+32, 2.506409142732924e-12, 12.766387939453125, 12884.8310546875, 1.515159678570673e+19, 830208147456.0, 812181.1875, 2.0798422895040858e-07, 51726716.0, 3365.958251953125, 50662732.0, 4.4254777929264924e-14, 1.3555912134231737e-19, 1.5554267943085343e-13, 1.3563127992606555e-19, 2.752398330985541e+23, 1.9515305130566762e-19, 3428.082763671875, 3664638640128.0, 911964372992.0, 1.3563127992606555e-19, 52762752.0, 160.1651153564453, 907333599232.0, 3220.392822265625, 51215688.0, 865588.0625, 211834470400.0, 239664087040.0, 1.5369735494610977e+19, 14249442304.0, 8.124677042253836e-10, 227982950400.0, 1.7385771295049327e-19, 7.122052594949249e+28, 1.3233649744613663e-14, 7.77811750222512e+31, 1.9368016799321393e+31, 2.7253615828306965e+20, 2.7561026317510457e+23, 1.7466482178547253e+19, 1.7859880630426323e+31, 1.7409431772977156e+25, 2.081010990195864e-07, 1.1089319967361296e+27, 3.034411737786096e+32, 7.7782809489959315e+31, 5.520268162362513e+31, 2.30862377825769e-12, 3.3492807700068108e-18, 1.1708629125823588e-19, 1.3563156426940112e-19, 1.2686448208222805e+31, 3849740544.0, 3.048128113421378e+32, 2.2248365825721957e+23, 7.1443279863152655e+31, 1.1702369695032034e-19, 1.3563156426940112e-19, 1.3563156426940112e-19, 160.12548828125, 907333599232.0, 3220.392822265625\r\n",
-      "      |                                                             \u001b[01;31m\u001b[K^~~\u001b[m\u001b[K\r\n",
-      "\r\n",
-      "make[1]: *** [Makefile:23: build/./main.o] Error 1\r\n",
+      "In file included from \u001b[01m\u001b[K./dnn/include/kernels/fullyconnected.hpp:5\u001b[m\u001b[K,\r\n",
+      "                 from \u001b[01m\u001b[Kdnn/src/forward.cpp:16\u001b[m\u001b[K:\r\n",
+      "\u001b[01m\u001b[K./dnn/include/network/rescaling_utils.hpp:11:16:\u001b[m\u001b[K \u001b[01;35m\u001b[Kwarning: \u001b[m\u001b[K‘\u001b[01m\u001b[Kint64_t smlal(int32_t, int32_t, uint32_t, uint32_t)\u001b[m\u001b[K’ defined but not used [\u001b[01;35m\u001b[K\u001b]8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-function\u0007-Wunused-function\u001b]8;;\u0007\u001b[m\u001b[K]\r\n",
+      "   11 | static int64_t \u001b[01;35m\u001b[Ksmlal\u001b[m\u001b[K(int32_t lhs, int32_t rhs,\r\n",
+      "      |                \u001b[01;35m\u001b[K^~~~~\u001b[m\u001b[K\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "g++  build/./dnn/src/forward.o  -fopenmp -o bin/run_export\r\n",
+      "/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':\r\n",
+      "(.text+0x1b): undefined reference to `main'\r\n",
+      "collect2: error: ld returned 1 exit status\r\n",
+      "make[1]: *** [Makefile:19: build] Error 1\r\n",
       "make[1]: Leaving directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/lenet_export_fp32'\r\n"
      ]
     }
@@ -542,10 +598,10 @@
    "execution_count": 13,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:48.560996Z",
-     "iopub.status.busy": "2025-05-11T15:21:48.560828Z",
-     "iopub.status.idle": "2025-05-11T15:21:48.674669Z",
-     "shell.execute_reply": "2025-05-11T15:21:48.674319Z"
+     "iopub.execute_input": "2025-05-19T10:05:16.140693Z",
+     "iopub.status.busy": "2025-05-19T10:05:16.140247Z",
+     "iopub.status.idle": "2025-05-19T10:05:16.255339Z",
+     "shell.execute_reply": "2025-05-19T10:05:16.254901Z"
     }
    },
    "outputs": [
@@ -583,52 +639,30 @@
   "widgets": {
    "application/vnd.jupyter.widget-state+json": {
     "state": {
-     "26c41596eacd435b996e0edc0da387fe": {
+     "3a3c5f3c51c242abaa7dbbe034d13617": {
       "model_module": "@jupyter-widgets/controls",
       "model_module_version": "2.0.0",
-      "model_name": "HBoxModel",
+      "model_name": "ButtonModel",
       "state": {
        "_dom_classes": [],
        "_model_module": "@jupyter-widgets/controls",
        "_model_module_version": "2.0.0",
-       "_model_name": "HBoxModel",
+       "_model_name": "ButtonModel",
        "_view_count": null,
        "_view_module": "@jupyter-widgets/controls",
        "_view_module_version": "2.0.0",
-       "_view_name": "HBoxView",
-       "box_style": "",
-       "children": [
-        "IPY_MODEL_8f98ec525f254b2ba716ef5603f00e1a",
-        "IPY_MODEL_3ea4b9ad78754973b741562a077d73c5"
-       ],
-       "layout": "IPY_MODEL_42572276135644a69e11d945c339463c",
+       "_view_name": "ButtonView",
+       "button_style": "",
+       "description": "Generate PNG",
+       "disabled": false,
+       "icon": "",
+       "layout": "IPY_MODEL_ae63052964eb4452a512fbc579e0c3b2",
+       "style": "IPY_MODEL_9e1993e7b513461bac55cd4b1fcf5a90",
        "tabbable": null,
        "tooltip": null
       }
      },
-     "2fbdec33a15648e0923012c8d2ea778b": {
-      "model_module": "@jupyter-widgets/controls",
-      "model_module_version": "2.0.0",
-      "model_name": "ButtonStyleModel",
-      "state": {
-       "_model_module": "@jupyter-widgets/controls",
-       "_model_module_version": "2.0.0",
-       "_model_name": "ButtonStyleModel",
-       "_view_count": null,
-       "_view_module": "@jupyter-widgets/base",
-       "_view_module_version": "2.0.0",
-       "_view_name": "StyleView",
-       "button_color": null,
-       "font_family": null,
-       "font_size": null,
-       "font_style": null,
-       "font_variant": null,
-       "font_weight": null,
-       "text_color": null,
-       "text_decoration": null
-      }
-     },
-     "3a95385e564f4e218265dad660909928": {
+     "3bc9a3d9e39b41b4a0119c31c3568d2b": {
       "model_module": "@jupyter-widgets/base",
       "model_module_version": "2.0.0",
       "model_name": "LayoutModel",
@@ -681,30 +715,7 @@
        "width": "300px"
       }
      },
-     "3ea4b9ad78754973b741562a077d73c5": {
-      "model_module": "@jupyter-widgets/controls",
-      "model_module_version": "2.0.0",
-      "model_name": "ButtonModel",
-      "state": {
-       "_dom_classes": [],
-       "_model_module": "@jupyter-widgets/controls",
-       "_model_module_version": "2.0.0",
-       "_model_name": "ButtonModel",
-       "_view_count": null,
-       "_view_module": "@jupyter-widgets/controls",
-       "_view_module_version": "2.0.0",
-       "_view_name": "ButtonView",
-       "button_style": "",
-       "description": "Clear",
-       "disabled": false,
-       "icon": "",
-       "layout": "IPY_MODEL_cd185cf741fa46889a9fe191d3ef6d3d",
-       "style": "IPY_MODEL_2fbdec33a15648e0923012c8d2ea778b",
-       "tabbable": null,
-       "tooltip": null
-      }
-     },
-     "42572276135644a69e11d945c339463c": {
+     "5fea29daefab4368a478fd02a570f514": {
       "model_module": "@jupyter-widgets/base",
       "model_module_version": "2.0.0",
       "model_name": "LayoutModel",
@@ -757,30 +768,30 @@
        "width": null
       }
      },
-     "44dd172846d746d787387796b29867aa": {
+     "6812b6691b07470bb8ecbe93c0b7838f": {
       "model_module": "@jupyter-widgets/controls",
       "model_module_version": "2.0.0",
-      "model_name": "VBoxModel",
+      "model_name": "ButtonModel",
       "state": {
        "_dom_classes": [],
        "_model_module": "@jupyter-widgets/controls",
        "_model_module_version": "2.0.0",
-       "_model_name": "VBoxModel",
+       "_model_name": "ButtonModel",
        "_view_count": null,
        "_view_module": "@jupyter-widgets/controls",
        "_view_module_version": "2.0.0",
-       "_view_name": "VBoxView",
-       "box_style": "",
-       "children": [
-        "IPY_MODEL_6e2797c1af5d43afb7abb8d906112889",
-        "IPY_MODEL_26c41596eacd435b996e0edc0da387fe"
-       ],
-       "layout": "IPY_MODEL_3a95385e564f4e218265dad660909928",
+       "_view_name": "ButtonView",
+       "button_style": "",
+       "description": "Clear",
+       "disabled": false,
+       "icon": "",
+       "layout": "IPY_MODEL_7cf1bcefe6fa48949d2e2248a642ebe4",
+       "style": "IPY_MODEL_ff271f40b47a498788c39b774153150a",
        "tabbable": null,
        "tooltip": null
       }
      },
-     "47c2b64028af4c9783ecc7f67f86aa9a": {
+     "7cf1bcefe6fa48949d2e2248a642ebe4": {
       "model_module": "@jupyter-widgets/base",
       "model_module_version": "2.0.0",
       "model_name": "LayoutModel",
@@ -833,7 +844,7 @@
        "width": null
       }
      },
-     "4844bdbba9b04f56bc42e25bbdbca74e": {
+     "8d182b3f098c4561a9fb2663ca08746b": {
       "model_module": "ipycanvas",
       "model_module_version": "^0.13",
       "model_name": "CanvasManagerModel",
@@ -847,54 +858,7 @@
        "_view_name": null
       }
      },
-     "6e2797c1af5d43afb7abb8d906112889": {
-      "model_module": "ipycanvas",
-      "model_module_version": "^0.13",
-      "model_name": "RoughCanvasModel",
-      "state": {
-       "_canvas_manager": "IPY_MODEL_4844bdbba9b04f56bc42e25bbdbca74e",
-       "_dom_classes": [],
-       "_model_module": "ipycanvas",
-       "_model_module_version": "^0.13",
-       "_model_name": "RoughCanvasModel",
-       "_send_client_ready_event": true,
-       "_view_count": null,
-       "_view_module": "ipycanvas",
-       "_view_module_version": "^0.13",
-       "_view_name": "CanvasView",
-       "height": 28,
-       "image_data": null,
-       "layout": "IPY_MODEL_f4b921933e1942f797e95099977c42df",
-       "sync_image_data": true,
-       "tabbable": null,
-       "tooltip": null,
-       "width": 28
-      }
-     },
-     "8f98ec525f254b2ba716ef5603f00e1a": {
-      "model_module": "@jupyter-widgets/controls",
-      "model_module_version": "2.0.0",
-      "model_name": "ButtonModel",
-      "state": {
-       "_dom_classes": [],
-       "_model_module": "@jupyter-widgets/controls",
-       "_model_module_version": "2.0.0",
-       "_model_name": "ButtonModel",
-       "_view_count": null,
-       "_view_module": "@jupyter-widgets/controls",
-       "_view_module_version": "2.0.0",
-       "_view_name": "ButtonView",
-       "button_style": "",
-       "description": "Generate PNG",
-       "disabled": false,
-       "icon": "",
-       "layout": "IPY_MODEL_47c2b64028af4c9783ecc7f67f86aa9a",
-       "style": "IPY_MODEL_ac49bdb9ed7d4658bbfac9a664efd0fa",
-       "tabbable": null,
-       "tooltip": null
-      }
-     },
-     "ac49bdb9ed7d4658bbfac9a664efd0fa": {
+     "9e1993e7b513461bac55cd4b1fcf5a90": {
       "model_module": "@jupyter-widgets/controls",
       "model_module_version": "2.0.0",
       "model_name": "ButtonStyleModel",
@@ -916,7 +880,30 @@
        "text_decoration": null
       }
      },
-     "cd185cf741fa46889a9fe191d3ef6d3d": {
+     "a6d4edc48ab74af9a004a0b7d66dbd77": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "VBoxModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "VBoxModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "VBoxView",
+       "box_style": "",
+       "children": [
+        "IPY_MODEL_c85fb2bb0f49435484a23d795bdbfaf0",
+        "IPY_MODEL_d46354a5c3db4b72869a11baeb9153d3"
+       ],
+       "layout": "IPY_MODEL_3bc9a3d9e39b41b4a0119c31c3568d2b",
+       "tabbable": null,
+       "tooltip": null
+      }
+     },
+     "ae63052964eb4452a512fbc579e0c3b2": {
       "model_module": "@jupyter-widgets/base",
       "model_module_version": "2.0.0",
       "model_name": "LayoutModel",
@@ -969,7 +956,31 @@
        "width": null
       }
      },
-     "f4b921933e1942f797e95099977c42df": {
+     "c85fb2bb0f49435484a23d795bdbfaf0": {
+      "model_module": "ipycanvas",
+      "model_module_version": "^0.13",
+      "model_name": "RoughCanvasModel",
+      "state": {
+       "_canvas_manager": "IPY_MODEL_8d182b3f098c4561a9fb2663ca08746b",
+       "_dom_classes": [],
+       "_model_module": "ipycanvas",
+       "_model_module_version": "^0.13",
+       "_model_name": "RoughCanvasModel",
+       "_send_client_ready_event": true,
+       "_view_count": null,
+       "_view_module": "ipycanvas",
+       "_view_module_version": "^0.13",
+       "_view_name": "CanvasView",
+       "height": 28,
+       "image_data": null,
+       "layout": "IPY_MODEL_5fea29daefab4368a478fd02a570f514",
+       "sync_image_data": true,
+       "tabbable": null,
+       "tooltip": null,
+       "width": 28
+      }
+     },
+     "cbde1e32a4ae4f6f9f7b711c70c4094e": {
       "model_module": "@jupyter-widgets/base",
       "model_module_version": "2.0.0",
       "model_name": "LayoutModel",
@@ -1021,6 +1032,51 @@
        "visibility": null,
        "width": null
       }
+     },
+     "d46354a5c3db4b72869a11baeb9153d3": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "HBoxModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "HBoxModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "HBoxView",
+       "box_style": "",
+       "children": [
+        "IPY_MODEL_3a3c5f3c51c242abaa7dbbe034d13617",
+        "IPY_MODEL_6812b6691b07470bb8ecbe93c0b7838f"
+       ],
+       "layout": "IPY_MODEL_cbde1e32a4ae4f6f9f7b711c70c4094e",
+       "tabbable": null,
+       "tooltip": null
+      }
+     },
+     "ff271f40b47a498788c39b774153150a": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "ButtonStyleModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "ButtonStyleModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "StyleView",
+       "button_color": null,
+       "font_family": null,
+       "font_size": null,
+       "font_style": null,
+       "font_variant": null,
+       "font_weight": null,
+       "text_color": null,
+       "text_decoration": null
+      }
      }
     },
     "version_major": 2,
diff --git a/source/Tutorial/export_cpp_add_impl.html b/source/Tutorial/export_cpp_add_impl.html
new file mode 100644
index 0000000000000000000000000000000000000000..b8d2fbc1ad1fac0ca51b6fc7009c88b012d5cdcf
--- /dev/null
+++ b/source/Tutorial/export_cpp_add_impl.html
@@ -0,0 +1,915 @@
+
+<!DOCTYPE html>
+
+
+<html lang="en" data-content_root="../../" >
+
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
+
+    <title>Add a custom operator to the C++ export &#8212; Eclipse Aidge  documentation</title>
+  
+  
+  
+  <script data-cfasync="false">
+    document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
+    document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
+  </script>
+  <!--
+    this give us a css class that will be invisible only if js is disabled
+  -->
+  <noscript>
+    <style>
+      .pst-js-only { display: none !important; }
+
+    </style>
+  </noscript>
+  
+  <!-- Loaded before other Sphinx assets -->
+  <link href="../../_static/styles/theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+<link href="../../_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+
+    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=8f2a1f02" />
+    <link rel="stylesheet" type="text/css" href="../../_static/graphviz.css?v=4ae1632d" />
+    <link rel="stylesheet" type="text/css" href="../../_static/copybutton.css?v=76b2166b" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sg_gallery.css?v=d2d258e8" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sphinx-design.min.css?v=95c83b7e" />
+    <link rel="stylesheet" type="text/css" href="../../_static/nbsphinx-code-cells.css?v=2aa19091" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/custom.css?v=abb81387" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/id.css?v=5eddeb79" />
+  
+  <!-- So that users can add custom icons -->
+  <script src="../../_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
+  <!-- Pre-loaded scripts that we'll load fully later -->
+  <link rel="preload" as="script" href="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
+<link rel="preload" as="script" href="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />
+
+    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
+    <script src="../../_static/doctools.js?v=9bcbadda"></script>
+    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
+    <script src="../../_static/clipboard.min.js?v=a7894cd8"></script>
+    <script src="../../_static/copybutton.js?v=f281be69"></script>
+    <script src="../../_static/design-tabs.js?v=f930bc37"></script>
+    <script src="https://cdn.jsdelivr.net/npm/@jupyter-widgets/html-manager@^1.0.1/dist/embed-amd.js"></script>
+    <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script>
+    <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
+    <script>DOCUMENTATION_OPTIONS.pagename = 'source/Tutorial/export_cpp_add_impl';</script>
+    <script src="../../_static/js/mermaid.min.js"></script>
+    <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
+    <link rel="index" title="Index" href="../../genindex.html" />
+    <link rel="search" title="Search" href="../../search.html" />
+    <link rel="next" title="TensorRT export" href="export_trt.html" />
+    <link rel="prev" title="Quantized model C++ export" href="export_cpp_quant.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1"/>
+  <meta name="docsearch:language" content="en"/>
+  <meta name="docsearch:version" content="0.6.1" />
+  </head>
+  
+  
+  <body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
+
+  
+  
+  <div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
+  
+  <div id="pst-scroll-pixel-helper"></div>
+  
+  <button type="button" class="btn rounded-pill" id="pst-back-to-top">
+    <i class="fa-solid fa-arrow-up"></i>Back to top</button>
+
+  
+  <dialog id="pst-search-dialog">
+    
+<form class="bd-search d-flex align-items-center"
+      action="../../search.html"
+      method="get">
+  <i class="fa-solid fa-magnifying-glass"></i>
+  <input type="search"
+         class="form-control"
+         name="q"
+         placeholder="Search the docs ..."
+         aria-label="Search the docs ..."
+         autocomplete="off"
+         autocorrect="off"
+         autocapitalize="off"
+         spellcheck="false"/>
+  <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
+</form>
+  </dialog>
+
+  <div class="pst-async-banner-revealer d-none">
+  <aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
+</div>
+
+  
+    <header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
+<div class="bd-header__inner bd-page-width">
+  <button class="pst-navbar-icon sidebar-toggle primary-toggle" aria-label="Site navigation">
+    <span class="fa-solid fa-bars"></span>
+  </button>
+  
+  
+  <div class="col-lg-3 navbar-header-items__start">
+    
+      <div class="navbar-item">
+
+  
+    
+  
+
+<a class="navbar-brand logo" href="../../index.html">
+  
+  
+  
+  
+  
+    
+    
+      
+    
+    
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-light" alt=""/>
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-dark pst-js-only" alt=""/>
+  
+  
+    <p class="title logo__title">Eclipse Aidge</p>
+  
+</a></div>
+    
+  </div>
+  
+  <div class="col-lg-9 navbar-header-items">
+    
+    <div class="me-auto navbar-header-items__center">
+      
+        <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+      
+    </div>
+    
+    
+    <div class="navbar-header-items__end">
+      
+        <div class="navbar-item navbar-persistent--container">
+          
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+        </div>
+      
+      
+        <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+      
+        <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+      
+    </div>
+    
+  </div>
+  
+  
+    <div class="navbar-persistent--mobile">
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+    </div>
+  
+
+  
+    <button class="pst-navbar-icon sidebar-toggle secondary-toggle" aria-label="On this page">
+      <span class="fa-solid fa-outdent"></span>
+    </button>
+  
+</div>
+
+    </header>
+  
+
+  <div class="bd-container">
+    <div class="bd-container__inner bd-page-width">
+      
+      
+      
+      <dialog id="pst-primary-sidebar-modal"></dialog>
+      <div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
+        
+
+  
+  <div class="sidebar-header-items sidebar-primary__section">
+    
+    
+      <div class="sidebar-header-items__center">
+        
+          
+          
+            <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+          
+        
+      </div>
+    
+    
+    
+      <div class="sidebar-header-items__end">
+        
+          <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+        
+          <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+        
+      </div>
+    
+  </div>
+  
+    <div class="sidebar-primary-items__start sidebar-primary__section">
+        <div class="sidebar-primary-item">
+<nav class="bd-docs-nav bd-links"
+     aria-label="Section Navigation">
+  <p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
+  <div class="bd-toc-item navbar-nav"><ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
+<li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
+</ul>
+<ul class="current nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
+</ul>
+</div>
+</nav></div>
+    </div>
+  
+  
+  <div class="sidebar-primary-items__end sidebar-primary__section">
+      <div class="sidebar-primary-item">
+<div id="ethical-ad-placement"
+      class="flat"
+      data-ea-publisher="readthedocs"
+      data-ea-type="readthedocs-sidebar"
+      data-ea-manual="true">
+</div></div>
+  </div>
+
+
+      </div>
+      
+      <main id="main-content" class="bd-main" role="main">
+        
+        
+          <div class="bd-content">
+            <div class="bd-article-container">
+              
+              <div class="bd-header-article d-print-none">
+<div class="header-article-items header-article__inner">
+  
+    <div class="header-article-items__start">
+      
+        <div class="header-article-item">
+
+<nav aria-label="Breadcrumb" class="d-print-none">
+  <ul class="bd-breadcrumbs">
+    
+    <li class="breadcrumb-item breadcrumb-home">
+      <a href="../../index.html" class="nav-link" aria-label="Home">
+        <i class="fa-solid fa-home"></i>
+      </a>
+    </li>
+    
+    <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
+    
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Add a custom operator to the C++ export</span></li>
+  </ul>
+</nav>
+</div>
+      
+    </div>
+  
+  
+</div>
+</div>
+              
+              
+              
+                
+<div id="searchbox"></div>
+                <article class="bd-article">
+                  
+  <section id="Add-a-custom-operator-to-the-C++-export">
+<h1>Add a custom operator to the C++ export<a class="headerlink" href="#Add-a-custom-operator-to-the-C++-export" title="Link to this heading">#</a></h1>
+<p>The main objective of this tutorial is to demonstrate the toolchain to <strong>detect unsupported operators</strong> and <strong>add them</strong> in an export module. For this tutorial, we use the CPP export module <code class="docutils literal notranslate"><span class="pre">aidge_export_cpp</span></code> to demonstrate the toolchain.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># First import some utility methods used in the tutorial:</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">sys</span><span class="o">,</span><span class="w"> </span><span class="nn">os</span>
+<span class="n">sys</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">abspath</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="s1">&#39;../../..&#39;</span><span class="p">)))</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">tuto_utils</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+<span class="ansi-red-fg">---------------------------------------------------------------------------</span>
+<span class="ansi-red-fg">ModuleNotFoundError</span>                       Traceback (most recent call last)
+Cell <span class="ansi-green-fg">In[1], line 4</span>
+<span class="ansi-green-intense-fg ansi-bold">      2</span> <span class="ansi-bold" style="color: rgb(0,135,0)">import</span><span style="color: rgb(188,188,188)"> </span><span class="ansi-bold" style="color: rgb(0,0,255)">sys</span><span style="color: rgb(98,98,98)">,</span><span style="color: rgb(188,188,188)"> </span><span class="ansi-bold" style="color: rgb(0,0,255)">os</span>
+<span class="ansi-green-intense-fg ansi-bold">      3</span> sys<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>append(os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>abspath(os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>join(<span style="color: rgb(175,0,0)">&#39;</span><span style="color: rgb(175,0,0)">../../..</span><span style="color: rgb(175,0,0)">&#39;</span>)))
+<span class="ansi-green-fg">----&gt; 4</span> <span class="ansi-bold" style="color: rgb(0,135,0)">import</span><span style="color: rgb(188,188,188)"> </span><span class="ansi-bold" style="color: rgb(0,0,255)">tuto_utils</span>
+
+<span class="ansi-red-fg">ModuleNotFoundError</span>: No module named &#39;tuto_utils&#39;
+</pre></div></div>
+</div>
+<section id="Import-Aidge">
+<h2>Import Aidge<a class="headerlink" href="#Import-Aidge" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_core</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_backend_cpu</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_export_cpp</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_onnx</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">os</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">requests</span>
+</pre></div>
+</div>
+</div>
+</section>
+<section id="Load-ONNX-model">
+<h2>Load ONNX model<a class="headerlink" href="#Load-ONNX-model" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">file_url</span> <span class="o">=</span> <span class="s2">&quot;https://huggingface.co/EclipseAidge/LeNet/resolve/main/lenet_mnist.onnx?download=true&quot;</span>
+<span class="n">file_path</span> <span class="o">=</span> <span class="s2">&quot;lenet_mnist.onnx&quot;</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">download_file</span><span class="p">(</span><span class="n">file_path</span><span class="p">,</span> <span class="n">file_url</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span> <span class="o">=</span> <span class="n">aidge_onnx</span><span class="o">.</span><span class="n">load_onnx</span><span class="p">(</span><span class="s2">&quot;lenet_mnist.onnx&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Remove Flatten node, useless in the CPP export</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">remove_flatten</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+
+<span class="n">digit</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="s2">&quot;digit.npy&quot;</span><span class="p">)</span>
+
+<span class="c1"># Create Producer Node for the Graph</span>
+<span class="c1"># Note: This means the graph will have no input!</span>
+<span class="n">input_node</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">Producer</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">Tensor</span><span class="p">(</span><span class="n">digit</span><span class="p">),</span> <span class="s2">&quot;input&quot;</span><span class="p">)</span>
+<span class="n">input_node</span><span class="o">.</span><span class="n">add_child</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="n">model</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="n">input_node</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+<span class="ansi-red-fg">---------------------------------------------------------------------------</span>
+<span class="ansi-red-fg">FileNotFoundError</span>                         Traceback (most recent call last)
+Cell <span class="ansi-green-fg">In[5], line 4</span>
+<span class="ansi-green-intense-fg ansi-bold">      1</span> <span style="color: rgb(95,135,135)"># Remove Flatten node, useless in the CPP export</span>
+<span class="ansi-green-intense-fg ansi-bold">      2</span> aidge_core<span style="color: rgb(98,98,98)">.</span>remove_flatten(model)
+<span class="ansi-green-fg">----&gt; 4</span> digit <span style="color: rgb(98,98,98)">=</span> <span class="ansi-yellow-bg">np</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">load</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">digit.npy</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">      6</span> <span style="color: rgb(95,135,135)"># Create Producer Node for the Graph</span>
+<span class="ansi-green-intense-fg ansi-bold">      7</span> <span style="color: rgb(95,135,135)"># Note: This means the graph will have no input!</span>
+<span class="ansi-green-intense-fg ansi-bold">      8</span> input_node <span style="color: rgb(98,98,98)">=</span> aidge_core<span style="color: rgb(98,98,98)">.</span>Producer(aidge_core<span style="color: rgb(98,98,98)">.</span>Tensor(digit), <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">input</span><span style="color: rgb(175,0,0)">&#34;</span>)
+
+File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/numpy/lib/_npyio_impl.py:451</span>, in <span class="ansi-cyan-fg">load</span><span class="ansi-blue-fg">(file, mmap_mode, allow_pickle, fix_imports, encoding, max_header_size)</span>
+<span class="ansi-green-intense-fg ansi-bold">    449</span>     own_fid <span style="color: rgb(98,98,98)">=</span> <span class="ansi-bold" style="color: rgb(0,135,0)">False</span>
+<span class="ansi-green-intense-fg ansi-bold">    450</span> <span class="ansi-bold" style="color: rgb(0,135,0)">else</span>:
+<span class="ansi-green-fg">--&gt; 451</span>     fid <span style="color: rgb(98,98,98)">=</span> stack<span style="color: rgb(98,98,98)">.</span>enter_context(<span class="ansi-yellow-bg" style="color: rgb(0,135,0)">open</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">os</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">fspath</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">file</span><span class="ansi-yellow-bg">)</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">rb</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">)</span>)
+<span class="ansi-green-intense-fg ansi-bold">    452</span>     own_fid <span style="color: rgb(98,98,98)">=</span> <span class="ansi-bold" style="color: rgb(0,135,0)">True</span>
+<span class="ansi-green-intense-fg ansi-bold">    454</span> <span style="color: rgb(95,135,135)"># Code to distinguish from NumPy binary files and pickles.</span>
+
+<span class="ansi-red-fg">FileNotFoundError</span>: [Errno 2] No such file or directory: &#39;digit.npy&#39;
+</pre></div></div>
+</div>
+</section>
+<section id="Replace-ReLU-operators-by-Swish-operators">
+<h2>Replace ReLU operators by Swish operators<a class="headerlink" href="#Replace-ReLU-operators-by-Swish-operators" title="Link to this heading">#</a></h2>
+<p>Let’s say you want to replace ReLU with another activation like Switch.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Forward the dimensions in the graph in order to get the size for the beta vector of the Swish</span>
+<span class="n">model</span><span class="o">.</span><span class="n">forward_dims</span><span class="p">()</span>
+
+<span class="c1"># Use GraphMatching to replace ReLU with Swish</span>
+<span class="n">matches</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">SinglePassGraphMatching</span><span class="p">(</span><span class="n">model</span><span class="p">)</span><span class="o">.</span><span class="n">match</span><span class="p">(</span><span class="s2">&quot;ReLU&quot;</span><span class="p">)</span>
+<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Number of match : &#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">matches</span><span class="p">))</span>
+
+<span class="n">switch_id</span> <span class="o">=</span> <span class="mi">0</span>
+<span class="k">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">match</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">matches</span><span class="p">):</span>
+    <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Match &#39;</span><span class="p">,</span> <span class="n">i</span><span class="p">)</span>
+    <span class="n">node_ReLU</span> <span class="o">=</span> <span class="n">match</span><span class="o">.</span><span class="n">graph</span><span class="o">.</span><span class="n">root_node</span><span class="p">()</span>
+
+    <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Replacing &#39;</span><span class="p">,</span> <span class="n">node_ReLU</span><span class="o">.</span><span class="n">type</span><span class="p">(),</span> <span class="s1">&#39; : &#39;</span><span class="p">,</span> <span class="n">node_ReLU</span><span class="o">.</span><span class="n">name</span><span class="p">())</span>
+
+    <span class="c1"># We instanciate Swish as a generic operator</span>
+    <span class="n">node_swish</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">GenericOperator</span><span class="p">(</span><span class="s2">&quot;Swish&quot;</span><span class="p">,</span> <span class="n">nb_data</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">nb_param</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">nb_out</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">name</span><span class="o">=</span><span class="sa">f</span><span class="s2">&quot;swish_</span><span class="si">{</span><span class="n">switch_id</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
+    <span class="n">node_swish</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">attr</span><span class="o">.</span><span class="n">betas</span> <span class="o">=</span> <span class="p">[</span><span class="mf">1.0</span><span class="p">]</span><span class="o">*</span><span class="n">node_ReLU</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">get_input</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">dims</span><span class="p">()[</span><span class="mi">1</span><span class="p">]</span>
+
+    <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Replacing &#39;</span><span class="p">,</span> <span class="n">node_ReLU</span><span class="o">.</span><span class="n">type</span><span class="p">(),</span> <span class="s1">&#39; : &#39;</span><span class="p">,</span> <span class="n">node_ReLU</span><span class="o">.</span><span class="n">name</span><span class="p">(),</span> <span class="s1">&#39; with &#39;</span> <span class="p">,</span> <span class="n">node_swish</span><span class="o">.</span><span class="n">name</span><span class="p">())</span>
+    <span class="n">aidge_core</span><span class="o">.</span><span class="n">GraphView</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="nb">set</span><span class="p">([</span><span class="n">node_ReLU</span><span class="p">]),</span> <span class="nb">set</span><span class="p">([</span><span class="n">node_swish</span><span class="p">]))</span>
+
+    <span class="n">switch_id</span><span class="o">+=</span><span class="mi">1</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+Number of match :  4
+Match  0
+Replacing  ReLU  :  data_1_Relu
+</pre></div></div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+<span class="ansi-red-fg">---------------------------------------------------------------------------</span>
+<span class="ansi-red-fg">IndexError</span>                                Traceback (most recent call last)
+Cell <span class="ansi-green-fg">In[6], line 17</span>
+<span class="ansi-green-intense-fg ansi-bold">     15</span> <span style="color: rgb(95,135,135)"># We instanciate Swish as a generic operator</span>
+<span class="ansi-green-intense-fg ansi-bold">     16</span> node_swish <span style="color: rgb(98,98,98)">=</span> aidge_core<span style="color: rgb(98,98,98)">.</span>GenericOperator(<span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">Swish</span><span style="color: rgb(175,0,0)">&#34;</span>, nb_data<span style="color: rgb(98,98,98)">=</span><span style="color: rgb(98,98,98)">1</span>, nb_param<span style="color: rgb(98,98,98)">=</span><span style="color: rgb(98,98,98)">0</span>, nb_out<span style="color: rgb(98,98,98)">=</span><span style="color: rgb(98,98,98)">1</span>, name<span style="color: rgb(98,98,98)">=</span><span style="color: rgb(175,0,0)">f</span><span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">swish_</span><span class="ansi-bold" style="color: rgb(175,95,135)">{</span>switch_id<span class="ansi-bold" style="color: rgb(175,95,135)">}</span><span style="color: rgb(175,0,0)">&#34;</span>)
+<span class="ansi-green-fg">---&gt; 17</span> node_swish<span style="color: rgb(98,98,98)">.</span>get_operator()<span style="color: rgb(98,98,98)">.</span>attr<span style="color: rgb(98,98,98)">.</span>betas <span style="color: rgb(98,98,98)">=</span> [<span style="color: rgb(98,98,98)">1.0</span>]<span style="color: rgb(98,98,98)">*</span><span class="ansi-yellow-bg">node_ReLU</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">get_operator</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">)</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">get_input</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">0</span><span class="ansi-yellow-bg">)</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">dims</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">)</span><span class="ansi-yellow-bg">[</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">1</span><span class="ansi-yellow-bg">]</span>
+<span class="ansi-green-intense-fg ansi-bold">     19</span> <span style="color: rgb(0,135,0)">print</span>(<span style="color: rgb(175,0,0)">&#39;</span><span style="color: rgb(175,0,0)">Replacing </span><span style="color: rgb(175,0,0)">&#39;</span>, node_ReLU<span style="color: rgb(98,98,98)">.</span>type(), <span style="color: rgb(175,0,0)">&#39;</span><span style="color: rgb(175,0,0)"> : </span><span style="color: rgb(175,0,0)">&#39;</span>, node_ReLU<span style="color: rgb(98,98,98)">.</span>name(), <span style="color: rgb(175,0,0)">&#39;</span><span style="color: rgb(175,0,0)"> with </span><span style="color: rgb(175,0,0)">&#39;</span> , node_swish<span style="color: rgb(98,98,98)">.</span>name())
+<span class="ansi-green-intense-fg ansi-bold">     20</span> aidge_core<span style="color: rgb(98,98,98)">.</span>GraphView<span style="color: rgb(98,98,98)">.</span>replace(<span style="color: rgb(0,135,0)">set</span>([node_ReLU]), <span style="color: rgb(0,135,0)">set</span>([node_swish]))
+
+<span class="ansi-red-fg">IndexError</span>: list index out of range
+</pre></div></div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span><span class="o">.</span><span class="n">save</span><span class="p">(</span><span class="s2">&quot;myModel&quot;</span><span class="p">)</span>
+<span class="n">tuto_utils</span><span class="o">.</span><span class="n">visualize_mmd</span><span class="p">(</span><span class="s2">&quot;myModel.mmd&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+<span class="ansi-red-fg">---------------------------------------------------------------------------</span>
+<span class="ansi-red-fg">NameError</span>                                 Traceback (most recent call last)
+Cell <span class="ansi-green-fg">In[7], line 2</span>
+<span class="ansi-green-intense-fg ansi-bold">      1</span> model<span style="color: rgb(98,98,98)">.</span>save(<span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">myModel</span><span style="color: rgb(175,0,0)">&#34;</span>)
+<span class="ansi-green-fg">----&gt; 2</span> <span class="ansi-yellow-bg">tuto_utils</span><span style="color: rgb(98,98,98)">.</span>visualize_mmd(<span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">myModel.mmd</span><span style="color: rgb(175,0,0)">&#34;</span>)
+
+<span class="ansi-red-fg">NameError</span>: name &#39;tuto_utils&#39; is not defined
+</pre></div></div>
+</div>
+</section>
+<section id="Schedule-the-graph">
+<h2>Schedule the graph<a class="headerlink" href="#Schedule-the-graph" title="Link to this heading">#</a></h2>
+<p>Add the function to specify how Swish activation transforms the dimensions. This <code class="docutils literal notranslate"><span class="pre">forward_dims</span></code> function is required to perform a sequential scheduling.</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">class</span><span class="w"> </span><span class="nc">GenericImpl</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">OperatorImpl</span><span class="p">):</span> <span class="c1"># Inherit OperatorImpl to interface with Aidge !</span>
+    <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">op</span><span class="p">:</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">Operator</span><span class="p">):</span>
+        <span class="n">aidge_core</span><span class="o">.</span><span class="n">OperatorImpl</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">op</span><span class="p">,</span> <span class="s1">&#39;cpu&#39;</span><span class="p">)</span>
+    <span class="c1"># no need to define forward() function in python as we do not intend to run a scheduler on the model</span>
+
+<span class="k">for</span> <span class="n">node</span> <span class="ow">in</span> <span class="n">model</span><span class="o">.</span><span class="n">get_nodes</span><span class="p">():</span>
+    <span class="k">if</span> <span class="n">node</span><span class="o">.</span><span class="n">type</span><span class="p">()</span> <span class="o">==</span> <span class="s2">&quot;Swish&quot;</span><span class="p">:</span>
+        <span class="n">node</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">set_forward_dims</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="n">x</span><span class="p">)</span> <span class="c1"># to propagate dimensions in the model</span>
+
+<span class="k">for</span> <span class="n">node</span> <span class="ow">in</span> <span class="n">model</span><span class="o">.</span><span class="n">get_nodes</span><span class="p">():</span>
+    <span class="n">node</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">set_impl</span><span class="p">(</span><span class="n">GenericImpl</span><span class="p">(</span><span class="n">node</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()))</span> <span class="c1"># Setting implementation</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">scheduler</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">SequentialScheduler</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="n">model</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s2">&quot;cpu&quot;</span><span class="p">,</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">,</span> <span class="n">dims</span><span class="o">=</span><span class="p">[[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">28</span><span class="p">,</span> <span class="mi">28</span><span class="p">]])</span>
+<span class="n">scheduler</span><span class="o">.</span><span class="n">generate_scheduling</span><span class="p">()</span>
+<span class="n">s</span> <span class="o">=</span> <span class="n">scheduler</span><span class="o">.</span><span class="n">get_sequential_static_scheduling</span><span class="p">()</span>
+</pre></div>
+</div>
+</div>
+</section>
+<section id="Add-Swish-to-the-CPP-export-support">
+<h2>Add Swish to the CPP export support<a class="headerlink" href="#Add-Swish-to-the-CPP-export-support" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Note: we register a GenericOperator so we need to use ``register_generic``.</span>
+<span class="c1"># For registering an existing operator use ``register``</span>
+<span class="c1"># For registering a MetaOperator use ``register_metaop``</span>
+<span class="nd">@aidge_export_cpp</span><span class="o">.</span><span class="n">ExportLibCpp</span><span class="o">.</span><span class="n">register_generic</span><span class="p">(</span><span class="s2">&quot;Swish&quot;</span><span class="p">,</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">ImplSpec</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">IOSpec</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">)))</span>
+<span class="k">class</span><span class="w"> </span><span class="nc">SwishCPP</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">export_utils</span><span class="o">.</span><span class="n">ExportNodeCpp</span><span class="p">):</span>
+    <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">node</span><span class="p">,</span> <span class="n">mem_info</span><span class="p">):</span>
+        <span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="n">node</span><span class="p">,</span> <span class="n">mem_info</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">config_template</span> <span class="o">=</span> <span class="s2">&quot;swish_export_files/swish_config.jinja&quot;</span>
+
+        <span class="bp">self</span><span class="o">.</span><span class="n">forward_template</span> <span class="o">=</span> <span class="s2">&quot;swish_export_files/swish_forward.jinja&quot;</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">include_list</span> <span class="o">=</span> <span class="p">[]</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">kernels_to_copy</span> <span class="o">=</span> <span class="p">[</span>
+            <span class="s2">&quot;swish_export_files/swish_kernel.hpp&quot;</span><span class="p">,</span>
+        <span class="p">]</span>
+<br/></pre></div>
+</div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">aidge_core</span><span class="o">.</span><span class="n">export_utils</span><span class="o">.</span><span class="n">scheduler_export</span><span class="p">(</span>
+        <span class="n">scheduler</span><span class="p">,</span>
+        <span class="s2">&quot;myexport&quot;</span><span class="p">,</span>
+        <span class="n">aidge_export_cpp</span><span class="o">.</span><span class="n">ExportLibCpp</span><span class="p">,</span>
+        <span class="n">memory_manager</span><span class="o">=</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">mem_info</span><span class="o">.</span><span class="n">generate_optimized_memory_info</span><span class="p">,</span>
+        <span class="n">memory_manager_args</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;stats_folder&quot;</span><span class="p">:</span> <span class="s2">&quot;myexport/stats&quot;</span><span class="p">,</span> <span class="s2">&quot;wrapping&quot;</span><span class="p">:</span> <span class="kc">False</span> <span class="p">}</span>
+<span class="p">)</span>
+
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">export_utils</span><span class="o">.</span><span class="n">generate_main_cpp</span><span class="p">(</span><span class="s2">&quot;myexport&quot;</span><span class="p">,</span> <span class="n">model</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+gen : myexport/data/data_0_Conv_input_0.h
+</pre></div></div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+<span class="ansi-red-fg">---------------------------------------------------------------------------</span>
+<span class="ansi-red-fg">RuntimeError</span>                              Traceback (most recent call last)
+Cell <span class="ansi-green-fg">In[11], line 9</span>
+<span class="ansi-green-intense-fg ansi-bold">      1</span> aidge_core<span style="color: rgb(98,98,98)">.</span>export_utils<span style="color: rgb(98,98,98)">.</span>scheduler_export(
+<span class="ansi-green-intense-fg ansi-bold">      2</span>         scheduler,
+<span class="ansi-green-intense-fg ansi-bold">      3</span>         <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">myexport</span><span style="color: rgb(175,0,0)">&#34;</span>,
+<span class="ansi-green-fg">   (...)</span>
+<span class="ansi-green-intense-fg ansi-bold">      6</span>         memory_manager_args<span style="color: rgb(98,98,98)">=</span>{<span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">stats_folder</span><span style="color: rgb(175,0,0)">&#34;</span>: <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">myexport/stats</span><span style="color: rgb(175,0,0)">&#34;</span>, <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">wrapping</span><span style="color: rgb(175,0,0)">&#34;</span>: <span class="ansi-bold" style="color: rgb(0,135,0)">False</span> }
+<span class="ansi-green-intense-fg ansi-bold">      7</span> )
+<span class="ansi-green-fg">----&gt; 9</span> <span class="ansi-yellow-bg">aidge_core</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">export_utils</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">generate_main_cpp</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">myexport</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg">model</span><span class="ansi-yellow-bg">)</span>
+
+File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/aidge_core/export_utils/generate_main.py:54</span>, in <span class="ansi-cyan-fg">generate_main_cpp</span><span class="ansi-blue-fg">(export_folder, graph_view, inputs_tensor, labels)</span>
+<span class="ansi-green-intense-fg ansi-bold">     52</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">else</span>:
+<span class="ansi-green-intense-fg ansi-bold">     53</span>         inputs_name<span style="color: rgb(98,98,98)">.</span>append(in_name)
+<span class="ansi-green-fg">---&gt; 54</span>         <span class="ansi-yellow-bg">generate_input_file</span><span class="ansi-yellow-bg">(</span>
+<span class="ansi-green-intense-fg ansi-bold">     55</span> <span class="ansi-yellow-bg">            </span><span class="ansi-yellow-bg">export_folder</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">=</span><span class="ansi-yellow-bg" style="color: rgb(0,135,0)">str</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">Path</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">export_folder</span><span class="ansi-yellow-bg">)</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">/</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">data</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">)</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span>
+<span class="ansi-green-intense-fg ansi-bold">     56</span> <span class="ansi-yellow-bg">            </span><span class="ansi-yellow-bg">array_name</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">=</span><span class="ansi-yellow-bg">in_name</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span>
+<span class="ansi-green-intense-fg ansi-bold">     57</span> <span class="ansi-yellow-bg">            </span><span class="ansi-yellow-bg">tensor</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">=</span><span class="ansi-yellow-bg">inputs_tensor</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">     59</span> <span style="color: rgb(95,135,135)"># Generate labels file</span>
+<span class="ansi-green-intense-fg ansi-bold">     60</span> <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> labels <span class="ansi-bold" style="color: rgb(175,0,255)">is</span> <span class="ansi-bold" style="color: rgb(175,0,255)">not</span> <span class="ansi-bold" style="color: rgb(0,135,0)">None</span>:
+
+File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/aidge_core/export_utils/tensor_export.py:38</span>, in <span class="ansi-cyan-fg">generate_input_file</span><span class="ansi-blue-fg">(export_folder, array_name, tensor)</span>
+<span class="ansi-green-intense-fg ansi-bold">     30</span> <span style="color: rgb(0,135,0)">print</span>(<span style="color: rgb(175,0,0)">f</span><span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">gen : </span><span class="ansi-bold" style="color: rgb(175,95,135)">{</span>export_folder<span class="ansi-bold" style="color: rgb(175,95,135)">}</span><span style="color: rgb(175,0,0)">/</span><span class="ansi-bold" style="color: rgb(175,95,135)">{</span>array_name<span class="ansi-bold" style="color: rgb(175,95,135)">}</span><span style="color: rgb(175,0,0)">.h</span><span style="color: rgb(175,0,0)">&#34;</span>)
+<span class="ansi-green-intense-fg ansi-bold">     31</span> ROOT <span style="color: rgb(98,98,98)">=</span> Path(<span style="color: rgb(0,0,135)">__file__</span>)<span style="color: rgb(98,98,98)">.</span>resolve()<span style="color: rgb(98,98,98)">.</span>parents[<span style="color: rgb(98,98,98)">0</span>]
+<span class="ansi-green-intense-fg ansi-bold">     32</span> generate_file(
+<span class="ansi-green-intense-fg ansi-bold">     33</span>     file_path<span style="color: rgb(98,98,98)">=</span><span style="color: rgb(175,0,0)">f</span><span style="color: rgb(175,0,0)">&#34;</span><span class="ansi-bold" style="color: rgb(175,95,135)">{</span>export_folder<span class="ansi-bold" style="color: rgb(175,95,135)">}</span><span style="color: rgb(175,0,0)">/</span><span class="ansi-bold" style="color: rgb(175,95,135)">{</span>array_name<span class="ansi-bold" style="color: rgb(175,95,135)">}</span><span style="color: rgb(175,0,0)">.h</span><span style="color: rgb(175,0,0)">&#34;</span>,
+<span class="ansi-green-intense-fg ansi-bold">     34</span>     template_path<span style="color: rgb(98,98,98)">=</span><span style="color: rgb(0,135,0)">str</span>(ROOT <span style="color: rgb(98,98,98)">/</span> <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">templates</span><span style="color: rgb(175,0,0)">&#34;</span> <span style="color: rgb(98,98,98)">/</span> <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">c_data.jinja</span><span style="color: rgb(175,0,0)">&#34;</span>),
+<span class="ansi-green-intense-fg ansi-bold">     35</span>     dims <span style="color: rgb(98,98,98)">=</span> tensor<span style="color: rgb(98,98,98)">.</span>dims(),
+<span class="ansi-green-intense-fg ansi-bold">     36</span>     data_t <span style="color: rgb(98,98,98)">=</span> aidge2c(tensor<span style="color: rgb(98,98,98)">.</span>dtype()),
+<span class="ansi-green-intense-fg ansi-bold">     37</span>     name <span style="color: rgb(98,98,98)">=</span> array_name,
+<span class="ansi-green-fg">---&gt; 38</span>     values <span style="color: rgb(98,98,98)">=</span> <span class="ansi-yellow-bg" style="color: rgb(0,135,0)">list</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">tensor</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">     39</span> )
+
+<span class="ansi-red-fg">RuntimeError</span>: Tensor::get&lt;&gt;(0): can only be used for backends providing a valid host pointer.
+</pre></div></div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span>tree<span class="w"> </span>myexport
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+/usr/bin/sh: 1: tree: not found
+</pre></div></div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[13]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span><span class="nb">cd</span><span class="w"> </span>myexport<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span>make
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+make[1]: Entering directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/myexport&#39;
+g++  -O2 -Wall -Wextra -MMD -fopenmp -I. -I./dnn -I./dnn/include -I./dnn/layers -I./dnn/parameters -c dnn/src/forward.cpp -o build/./dnn/src/forward.o
+In file included from <span class="ansi-bold">./dnn/include/layers/data_11_Gemm.h:3</span>,
+                 from <span class="ansi-bold">dnn/src/forward.cpp:17</span>:
+<span class="ansi-bold">./dnn/include/network/rescaling_utils.hpp:11:16:</span> <span class="ansi-magenta-intense-fg ansi-bold">warning: </span>‘<span class="ansi-bold">int64_t smlal(int32_t, int32_t, uint32_t, uint32_t)</span>’ defined but not used [<span class="ansi-magenta-intense-fg ansi-bold">]8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-function-Wunused-function]8;;</span>]
+   11 | static int64_t <span class="ansi-magenta-intense-fg ansi-bold">smlal</span>(int32_t lhs, int32_t rhs,
+      |                <span class="ansi-magenta-intense-fg ansi-bold">^~~~~</span>
+g++  build/./dnn/src/forward.o  -fopenmp -o bin/run_export
+/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o: in function `_start&#39;:
+(.text+0x1b): undefined reference to `main&#39;
+collect2: error: ld returned 1 exit status
+make[1]: *** [Makefile:19: build] Error 1
+make[1]: Leaving directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/myexport&#39;
+</pre></div></div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[14]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span>./myexport/bin/run_export
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+/usr/bin/sh: 1: ./myexport/bin/run_export: not found
+</pre></div></div>
+</div>
+</section>
+</section>
+
+
+                </article>
+              
+              
+              
+              
+              
+                <footer class="prev-next-footer d-print-none">
+                  
+<div class="prev-next-area">
+    <a class="left-prev"
+       href="export_cpp_quant.html"
+       title="previous page">
+      <i class="fa-solid fa-angle-left"></i>
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">previous</p>
+        <p class="prev-next-title">Quantized model C++ export</p>
+      </div>
+    </a>
+    <a class="right-next"
+       href="export_trt.html"
+       title="next page">
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">next</p>
+        <p class="prev-next-title">TensorRT export</p>
+      </div>
+      <i class="fa-solid fa-angle-right"></i>
+    </a>
+</div>
+                </footer>
+              
+            </div>
+            
+            
+              
+                <dialog id="pst-secondary-sidebar-modal"></dialog>
+                <div id="pst-secondary-sidebar" class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
+
+
+  <div class="sidebar-secondary-item">
+<div
+    id="pst-page-navigation-heading-2"
+    class="page-toc tocsection onthispage">
+    <i class="fa-solid fa-list"></i> On this page
+  </div>
+  <nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
+    <ul class="visible nav section-nav flex-column">
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Import-Aidge">Import Aidge</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Load-ONNX-model">Load ONNX model</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Replace-ReLU-operators-by-Swish-operators">Replace ReLU operators by Swish operators</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Schedule-the-graph">Schedule the graph</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Add-Swish-to-the-CPP-export-support">Add Swish to the CPP export support</a></li>
+</ul>
+  </nav></div>
+
+  <div class="sidebar-secondary-item">
+  <div role="note" aria-label="source link">
+    <h3>This Page</h3>
+    <ul class="this-page-menu">
+      <li><a href="../../_sources/source/Tutorial/export_cpp_add_impl.nblink.txt"
+            rel="nofollow">Show Source</a></li>
+    </ul>
+   </div></div>
+
+</div></div>
+              
+            
+          </div>
+          <footer class="bd-footer-content">
+            
+          </footer>
+        
+      </main>
+    </div>
+  </div>
+  
+  <!-- Scripts loaded after <body> so the DOM is not blocked -->
+  <script defer src="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
+<script defer src="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>
+
+  <footer class="bd-footer">
+<div class="bd-footer__inner bd-page-width">
+  
+    <div class="footer-items__start">
+      
+        <div class="footer-item">
+
+  <p class="copyright">
+    
+      © Copyright 2023, CEA LIST.
+      <br/>
+    
+  </p>
+</div>
+      
+        <div class="footer-item">
+
+  <p class="sphinx-version">
+    Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.1.3.
+    <br/>
+  </p>
+</div>
+      
+    </div>
+  
+  
+  
+    <div class="footer-items__end">
+      
+        <div class="footer-item">
+<p class="theme-version">
+  <!-- # L10n: Setting the PST URL as an argument as this does not need to be localized -->
+  Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.16.1.
+</p></div>
+      
+    </div>
+  
+</div>
+
+  </footer>
+  </body>
+</html>
\ No newline at end of file
diff --git a/source/Tutorial/export_cpp_add_impl.ipynb b/source/Tutorial/export_cpp_add_impl.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..8b6d7cb321973d367d37baf86506453c9fcb966d
--- /dev/null
+++ b/source/Tutorial/export_cpp_add_impl.ipynb
@@ -0,0 +1,518 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Add a custom operator to the C++ export"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "The main objective of this tutorial is to demonstrate the toolchain to **detect unsupported operators** and **add them** in an export module. <br>\n",
+    "For this tutorial, we use the CPP export module ``aidge_export_cpp`` to demonstrate the toolchain."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:17.658957Z",
+     "iopub.status.busy": "2025-05-19T10:05:17.658811Z",
+     "iopub.status.idle": "2025-05-19T10:05:17.788299Z",
+     "shell.execute_reply": "2025-05-19T10:05:17.788030Z"
+    }
+   },
+   "outputs": [
+    {
+     "ename": "ModuleNotFoundError",
+     "evalue": "No module named 'tuto_utils'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mModuleNotFoundError\u001b[0m                       Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[1], line 4\u001b[0m\n\u001b[1;32m      2\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01msys\u001b[39;00m\u001b[38;5;241m,\u001b[39m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mos\u001b[39;00m\n\u001b[1;32m      3\u001b[0m sys\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mappend(os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mabspath(os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mjoin(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m../../..\u001b[39m\u001b[38;5;124m'\u001b[39m)))\n\u001b[0;32m----> 4\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mtuto_utils\u001b[39;00m\n",
+      "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'tuto_utils'"
+     ]
+    }
+   ],
+   "source": [
+    "# First import some utility methods used in the tutorial:\n",
+    "import sys, os\n",
+    "sys.path.append(os.path.abspath(os.path.join('../../..')))\n",
+    "import tuto_utils"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Import Aidge\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:17.790028Z",
+     "iopub.status.busy": "2025-05-19T10:05:17.789892Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.091112Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.090746Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "import aidge_core\n",
+    "import aidge_backend_cpu\n",
+    "import aidge_export_cpp\n",
+    "import aidge_onnx\n",
+    "import numpy as np\n",
+    "import os\n",
+    "import requests"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Load ONNX model\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.092833Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.092685Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.094561Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.094340Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "file_url = \"https://huggingface.co/EclipseAidge/LeNet/resolve/main/lenet_mnist.onnx?download=true\"\n",
+    "file_path = \"lenet_mnist.onnx\"\n",
+    "aidge_core.utils.download_file(file_path, file_url)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.095505Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.095314Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.105347Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.105099Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "model = aidge_onnx.load_onnx(\"lenet_mnist.onnx\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.106654Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.106533Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.205334Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.204801Z"
+    }
+   },
+   "outputs": [
+    {
+     "ename": "FileNotFoundError",
+     "evalue": "[Errno 2] No such file or directory: 'digit.npy'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mFileNotFoundError\u001b[0m                         Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[5], line 4\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;66;03m# Remove Flatten node, useless in the CPP export\u001b[39;00m\n\u001b[1;32m      2\u001b[0m aidge_core\u001b[38;5;241m.\u001b[39mremove_flatten(model)\n\u001b[0;32m----> 4\u001b[0m digit \u001b[38;5;241m=\u001b[39m \u001b[43mnp\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mload\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mdigit.npy\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m      6\u001b[0m \u001b[38;5;66;03m# Create Producer Node for the Graph\u001b[39;00m\n\u001b[1;32m      7\u001b[0m \u001b[38;5;66;03m# Note: This means the graph will have no input!\u001b[39;00m\n\u001b[1;32m      8\u001b[0m input_node \u001b[38;5;241m=\u001b[39m aidge_core\u001b[38;5;241m.\u001b[39mProducer(aidge_core\u001b[38;5;241m.\u001b[39mTensor(digit), \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124minput\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
+      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/numpy/lib/_npyio_impl.py:451\u001b[0m, in \u001b[0;36mload\u001b[0;34m(file, mmap_mode, allow_pickle, fix_imports, encoding, max_header_size)\u001b[0m\n\u001b[1;32m    449\u001b[0m     own_fid \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mFalse\u001b[39;00m\n\u001b[1;32m    450\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m--> 451\u001b[0m     fid \u001b[38;5;241m=\u001b[39m stack\u001b[38;5;241m.\u001b[39menter_context(\u001b[38;5;28;43mopen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mos\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfspath\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfile\u001b[49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mrb\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m)\n\u001b[1;32m    452\u001b[0m     own_fid \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n\u001b[1;32m    454\u001b[0m \u001b[38;5;66;03m# Code to distinguish from NumPy binary files and pickles.\u001b[39;00m\n",
+      "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'digit.npy'"
+     ]
+    }
+   ],
+   "source": [
+    "# Remove Flatten node, useless in the CPP export\n",
+    "aidge_core.remove_flatten(model)\n",
+    "\n",
+    "digit = np.load(\"digit.npy\")\n",
+    "\n",
+    "# Create Producer Node for the Graph\n",
+    "# Note: This means the graph will have no input!\n",
+    "input_node = aidge_core.Producer(aidge_core.Tensor(digit), \"input\")\n",
+    "input_node.add_child(model)\n",
+    "model.add(input_node)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Replace ReLU operators by Swish operators\n",
+    "\n",
+    "Let's say you want to replace ReLU with another activation like Switch."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.207227Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.207067Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.220248Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.219964Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Number of match :  4\n",
+      "Match  0\n",
+      "Replacing  ReLU  :  data_1_Relu\n"
+     ]
+    },
+    {
+     "ename": "IndexError",
+     "evalue": "list index out of range",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mIndexError\u001b[0m                                Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[6], line 17\u001b[0m\n\u001b[1;32m     15\u001b[0m \u001b[38;5;66;03m# We instanciate Swish as a generic operator\u001b[39;00m\n\u001b[1;32m     16\u001b[0m node_swish \u001b[38;5;241m=\u001b[39m aidge_core\u001b[38;5;241m.\u001b[39mGenericOperator(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mSwish\u001b[39m\u001b[38;5;124m\"\u001b[39m, nb_data\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m1\u001b[39m, nb_param\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m0\u001b[39m, nb_out\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m1\u001b[39m, name\u001b[38;5;241m=\u001b[39m\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mswish_\u001b[39m\u001b[38;5;132;01m{\u001b[39;00mswitch_id\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m---> 17\u001b[0m node_swish\u001b[38;5;241m.\u001b[39mget_operator()\u001b[38;5;241m.\u001b[39mattr\u001b[38;5;241m.\u001b[39mbetas \u001b[38;5;241m=\u001b[39m [\u001b[38;5;241m1.0\u001b[39m]\u001b[38;5;241m*\u001b[39m\u001b[43mnode_ReLU\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_operator\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_input\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdims\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[43m[\u001b[49m\u001b[38;5;241;43m1\u001b[39;49m\u001b[43m]\u001b[49m\n\u001b[1;32m     19\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mReplacing \u001b[39m\u001b[38;5;124m'\u001b[39m, node_ReLU\u001b[38;5;241m.\u001b[39mtype(), \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m : \u001b[39m\u001b[38;5;124m'\u001b[39m, node_ReLU\u001b[38;5;241m.\u001b[39mname(), \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m with \u001b[39m\u001b[38;5;124m'\u001b[39m , node_swish\u001b[38;5;241m.\u001b[39mname())\n\u001b[1;32m     20\u001b[0m aidge_core\u001b[38;5;241m.\u001b[39mGraphView\u001b[38;5;241m.\u001b[39mreplace(\u001b[38;5;28mset\u001b[39m([node_ReLU]), \u001b[38;5;28mset\u001b[39m([node_swish]))\n",
+      "\u001b[0;31mIndexError\u001b[0m: list index out of range"
+     ]
+    }
+   ],
+   "source": [
+    "# Forward the dimensions in the graph in order to get the size for the beta vector of the Swish\n",
+    "model.forward_dims()\n",
+    "\n",
+    "# Use GraphMatching to replace ReLU with Swish\n",
+    "matches = aidge_core.SinglePassGraphMatching(model).match(\"ReLU\")\n",
+    "print('Number of match : ', len(matches))\n",
+    "\n",
+    "switch_id = 0\n",
+    "for i, match in enumerate(matches):\n",
+    "    print('Match ', i)\n",
+    "    node_ReLU = match.graph.root_node()\n",
+    "\n",
+    "    print('Replacing ', node_ReLU.type(), ' : ', node_ReLU.name())\n",
+    "\n",
+    "    # We instanciate Swish as a generic operator\n",
+    "    node_swish = aidge_core.GenericOperator(\"Swish\", nb_data=1, nb_param=0, nb_out=1, name=f\"swish_{switch_id}\")\n",
+    "    node_swish.get_operator().attr.betas = [1.0]*node_ReLU.get_operator().get_input(0).dims()[1]\n",
+    "\n",
+    "    print('Replacing ', node_ReLU.type(), ' : ', node_ReLU.name(), ' with ' , node_swish.name())\n",
+    "    aidge_core.GraphView.replace(set([node_ReLU]), set([node_swish]))\n",
+    "\n",
+    "    switch_id+=1"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.221433Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.221195Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.229024Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.228634Z"
+    }
+   },
+   "outputs": [
+    {
+     "ename": "NameError",
+     "evalue": "name 'tuto_utils' is not defined",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[7], line 2\u001b[0m\n\u001b[1;32m      1\u001b[0m model\u001b[38;5;241m.\u001b[39msave(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmyModel\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m----> 2\u001b[0m \u001b[43mtuto_utils\u001b[49m\u001b[38;5;241m.\u001b[39mvisualize_mmd(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmyModel.mmd\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
+      "\u001b[0;31mNameError\u001b[0m: name 'tuto_utils' is not defined"
+     ]
+    }
+   ],
+   "source": [
+    "model.save(\"myModel\")\n",
+    "tuto_utils.visualize_mmd(\"myModel.mmd\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Schedule the graph"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Add the function to specify how Swish activation transforms the dimensions. <br>\n",
+    "This `forward_dims` function is required to perform a sequential scheduling."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.230866Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.230767Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.235524Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.235270Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "class GenericImpl(aidge_core.OperatorImpl): # Inherit OperatorImpl to interface with Aidge !\n",
+    "    def __init__(self, op: aidge_core.Operator):\n",
+    "        aidge_core.OperatorImpl.__init__(self, op, 'cpu')\n",
+    "    # no need to define forward() function in python as we do not intend to run a scheduler on the model\n",
+    "\n",
+    "for node in model.get_nodes():\n",
+    "    if node.type() == \"Swish\":\n",
+    "        node.get_operator().set_forward_dims(lambda x: x) # to propagate dimensions in the model\n",
+    "\n",
+    "for node in model.get_nodes():\n",
+    "    node.get_operator().set_impl(GenericImpl(node.get_operator())) # Setting implementation"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.236781Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.236564Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.238932Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.238689Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "scheduler = aidge_core.SequentialScheduler(model)\n",
+    "model.compile(\"cpu\", aidge_core.dtype.float32, dims=[[1, 1, 28, 28]])\n",
+    "scheduler.generate_scheduling()\n",
+    "s = scheduler.get_sequential_static_scheduling()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Add Swish to the CPP export support"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.240175Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.239992Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.242568Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.242282Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# Note: we register a GenericOperator so we need to use ``register_generic``.\n",
+    "# For registering an existing operator use ``register``\n",
+    "# For registering a MetaOperator use ``register_metaop``\n",
+    "@aidge_export_cpp.ExportLibCpp.register_generic(\"Swish\", aidge_core.ImplSpec(aidge_core.IOSpec(aidge_core.dtype.float32)))\n",
+    "class SwishCPP(aidge_core.export_utils.ExportNodeCpp):\n",
+    "    def __init__(self, node, mem_info):\n",
+    "        super().__init__(node, mem_info)\n",
+    "        self.config_template = \"swish_export_files/swish_config.jinja\"\n",
+    "\n",
+    "        self.forward_template = \"swish_export_files/swish_forward.jinja\"\n",
+    "        self.include_list = []\n",
+    "        self.kernels_to_copy = [\n",
+    "            \"swish_export_files/swish_kernel.hpp\",\n",
+    "        ]\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.243618Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.243493Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.610026Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.609717Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "gen : myexport/data/data_0_Conv_input_0.h\n"
+     ]
+    },
+    {
+     "ename": "RuntimeError",
+     "evalue": "Tensor::get<>(0): can only be used for backends providing a valid host pointer.",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mRuntimeError\u001b[0m                              Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[11], line 9\u001b[0m\n\u001b[1;32m      1\u001b[0m aidge_core\u001b[38;5;241m.\u001b[39mexport_utils\u001b[38;5;241m.\u001b[39mscheduler_export(\n\u001b[1;32m      2\u001b[0m         scheduler,\n\u001b[1;32m      3\u001b[0m         \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmyexport\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m      6\u001b[0m         memory_manager_args\u001b[38;5;241m=\u001b[39m{\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mstats_folder\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmyexport/stats\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mwrapping\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;28;01mFalse\u001b[39;00m }\n\u001b[1;32m      7\u001b[0m )\n\u001b[0;32m----> 9\u001b[0m \u001b[43maidge_core\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mexport_utils\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mgenerate_main_cpp\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mmyexport\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mmodel\u001b[49m\u001b[43m)\u001b[49m\n",
+      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/aidge_core/export_utils/generate_main.py:54\u001b[0m, in \u001b[0;36mgenerate_main_cpp\u001b[0;34m(export_folder, graph_view, inputs_tensor, labels)\u001b[0m\n\u001b[1;32m     52\u001b[0m     \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m     53\u001b[0m         inputs_name\u001b[38;5;241m.\u001b[39mappend(in_name)\n\u001b[0;32m---> 54\u001b[0m         \u001b[43mgenerate_input_file\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m     55\u001b[0m \u001b[43m            \u001b[49m\u001b[43mexport_folder\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mstr\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mPath\u001b[49m\u001b[43m(\u001b[49m\u001b[43mexport_folder\u001b[49m\u001b[43m)\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m/\u001b[39;49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mdata\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\n\u001b[1;32m     56\u001b[0m \u001b[43m            \u001b[49m\u001b[43marray_name\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43min_name\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\n\u001b[1;32m     57\u001b[0m \u001b[43m            \u001b[49m\u001b[43mtensor\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43minputs_tensor\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m     59\u001b[0m \u001b[38;5;66;03m# Generate labels file\u001b[39;00m\n\u001b[1;32m     60\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m labels \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n",
+      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/aidge_core/export_utils/tensor_export.py:38\u001b[0m, in \u001b[0;36mgenerate_input_file\u001b[0;34m(export_folder, array_name, tensor)\u001b[0m\n\u001b[1;32m     30\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mgen : \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mexport_folder\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m/\u001b[39m\u001b[38;5;132;01m{\u001b[39;00marray_name\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m.h\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m     31\u001b[0m ROOT \u001b[38;5;241m=\u001b[39m Path(\u001b[38;5;18m__file__\u001b[39m)\u001b[38;5;241m.\u001b[39mresolve()\u001b[38;5;241m.\u001b[39mparents[\u001b[38;5;241m0\u001b[39m]\n\u001b[1;32m     32\u001b[0m generate_file(\n\u001b[1;32m     33\u001b[0m     file_path\u001b[38;5;241m=\u001b[39m\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;132;01m{\u001b[39;00mexport_folder\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m/\u001b[39m\u001b[38;5;132;01m{\u001b[39;00marray_name\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m.h\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[1;32m     34\u001b[0m     template_path\u001b[38;5;241m=\u001b[39m\u001b[38;5;28mstr\u001b[39m(ROOT \u001b[38;5;241m/\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mtemplates\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;241m/\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mc_data.jinja\u001b[39m\u001b[38;5;124m\"\u001b[39m),\n\u001b[1;32m     35\u001b[0m     dims \u001b[38;5;241m=\u001b[39m tensor\u001b[38;5;241m.\u001b[39mdims(),\n\u001b[1;32m     36\u001b[0m     data_t \u001b[38;5;241m=\u001b[39m aidge2c(tensor\u001b[38;5;241m.\u001b[39mdtype()),\n\u001b[1;32m     37\u001b[0m     name \u001b[38;5;241m=\u001b[39m array_name,\n\u001b[0;32m---> 38\u001b[0m     values \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mlist\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mtensor\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m     39\u001b[0m )\n",
+      "\u001b[0;31mRuntimeError\u001b[0m: Tensor::get<>(0): can only be used for backends providing a valid host pointer."
+     ]
+    }
+   ],
+   "source": [
+    "aidge_core.export_utils.scheduler_export(\n",
+    "        scheduler,\n",
+    "        \"myexport\",\n",
+    "        aidge_export_cpp.ExportLibCpp,\n",
+    "        memory_manager=aidge_core.mem_info.generate_optimized_memory_info,\n",
+    "        memory_manager_args={\"stats_folder\": \"myexport/stats\", \"wrapping\": False }\n",
+    ")\n",
+    "\n",
+    "aidge_core.export_utils.generate_main_cpp(\"myexport\", model)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.611094Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.610964Z",
+     "iopub.status.idle": "2025-05-19T10:05:18.727283Z",
+     "shell.execute_reply": "2025-05-19T10:05:18.726732Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "/usr/bin/sh: 1: tree: not found\r\n"
+     ]
+    }
+   ],
+   "source": [
+    "!tree myexport"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 13,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:18.728827Z",
+     "iopub.status.busy": "2025-05-19T10:05:18.728635Z",
+     "iopub.status.idle": "2025-05-19T10:05:19.251140Z",
+     "shell.execute_reply": "2025-05-19T10:05:19.250690Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "make[1]: Entering directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/myexport'\r\n",
+      "g++  -O2 -Wall -Wextra -MMD -fopenmp -I. -I./dnn -I./dnn/include -I./dnn/layers -I./dnn/parameters -c dnn/src/forward.cpp -o build/./dnn/src/forward.o \r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "In file included from \u001b[01m\u001b[K./dnn/include/layers/data_11_Gemm.h:3\u001b[m\u001b[K,\r\n",
+      "                 from \u001b[01m\u001b[Kdnn/src/forward.cpp:17\u001b[m\u001b[K:\r\n",
+      "\u001b[01m\u001b[K./dnn/include/network/rescaling_utils.hpp:11:16:\u001b[m\u001b[K \u001b[01;35m\u001b[Kwarning: \u001b[m\u001b[K‘\u001b[01m\u001b[Kint64_t smlal(int32_t, int32_t, uint32_t, uint32_t)\u001b[m\u001b[K’ defined but not used [\u001b[01;35m\u001b[K\u001b]8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-function\u0007-Wunused-function\u001b]8;;\u0007\u001b[m\u001b[K]\r\n",
+      "   11 | static int64_t \u001b[01;35m\u001b[Ksmlal\u001b[m\u001b[K(int32_t lhs, int32_t rhs,\r\n",
+      "      |                \u001b[01;35m\u001b[K^~~~~\u001b[m\u001b[K\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "g++  build/./dnn/src/forward.o  -fopenmp -o bin/run_export\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o: in function `_start':\r\n",
+      "(.text+0x1b): undefined reference to `main'\r\n",
+      "collect2: error: ld returned 1 exit status\r\n",
+      "make[1]: *** [Makefile:19: build] Error 1\r\n",
+      "make[1]: Leaving directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/myexport'\r\n"
+     ]
+    }
+   ],
+   "source": [
+    "!cd myexport && make"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 14,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:19.252608Z",
+     "iopub.status.busy": "2025-05-19T10:05:19.252455Z",
+     "iopub.status.idle": "2025-05-19T10:05:19.364790Z",
+     "shell.execute_reply": "2025-05-19T10:05:19.364355Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "/usr/bin/sh: 1: ./myexport/bin/run_export: not found\r\n"
+     ]
+    }
+   ],
+   "source": [
+    "!./myexport/bin/run_export"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "aidge",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.12"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/source/Tutorial/export_cpp_quant.html b/source/Tutorial/export_cpp_quant.html
new file mode 100644
index 0000000000000000000000000000000000000000..f7bdb907d35555bcf07e98cd81ec75703acd4c19
--- /dev/null
+++ b/source/Tutorial/export_cpp_quant.html
@@ -0,0 +1,827 @@
+
+<!DOCTYPE html>
+
+
+<html lang="en" data-content_root="../../" >
+
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
+
+    <title>Quantized model C++ export &#8212; Eclipse Aidge  documentation</title>
+  
+  
+  
+  <script data-cfasync="false">
+    document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
+    document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
+  </script>
+  <!--
+    this give us a css class that will be invisible only if js is disabled
+  -->
+  <noscript>
+    <style>
+      .pst-js-only { display: none !important; }
+
+    </style>
+  </noscript>
+  
+  <!-- Loaded before other Sphinx assets -->
+  <link href="../../_static/styles/theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+<link href="../../_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+
+    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=8f2a1f02" />
+    <link rel="stylesheet" type="text/css" href="../../_static/graphviz.css?v=4ae1632d" />
+    <link rel="stylesheet" type="text/css" href="../../_static/copybutton.css?v=76b2166b" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sg_gallery.css?v=d2d258e8" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sphinx-design.min.css?v=95c83b7e" />
+    <link rel="stylesheet" type="text/css" href="../../_static/nbsphinx-code-cells.css?v=2aa19091" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/custom.css?v=abb81387" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/id.css?v=5eddeb79" />
+  
+  <!-- So that users can add custom icons -->
+  <script src="../../_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
+  <!-- Pre-loaded scripts that we'll load fully later -->
+  <link rel="preload" as="script" href="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
+<link rel="preload" as="script" href="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />
+
+    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
+    <script src="../../_static/doctools.js?v=9bcbadda"></script>
+    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
+    <script src="../../_static/clipboard.min.js?v=a7894cd8"></script>
+    <script src="../../_static/copybutton.js?v=f281be69"></script>
+    <script src="../../_static/design-tabs.js?v=f930bc37"></script>
+    <script src="https://cdn.jsdelivr.net/npm/@jupyter-widgets/html-manager@^1.0.1/dist/embed-amd.js"></script>
+    <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script>
+    <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
+    <script>DOCUMENTATION_OPTIONS.pagename = 'source/Tutorial/export_cpp_quant';</script>
+    <script src="../../_static/js/mermaid.min.js"></script>
+    <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
+    <link rel="index" title="Index" href="../../genindex.html" />
+    <link rel="search" title="Search" href="../../search.html" />
+    <link rel="next" title="Add a custom operator to the C++ export" href="export_cpp_add_impl.html" />
+    <link rel="prev" title="Export 101" href="export_cpp.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1"/>
+  <meta name="docsearch:language" content="en"/>
+  <meta name="docsearch:version" content="0.6.1" />
+  </head>
+  
+  
+  <body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
+
+  
+  
+  <div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
+  
+  <div id="pst-scroll-pixel-helper"></div>
+  
+  <button type="button" class="btn rounded-pill" id="pst-back-to-top">
+    <i class="fa-solid fa-arrow-up"></i>Back to top</button>
+
+  
+  <dialog id="pst-search-dialog">
+    
+<form class="bd-search d-flex align-items-center"
+      action="../../search.html"
+      method="get">
+  <i class="fa-solid fa-magnifying-glass"></i>
+  <input type="search"
+         class="form-control"
+         name="q"
+         placeholder="Search the docs ..."
+         aria-label="Search the docs ..."
+         autocomplete="off"
+         autocorrect="off"
+         autocapitalize="off"
+         spellcheck="false"/>
+  <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
+</form>
+  </dialog>
+
+  <div class="pst-async-banner-revealer d-none">
+  <aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
+</div>
+
+  
+    <header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
+<div class="bd-header__inner bd-page-width">
+  <button class="pst-navbar-icon sidebar-toggle primary-toggle" aria-label="Site navigation">
+    <span class="fa-solid fa-bars"></span>
+  </button>
+  
+  
+  <div class="col-lg-3 navbar-header-items__start">
+    
+      <div class="navbar-item">
+
+  
+    
+  
+
+<a class="navbar-brand logo" href="../../index.html">
+  
+  
+  
+  
+  
+    
+    
+      
+    
+    
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-light" alt=""/>
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-dark pst-js-only" alt=""/>
+  
+  
+    <p class="title logo__title">Eclipse Aidge</p>
+  
+</a></div>
+    
+  </div>
+  
+  <div class="col-lg-9 navbar-header-items">
+    
+    <div class="me-auto navbar-header-items__center">
+      
+        <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+      
+    </div>
+    
+    
+    <div class="navbar-header-items__end">
+      
+        <div class="navbar-item navbar-persistent--container">
+          
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+        </div>
+      
+      
+        <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+      
+        <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+      
+    </div>
+    
+  </div>
+  
+  
+    <div class="navbar-persistent--mobile">
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+    </div>
+  
+
+  
+    <button class="pst-navbar-icon sidebar-toggle secondary-toggle" aria-label="On this page">
+      <span class="fa-solid fa-outdent"></span>
+    </button>
+  
+</div>
+
+    </header>
+  
+
+  <div class="bd-container">
+    <div class="bd-container__inner bd-page-width">
+      
+      
+      
+      <dialog id="pst-primary-sidebar-modal"></dialog>
+      <div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
+        
+
+  
+  <div class="sidebar-header-items sidebar-primary__section">
+    
+    
+      <div class="sidebar-header-items__center">
+        
+          
+          
+            <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+          
+        
+      </div>
+    
+    
+    
+      <div class="sidebar-header-items__end">
+        
+          <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+        
+          <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+        
+      </div>
+    
+  </div>
+  
+    <div class="sidebar-primary-items__start sidebar-primary__section">
+        <div class="sidebar-primary-item">
+<nav class="bd-docs-nav bd-links"
+     aria-label="Section Navigation">
+  <p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
+  <div class="bd-toc-item navbar-nav"><ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
+<li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
+</ul>
+<ul class="current nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
+</ul>
+</div>
+</nav></div>
+    </div>
+  
+  
+  <div class="sidebar-primary-items__end sidebar-primary__section">
+      <div class="sidebar-primary-item">
+<div id="ethical-ad-placement"
+      class="flat"
+      data-ea-publisher="readthedocs"
+      data-ea-type="readthedocs-sidebar"
+      data-ea-manual="true">
+</div></div>
+  </div>
+
+
+      </div>
+      
+      <main id="main-content" class="bd-main" role="main">
+        
+        
+          <div class="bd-content">
+            <div class="bd-article-container">
+              
+              <div class="bd-header-article d-print-none">
+<div class="header-article-items header-article__inner">
+  
+    <div class="header-article-items__start">
+      
+        <div class="header-article-item">
+
+<nav aria-label="Breadcrumb" class="d-print-none">
+  <ul class="bd-breadcrumbs">
+    
+    <li class="breadcrumb-item breadcrumb-home">
+      <a href="../../index.html" class="nav-link" aria-label="Home">
+        <i class="fa-solid fa-home"></i>
+      </a>
+    </li>
+    
+    <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
+    
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Quantized model C++ export</span></li>
+  </ul>
+</nav>
+</div>
+      
+    </div>
+  
+  
+</div>
+</div>
+              
+              
+              
+                
+<div id="searchbox"></div>
+                <article class="bd-article">
+                  
+  <section id="Quantized-model-C++-export">
+<h1>Quantized model C++ export<a class="headerlink" href="#Quantized-model-C++-export" title="Link to this heading">#</a></h1>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">%</span><span class="k">pip</span> install requests numpy ipywidgets ipycanvas
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Aidge modules imports</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_core</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_backend_cpu</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_onnx</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_export_cpp</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_quantization</span>
+<span class="kn">from</span><span class="w"> </span><span class="nn">aidge_export_cpp.export_utils</span><span class="w"> </span><span class="kn">import</span> <span class="p">(</span>
+    <span class="n">cpp_fuse_to_metaops</span><span class="p">,</span>
+    <span class="n">set_nodes_names</span><span class="p">,</span>
+    <span class="n">set_nodes_datatypes</span><span class="p">,</span>
+    <span class="n">exclude_unwanted_producers</span><span class="p">)</span>
+
+<span class="kn">from</span><span class="w"> </span><span class="nn">aidge_core.export_utils</span><span class="w"> </span><span class="kn">import</span> <span class="n">remove_optional_inputs</span>
+<span class="c1"># For database</span>
+<span class="kn">from</span><span class="w"> </span><span class="nn">torchvision</span><span class="w"> </span><span class="kn">import</span> <span class="n">transforms</span><span class="p">,</span> <span class="n">datasets</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Global variables</span>
+<span class="n">USE_CUDA</span>      <span class="o">=</span> <span class="kc">False</span>
+<span class="k">if</span> <span class="n">USE_CUDA</span><span class="p">:</span>
+    <span class="kn">import</span><span class="w"> </span><span class="nn">aidge_backend_cuda</span>
+<span class="n">BACKEND</span>       <span class="o">=</span> <span class="s2">&quot;cuda&quot;</span> <span class="k">if</span> <span class="n">USE_CUDA</span> <span class="k">else</span> <span class="s2">&quot;cpu&quot;</span>
+<span class="n">MODEL_NAME</span>    <span class="o">=</span> <span class="s2">&quot;lenet&quot;</span>
+<span class="n">EXPORT_FOLDER</span>   <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">MODEL_NAME</span><span class="si">}</span><span class="s2">_export_int8&quot;</span>
+
+<span class="c1">## PTQ Variables</span>
+<span class="n">NB_TEST</span>       <span class="o">=</span> <span class="mi">10</span>
+<span class="n">NB_CALIB</span>      <span class="o">=</span> <span class="mi">20</span>
+<span class="n">NB_BITS</span>       <span class="o">=</span> <span class="mi">8</span>
+<span class="n">TARGET_TYPE</span>   <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">int32</span>
+<span class="n">OPTIM_SIGN</span>    <span class="o">=</span> <span class="kc">False</span>
+<span class="n">CLIPPING</span>      <span class="o">=</span> <span class="n">aidge_quantization</span><span class="o">.</span><span class="n">Clipping</span><span class="o">.</span><span class="n">MSE</span>  <span class="c1"># &#39;MAX&#39;</span>
+<span class="n">SINGLE_SHIFT</span>  <span class="o">=</span> <span class="kc">True</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">def</span><span class="w"> </span><span class="nf">propagate</span><span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="n">scheduler</span><span class="p">,</span> <span class="n">tensor</span><span class="p">):</span>
+<span class="w">    </span><span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">    Propagate the given tensor into the model and return the</span>
+<span class="sd">    output tensor.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Propagate: </span><span class="si">{</span><span class="n">tensor</span><span class="o">.</span><span class="n">backend</span><span class="p">()</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
+    <span class="c1"># Run the inference</span>
+    <span class="n">scheduler</span><span class="o">.</span><span class="n">forward</span><span class="p">(</span><span class="kc">True</span><span class="p">,</span> <span class="p">[</span><span class="n">tensor</span><span class="p">])</span>
+    <span class="c1"># Gather the results</span>
+    <span class="n">output_node</span> <span class="o">=</span> <span class="n">model</span><span class="o">.</span><span class="n">get_output_nodes</span><span class="p">()</span><span class="o">.</span><span class="n">pop</span><span class="p">()</span>
+    <span class="n">output_tensor</span> <span class="o">=</span> <span class="n">output_node</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">get_output</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">clone</span><span class="p">()</span>
+    <span class="n">output_tensor</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s2">&quot;cpu&quot;</span><span class="p">)</span>
+    <span class="k">return</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">output_tensor</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<section id="Download-the-model">
+<h2>Download the model<a class="headerlink" href="#Download-the-model" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">file_url</span> <span class="o">=</span> <span class="s2">&quot;https://huggingface.co/EclipseAidge/LeNet/resolve/main/lenet_mnist.onnx?download=true&quot;</span>
+<span class="n">file_path</span> <span class="o">=</span> <span class="n">MODEL_NAME</span> <span class="o">+</span> <span class="s2">&quot;_mnist.onnx&quot;</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">download_file</span><span class="p">(</span><span class="n">file_path</span><span class="p">,</span> <span class="n">file_url</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+</section>
+<section id="Create-database-to-quantize-model">
+<h2>Create database to quantize model<a class="headerlink" href="#Create-database-to-quantize-model" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">transform</span> <span class="o">=</span> <span class="n">transforms</span><span class="o">.</span><span class="n">ToTensor</span><span class="p">()</span>
+<span class="n">test_set</span>  <span class="o">=</span> <span class="n">datasets</span><span class="o">.</span><span class="n">MNIST</span><span class="p">(</span><span class="n">root</span><span class="o">=</span><span class="s1">&#39;./data&#39;</span><span class="p">,</span> <span class="n">train</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">transform</span><span class="p">,</span> <span class="n">download</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+
+<span class="n">tensors</span> <span class="o">=</span> <span class="p">[]</span>
+<span class="n">labels</span>  <span class="o">=</span> <span class="p">[]</span>
+<span class="n">index</span> <span class="o">=</span> <span class="mi">0</span>
+<span class="k">for</span> <span class="n">in_tensor</span><span class="p">,</span> <span class="n">label</span> <span class="ow">in</span> <span class="n">test_set</span><span class="p">:</span>
+    <span class="n">array</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">in_tensor</span><span class="p">)</span>
+    <span class="n">array</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">reshape</span><span class="p">(</span><span class="n">array</span><span class="p">,</span> <span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">28</span><span class="p">,</span> <span class="mi">28</span><span class="p">))</span>
+    <span class="n">tensor</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">Tensor</span><span class="p">(</span><span class="n">array</span><span class="p">)</span>
+    <span class="n">tensor</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="n">BACKEND</span><span class="p">)</span>
+    <span class="n">tensor</span><span class="o">.</span><span class="n">set_datatype</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">)</span>
+    <span class="n">tensors</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">tensor</span><span class="p">)</span>
+    <span class="n">labels</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">label</span><span class="p">)</span>
+    <span class="n">index</span> <span class="o">+=</span> <span class="mi">1</span>
+    <span class="k">if</span> <span class="p">(</span><span class="n">index</span> <span class="o">==</span> <span class="nb">max</span><span class="p">(</span><span class="n">NB_TEST</span><span class="p">,</span> <span class="n">NB_CALIB</span><span class="p">)):</span>
+        <span class="k">break</span>
+</pre></div>
+</div>
+</div>
+</section>
+<section id="Load-the-model-in-Aidge-and-manipulate-it">
+<h2>Load the model in Aidge and manipulate it<a class="headerlink" href="#Load-the-model-in-Aidge-and-manipulate-it" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span> <span class="o">=</span> <span class="n">aidge_onnx</span><span class="o">.</span><span class="n">load_onnx</span><span class="p">(</span><span class="n">file_path</span><span class="p">,</span> <span class="n">verbose</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">remove_flatten</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">fuse_batchnorm</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">expand_metaops</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="n">model</span><span class="o">.</span><span class="n">set_datatype</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">)</span>
+<span class="n">model</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="n">BACKEND</span><span class="p">)</span>
+<span class="n">model</span><span class="o">.</span><span class="n">save</span><span class="p">(</span><span class="s2">&quot;imported_model&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<p>Checking accuracy:</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">scheduler</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">SequentialScheduler</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+
+<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1"> EXAMPLE INFERENCES :&#39;</span><span class="p">)</span>
+<span class="n">nb_valid</span> <span class="o">=</span> <span class="mi">0</span>
+<span class="n">base_values</span> <span class="o">=</span> <span class="p">[]</span>
+<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">NB_TEST</span><span class="p">):</span>
+    <span class="n">output_array</span> <span class="o">=</span> <span class="n">propagate</span><span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="n">scheduler</span><span class="p">,</span> <span class="n">tensors</span><span class="p">[</span><span class="n">i</span><span class="p">])</span>
+    <span class="nb">print</span><span class="p">(</span><span class="n">labels</span><span class="p">[</span><span class="n">i</span><span class="p">],</span> <span class="s1">&#39; VS &#39;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">argmax</span><span class="p">(</span><span class="n">output_array</span><span class="p">),</span> <span class="s1">&#39; -&gt; &#39;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">max</span><span class="p">(</span><span class="n">output_array</span><span class="p">))</span>
+    <span class="n">base_values</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">max</span><span class="p">(</span><span class="n">output_array</span><span class="p">))</span>
+    <span class="k">if</span> <span class="p">(</span><span class="n">labels</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">==</span> <span class="n">np</span><span class="o">.</span><span class="n">argmax</span><span class="p">(</span><span class="n">output_array</span><span class="p">)):</span>
+        <span class="n">nb_valid</span> <span class="o">+=</span> <span class="mi">1</span>
+<span class="n">accuracy</span> <span class="o">=</span> <span class="n">nb_valid</span> <span class="o">/</span> <span class="n">NB_TEST</span>
+<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1"> MODEL ACCURACY = &#39;</span><span class="p">,</span> <span class="n">accuracy</span> <span class="o">*</span> <span class="mi">100</span><span class="p">,</span> <span class="s1">&#39;%&#39;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+</section>
+<section id="Quantize-the-model-to-int8">
+<h2>Quantize the model to int8<a class="headerlink" href="#Quantize-the-model-to-int8" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">aidge_quantization</span><span class="o">.</span><span class="n">quantize_network</span><span class="p">(</span>
+        <span class="n">network</span> <span class="o">=</span> <span class="n">model</span><span class="p">,</span>
+        <span class="n">nb_bits</span> <span class="o">=</span> <span class="n">NB_BITS</span><span class="p">,</span>
+        <span class="n">calibration_set</span> <span class="o">=</span> <span class="n">tensors</span><span class="p">[</span><span class="mi">0</span><span class="p">:</span><span class="n">NB_CALIB</span><span class="p">],</span>
+        <span class="n">clipping_mode</span> <span class="o">=</span> <span class="n">CLIPPING</span><span class="p">,</span>
+        <span class="n">target_type</span> <span class="o">=</span> <span class="n">TARGET_TYPE</span><span class="p">,</span>
+        <span class="n">no_quant</span> <span class="o">=</span> <span class="kc">False</span><span class="p">,</span>
+        <span class="n">optimize_signs</span> <span class="o">=</span> <span class="n">OPTIM_SIGN</span><span class="p">,</span>
+        <span class="n">single_shift</span> <span class="o">=</span> <span class="n">SINGLE_SHIFT</span><span class="p">,</span>
+        <span class="n">use_cuda</span> <span class="o">=</span> <span class="n">USE_CUDA</span><span class="p">,</span>
+        <span class="n">fold_graph</span> <span class="o">=</span> <span class="kc">True</span><span class="p">)</span>
+<br/><br/></pre></div>
+</div>
+</div>
+<p>Once the quantization is done, the graph now only accepts integer inputs. So we need to rescale the dataset for the data to be within [0, 255]. Also, tensors should be casted to be the same type as TARGET_TYPE.</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">rescaling</span> <span class="o">=</span> <span class="mi">2</span><span class="o">**</span><span class="p">(</span><span class="n">NB_BITS</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span><span class="o">-</span><span class="mi">1</span>
+<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">NB_TEST</span><span class="p">):</span>
+        <span class="n">tensors</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s2">&quot;cpu&quot;</span><span class="p">)</span>
+        <span class="n">array</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">tensors</span><span class="p">[</span><span class="n">i</span><span class="p">])</span> <span class="o">*</span> <span class="n">rescaling</span>
+        <span class="n">array</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">round</span><span class="p">(</span><span class="n">array</span><span class="p">)</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="nb">int</span><span class="p">)</span>
+        <span class="n">tensors</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">Tensor</span><span class="p">(</span><span class="n">array</span><span class="p">)</span>
+        <span class="n">tensors</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">.</span><span class="n">set_datatype</span><span class="p">(</span><span class="n">TARGET_TYPE</span><span class="p">)</span>
+        <span class="n">tensors</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s2">&quot;cpu&quot;</span><span class="p">)</span>
+<span class="c1"># Setting model to CPU for export</span>
+<span class="n">model</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s2">&quot;cpu&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<p>Each time the graph has been change, it has to be reset. Here some Quantizer and Cast nodes have been added.</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">input_node</span> <span class="o">=</span> <span class="n">model</span><span class="o">.</span><span class="n">get_ordered_inputs</span><span class="p">()[</span><span class="mi">0</span><span class="p">]</span>
+<span class="n">input_node</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">get_operator</span><span class="p">()</span><span class="o">.</span><span class="n">set_input</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="n">tensors</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
+<span class="n">scheduler</span><span class="o">.</span><span class="n">reset_scheduling</span><span class="p">()</span>
+</pre></div>
+</div>
+</div>
+<p>And now we can assess the new performances after quantization:</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1"> QUANTIZED EXAMPLE INFERENCES:&#39;</span><span class="p">)</span>
+<span class="n">nb_valid</span> <span class="o">=</span> <span class="mi">0</span>
+<span class="n">post_values</span> <span class="o">=</span> <span class="p">[]</span>
+<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">NB_TEST</span><span class="p">):</span>
+    <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;QEI: </span><span class="si">{</span><span class="n">tensors</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">.</span><span class="n">backend</span><span class="p">()</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
+    <span class="n">output_array</span> <span class="o">=</span> <span class="n">propagate</span><span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="n">scheduler</span><span class="p">,</span> <span class="n">tensors</span><span class="p">[</span><span class="n">i</span><span class="p">])</span>
+    <span class="nb">print</span><span class="p">(</span><span class="n">labels</span><span class="p">[</span><span class="n">i</span><span class="p">],</span> <span class="s1">&#39; VS &#39;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">argmax</span><span class="p">(</span><span class="n">output_array</span><span class="p">),</span> <span class="s1">&#39; -&gt; &#39;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">max</span><span class="p">(</span><span class="n">output_array</span><span class="p">))</span>
+    <span class="n">post_values</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">max</span><span class="p">(</span><span class="n">output_array</span><span class="p">))</span>
+    <span class="k">if</span> <span class="p">(</span><span class="n">labels</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">==</span> <span class="n">np</span><span class="o">.</span><span class="n">argmax</span><span class="p">(</span><span class="n">output_array</span><span class="p">)):</span>
+        <span class="n">nb_valid</span> <span class="o">+=</span> <span class="mi">1</span>
+<span class="n">quant_accuracy</span> <span class="o">=</span> <span class="n">nb_valid</span> <span class="o">/</span> <span class="n">NB_TEST</span>
+<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1"> MODEL ACCURACY = &#39;</span><span class="p">,</span> <span class="n">accuracy</span> <span class="o">*</span> <span class="mi">100</span><span class="p">,</span> <span class="s1">&#39;%&#39;</span><span class="p">)</span>
+<span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1"> QUANTIZED ACCURACY = &#39;</span><span class="p">,</span> <span class="n">quant_accuracy</span> <span class="o">*</span> <span class="mi">100</span><span class="p">,</span> <span class="s1">&#39;%&#39;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">exclude_unwanted_producers</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+
+<span class="c1"># Fuse nodes</span>
+<span class="n">cpp_fuse_to_metaops</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="n">remove_optional_inputs</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="n">scheduler</span><span class="o">.</span><span class="n">reset_scheduling</span><span class="p">()</span>
+<span class="n">scheduler</span><span class="o">.</span><span class="n">generate_scheduling</span><span class="p">()</span> <span class="c1"># Scheduler needs to be generated as it has just been reset</span>
+<span class="n">set_nodes_names</span><span class="p">(</span><span class="n">scheduler</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">output_array</span> <span class="o">=</span> <span class="n">propagate</span><span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="n">scheduler</span><span class="p">,</span> <span class="n">tensors</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
+
+<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;### Exported Sample ###&quot;</span><span class="p">)</span>
+<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Aidge prediction :&quot;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">argmax</span><span class="p">(</span><span class="n">output_array</span><span class="p">),</span> <span class="s2">&quot;(&quot;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">max</span><span class="p">(</span><span class="n">output_array</span><span class="p">))</span> <span class="o">+</span> <span class="s2">&quot;)&quot;</span><span class="p">)</span>
+<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Label :&quot;</span><span class="p">,</span> <span class="n">labels</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
+<span class="n">set_nodes_datatypes</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[31]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">aidge_export_cpp</span><span class="o">.</span><span class="n">export</span><span class="p">(</span><span class="n">EXPORT_FOLDER</span><span class="p">,</span>
+                        <span class="n">model</span><span class="p">,</span>
+                        <span class="n">scheduler</span><span class="p">,</span>
+                        <span class="n">labels</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">Tensor</span><span class="p">(</span><span class="n">labels</span><span class="p">[</span><span class="mi">0</span><span class="p">]),</span>
+                        <span class="n">dev_mode</span> <span class="o">=</span> <span class="kc">False</span><span class="p">,</span>
+                        <span class="n">aidge_cmp</span> <span class="o">=</span> <span class="kc">False</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="nn">subprocess</span><span class="w"> </span><span class="kn">import</span> <span class="n">CalledProcessError</span>
+
+<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;</span><span class="se">\n</span><span class="s2">### Compiling the export ###&quot;</span><span class="p">)</span>
+<span class="k">try</span><span class="p">:</span>
+    <span class="k">for</span> <span class="n">std_line</span> <span class="ow">in</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">run_command</span><span class="p">([</span><span class="s2">&quot;make&quot;</span><span class="p">],</span> <span class="n">cwd</span><span class="o">=</span><span class="n">EXPORT_FOLDER</span><span class="p">):</span>
+        <span class="nb">print</span><span class="p">(</span><span class="n">std_line</span><span class="p">,</span> <span class="n">end</span><span class="o">=</span><span class="s2">&quot;&quot;</span><span class="p">)</span>
+<span class="k">except</span> <span class="n">CalledProcessError</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
+            <span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="sa">f</span><span class="s2">&quot;An error occurred, failed to build export.&quot;</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="nn">e</span>
+<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;</span><span class="se">\n</span><span class="s2">### Running the export ###&quot;</span><span class="p">)</span>
+<span class="k">try</span><span class="p">:</span>
+    <span class="k">for</span> <span class="n">std_line</span> <span class="ow">in</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">run_command</span><span class="p">([</span><span class="s2">&quot;./bin/run_export&quot;</span><span class="p">],</span> <span class="n">cwd</span><span class="o">=</span><span class="n">EXPORT_FOLDER</span><span class="p">):</span>
+        <span class="nb">print</span><span class="p">(</span><span class="n">std_line</span><span class="p">,</span> <span class="n">end</span><span class="o">=</span><span class="s2">&quot;&quot;</span><span class="p">)</span>
+<span class="k">except</span> <span class="n">CalledProcessError</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
+    <span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="sa">f</span><span class="s2">&quot;An error occurred, failed to run export.&quot;</span><span class="p">)</span> <span class="kn">from</span><span class="w"> </span><span class="nn">e</span>
+</pre></div>
+</div>
+</div>
+</section>
+</section>
+
+
+                </article>
+              
+              
+              
+              
+              
+                <footer class="prev-next-footer d-print-none">
+                  
+<div class="prev-next-area">
+    <a class="left-prev"
+       href="export_cpp.html"
+       title="previous page">
+      <i class="fa-solid fa-angle-left"></i>
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">previous</p>
+        <p class="prev-next-title">Export 101</p>
+      </div>
+    </a>
+    <a class="right-next"
+       href="export_cpp_add_impl.html"
+       title="next page">
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">next</p>
+        <p class="prev-next-title">Add a custom operator to the C++ export</p>
+      </div>
+      <i class="fa-solid fa-angle-right"></i>
+    </a>
+</div>
+                </footer>
+              
+            </div>
+            
+            
+              
+                <dialog id="pst-secondary-sidebar-modal"></dialog>
+                <div id="pst-secondary-sidebar" class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
+
+
+  <div class="sidebar-secondary-item">
+<div
+    id="pst-page-navigation-heading-2"
+    class="page-toc tocsection onthispage">
+    <i class="fa-solid fa-list"></i> On this page
+  </div>
+  <nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
+    <ul class="visible nav section-nav flex-column">
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Download-the-model">Download the model</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Create-database-to-quantize-model">Create database to quantize model</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Load-the-model-in-Aidge-and-manipulate-it">Load the model in Aidge and manipulate it</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Quantize-the-model-to-int8">Quantize the model to int8</a></li>
+</ul>
+  </nav></div>
+
+  <div class="sidebar-secondary-item">
+  <div role="note" aria-label="source link">
+    <h3>This Page</h3>
+    <ul class="this-page-menu">
+      <li><a href="../../_sources/source/Tutorial/export_cpp_quant.nblink.txt"
+            rel="nofollow">Show Source</a></li>
+    </ul>
+   </div></div>
+
+</div></div>
+              
+            
+          </div>
+          <footer class="bd-footer-content">
+            
+          </footer>
+        
+      </main>
+    </div>
+  </div>
+  
+  <!-- Scripts loaded after <body> so the DOM is not blocked -->
+  <script defer src="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
+<script defer src="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>
+
+  <footer class="bd-footer">
+<div class="bd-footer__inner bd-page-width">
+  
+    <div class="footer-items__start">
+      
+        <div class="footer-item">
+
+  <p class="copyright">
+    
+      © Copyright 2023, CEA LIST.
+      <br/>
+    
+  </p>
+</div>
+      
+        <div class="footer-item">
+
+  <p class="sphinx-version">
+    Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.1.3.
+    <br/>
+  </p>
+</div>
+      
+    </div>
+  
+  
+  
+    <div class="footer-items__end">
+      
+        <div class="footer-item">
+<p class="theme-version">
+  <!-- # L10n: Setting the PST URL as an argument as this does not need to be localized -->
+  Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.16.1.
+</p></div>
+      
+    </div>
+  
+</div>
+
+  </footer>
+  </body>
+</html>
\ No newline at end of file
diff --git a/source/Tutorial/export_cpp_quant.ipynb b/source/Tutorial/export_cpp_quant.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..889b790354338aaa71b87e661a316362f45af5d0
--- /dev/null
+++ b/source/Tutorial/export_cpp_quant.ipynb
@@ -0,0 +1,377 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Quantized model C++ export"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "%pip install requests numpy ipywidgets ipycanvas"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Aidge modules imports\n",
+    "import aidge_core\n",
+    "import aidge_backend_cpu\n",
+    "import aidge_onnx\n",
+    "import aidge_export_cpp\n",
+    "import aidge_quantization\n",
+    "from aidge_export_cpp.export_utils import (\n",
+    "    cpp_fuse_to_metaops,\n",
+    "    set_nodes_names,\n",
+    "    set_nodes_datatypes,\n",
+    "    exclude_unwanted_producers)\n",
+    "\n",
+    "from aidge_core.export_utils import remove_optional_inputs\n",
+    "# For database\n",
+    "from torchvision import transforms, datasets\n",
+    "import numpy as np"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Global variables\n",
+    "USE_CUDA      = False\n",
+    "if USE_CUDA:\n",
+    "    import aidge_backend_cuda\n",
+    "BACKEND       = \"cuda\" if USE_CUDA else \"cpu\"\n",
+    "MODEL_NAME    = \"lenet\"\n",
+    "EXPORT_FOLDER   = f\"{MODEL_NAME}_export_int8\"\n",
+    "\n",
+    "## PTQ Variables\n",
+    "NB_TEST       = 10\n",
+    "NB_CALIB      = 20\n",
+    "NB_BITS       = 8\n",
+    "TARGET_TYPE   = aidge_core.dtype.int32\n",
+    "OPTIM_SIGN    = False\n",
+    "CLIPPING      = aidge_quantization.Clipping.MSE  # 'MAX'\n",
+    "SINGLE_SHIFT  = True"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def propagate(model, scheduler, tensor):\n",
+    "    \"\"\"\n",
+    "    Propagate the given tensor into the model and return the\n",
+    "    output tensor.\n",
+    "    \"\"\"\n",
+    "    print(f\"Propagate: {tensor.backend()}\")\n",
+    "    # Run the inference\n",
+    "    scheduler.forward(True, [tensor])\n",
+    "    # Gather the results\n",
+    "    output_node = model.get_output_nodes().pop()\n",
+    "    output_tensor = output_node.get_operator().get_output(0).clone()\n",
+    "    output_tensor.set_backend(\"cpu\")\n",
+    "    return np.array(output_tensor)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Download the model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "file_url = \"https://huggingface.co/EclipseAidge/LeNet/resolve/main/lenet_mnist.onnx?download=true\"\n",
+    "file_path = MODEL_NAME + \"_mnist.onnx\"\n",
+    "aidge_core.utils.download_file(file_path, file_url)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Create database to quantize model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "transform = transforms.ToTensor()\n",
+    "test_set  = datasets.MNIST(root='./data', train=False, transform=transform, download=True)\n",
+    "\n",
+    "tensors = []\n",
+    "labels  = []\n",
+    "index = 0\n",
+    "for in_tensor, label in test_set:\n",
+    "    array = np.array(in_tensor)\n",
+    "    array = np.reshape(array, (1, 1, 28, 28))\n",
+    "    tensor = aidge_core.Tensor(array)\n",
+    "    tensor.set_backend(BACKEND)\n",
+    "    tensor.set_datatype(aidge_core.dtype.float32)\n",
+    "    tensors.append(tensor)\n",
+    "    labels.append(label)\n",
+    "    index += 1\n",
+    "    if (index == max(NB_TEST, NB_CALIB)):\n",
+    "        break"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Load the model in Aidge and manipulate it"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "model = aidge_onnx.load_onnx(file_path, verbose=False)\n",
+    "aidge_core.remove_flatten(model)\n",
+    "aidge_core.fuse_batchnorm(model)\n",
+    "aidge_core.expand_metaops(model)\n",
+    "model.set_datatype(aidge_core.dtype.float32)\n",
+    "model.set_backend(BACKEND)\n",
+    "model.save(\"imported_model\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Checking accuracy:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "scheduler = aidge_core.SequentialScheduler(model)\n",
+    "\n",
+    "print('\\n EXAMPLE INFERENCES :')\n",
+    "nb_valid = 0\n",
+    "base_values = []\n",
+    "for i in range(NB_TEST):\n",
+    "    output_array = propagate(model, scheduler, tensors[i])\n",
+    "    print(labels[i], ' VS ', np.argmax(output_array), ' -> ', np.max(output_array))\n",
+    "    base_values.append(np.max(output_array))\n",
+    "    if (labels[i] == np.argmax(output_array)):\n",
+    "        nb_valid += 1\n",
+    "accuracy = nb_valid / NB_TEST\n",
+    "print('\\n MODEL ACCURACY = ', accuracy * 100, '%')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Quantize the model to int8"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "aidge_quantization.quantize_network(\n",
+    "        network = model,\n",
+    "        nb_bits = NB_BITS,\n",
+    "        calibration_set = tensors[0:NB_CALIB],\n",
+    "        clipping_mode = CLIPPING,\n",
+    "        target_type = TARGET_TYPE,\n",
+    "        no_quant = False,\n",
+    "        optimize_signs = OPTIM_SIGN,\n",
+    "        single_shift = SINGLE_SHIFT,\n",
+    "        use_cuda = USE_CUDA,\n",
+    "        fold_graph = True)\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Once the quantization is done, the graph now only accepts integer inputs.\n",
+    "So we need to rescale the dataset for the data to be within [0, 255].\n",
+    "Also, tensors should be casted to be the same type as TARGET_TYPE."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "rescaling = 2**(NB_BITS-1)-1\n",
+    "for i in range(NB_TEST):\n",
+    "        tensors[i].set_backend(\"cpu\")\n",
+    "        array = np.array(tensors[i]) * rescaling\n",
+    "        array = np.round(array).astype(int)\n",
+    "        tensors[i] = aidge_core.Tensor(array)\n",
+    "        tensors[i].set_datatype(TARGET_TYPE)\n",
+    "        tensors[i].set_backend(\"cpu\")\n",
+    "# Setting model to CPU for export\n",
+    "model.set_backend(\"cpu\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Each time the graph has been change, it has to be reset.\n",
+    "Here some Quantizer and Cast nodes have been added."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "input_node = model.get_ordered_inputs()[0]\n",
+    "input_node[0].get_operator().set_input(0, tensors[0])\n",
+    "scheduler.reset_scheduling()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "And now we can assess the new performances after quantization:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "print('\\n QUANTIZED EXAMPLE INFERENCES:')\n",
+    "nb_valid = 0\n",
+    "post_values = []\n",
+    "for i in range(NB_TEST):\n",
+    "    print(f\"QEI: {tensors[i].backend()}\")\n",
+    "    output_array = propagate(model, scheduler, tensors[i])\n",
+    "    print(labels[i], ' VS ', np.argmax(output_array), ' -> ', np.max(output_array))\n",
+    "    post_values.append(np.max(output_array))\n",
+    "    if (labels[i] == np.argmax(output_array)):\n",
+    "        nb_valid += 1\n",
+    "quant_accuracy = nb_valid / NB_TEST\n",
+    "print('\\n MODEL ACCURACY = ', accuracy * 100, '%')\n",
+    "print('\\n QUANTIZED ACCURACY = ', quant_accuracy * 100, '%')"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "exclude_unwanted_producers(model)\n",
+    "\n",
+    "# Fuse nodes\n",
+    "cpp_fuse_to_metaops(model)\n",
+    "remove_optional_inputs(model)\n",
+    "scheduler.reset_scheduling()\n",
+    "scheduler.generate_scheduling() # Scheduler needs to be generated as it has just been reset\n",
+    "set_nodes_names(scheduler)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "output_array = propagate(model, scheduler, tensors[0])\n",
+    "\n",
+    "print(\"### Exported Sample ###\")\n",
+    "print(\"Aidge prediction :\", np.argmax(output_array), \"(\" + str(np.max(output_array)) + \")\")\n",
+    "print(\"Label :\", labels[0])\n",
+    "set_nodes_datatypes(model)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 31,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "aidge_export_cpp.export(EXPORT_FOLDER,\n",
+    "                        model,\n",
+    "                        scheduler,\n",
+    "                        labels = aidge_core.Tensor(labels[0]),\n",
+    "                        dev_mode = False,\n",
+    "                        aidge_cmp = False)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "from subprocess import CalledProcessError\n",
+    "\n",
+    "print(\"\\n### Compiling the export ###\")\n",
+    "try:\n",
+    "    for std_line in aidge_core.utils.run_command([\"make\"], cwd=EXPORT_FOLDER):\n",
+    "        print(std_line, end=\"\")\n",
+    "except CalledProcessError as e:\n",
+    "            raise RuntimeError(0, f\"An error occurred, failed to build export.\") from e\n",
+    "print(\"\\n### Running the export ###\")\n",
+    "try:\n",
+    "    for std_line in aidge_core.utils.run_command([\"./bin/run_export\"], cwd=EXPORT_FOLDER):\n",
+    "        print(std_line, end=\"\")\n",
+    "except CalledProcessError as e:\n",
+    "    raise RuntimeError(0, f\"An error occurred, failed to run export.\") from e"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "aidge",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.12.6"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/source/Tutorial/export_stm32.html b/source/Tutorial/export_stm32.html
new file mode 100644
index 0000000000000000000000000000000000000000..ca08a6a6670e90988ab5c0e313d4861740ddd82a
--- /dev/null
+++ b/source/Tutorial/export_stm32.html
@@ -0,0 +1,823 @@
+
+<!DOCTYPE html>
+
+
+<html lang="en" data-content_root="../../" >
+
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
+
+    <title>STM32 export &#8212; Eclipse Aidge  documentation</title>
+  
+  
+  
+  <script data-cfasync="false">
+    document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
+    document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
+  </script>
+  <!--
+    this give us a css class that will be invisible only if js is disabled
+  -->
+  <noscript>
+    <style>
+      .pst-js-only { display: none !important; }
+
+    </style>
+  </noscript>
+  
+  <!-- Loaded before other Sphinx assets -->
+  <link href="../../_static/styles/theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+<link href="../../_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+
+    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=8f2a1f02" />
+    <link rel="stylesheet" type="text/css" href="../../_static/graphviz.css?v=4ae1632d" />
+    <link rel="stylesheet" type="text/css" href="../../_static/copybutton.css?v=76b2166b" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sg_gallery.css?v=d2d258e8" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sphinx-design.min.css?v=95c83b7e" />
+    <link rel="stylesheet" type="text/css" href="../../_static/nbsphinx-code-cells.css?v=2aa19091" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/custom.css?v=abb81387" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/id.css?v=5eddeb79" />
+  
+  <!-- So that users can add custom icons -->
+  <script src="../../_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
+  <!-- Pre-loaded scripts that we'll load fully later -->
+  <link rel="preload" as="script" href="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
+<link rel="preload" as="script" href="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />
+
+    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
+    <script src="../../_static/doctools.js?v=9bcbadda"></script>
+    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
+    <script src="../../_static/clipboard.min.js?v=a7894cd8"></script>
+    <script src="../../_static/copybutton.js?v=f281be69"></script>
+    <script src="../../_static/design-tabs.js?v=f930bc37"></script>
+    <script src="https://cdn.jsdelivr.net/npm/@jupyter-widgets/html-manager@^1.0.1/dist/embed-amd.js"></script>
+    <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script>
+    <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
+    <script>DOCUMENTATION_OPTIONS.pagename = 'source/Tutorial/export_stm32';</script>
+    <script src="../../_static/js/mermaid.min.js"></script>
+    <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
+    <link rel="index" title="Index" href="../../genindex.html" />
+    <link rel="search" title="Search" href="../../search.html" />
+    <link rel="next" title="API" href="../API/index.html" />
+    <link rel="prev" title="TensorRT export" href="export_trt.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1"/>
+  <meta name="docsearch:language" content="en"/>
+  <meta name="docsearch:version" content="0.6.1" />
+  </head>
+  
+  
+  <body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
+
+  
+  
+  <div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
+  
+  <div id="pst-scroll-pixel-helper"></div>
+  
+  <button type="button" class="btn rounded-pill" id="pst-back-to-top">
+    <i class="fa-solid fa-arrow-up"></i>Back to top</button>
+
+  
+  <dialog id="pst-search-dialog">
+    
+<form class="bd-search d-flex align-items-center"
+      action="../../search.html"
+      method="get">
+  <i class="fa-solid fa-magnifying-glass"></i>
+  <input type="search"
+         class="form-control"
+         name="q"
+         placeholder="Search the docs ..."
+         aria-label="Search the docs ..."
+         autocomplete="off"
+         autocorrect="off"
+         autocapitalize="off"
+         spellcheck="false"/>
+  <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
+</form>
+  </dialog>
+
+  <div class="pst-async-banner-revealer d-none">
+  <aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
+</div>
+
+  
+    <header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
+<div class="bd-header__inner bd-page-width">
+  <button class="pst-navbar-icon sidebar-toggle primary-toggle" aria-label="Site navigation">
+    <span class="fa-solid fa-bars"></span>
+  </button>
+  
+  
+  <div class="col-lg-3 navbar-header-items__start">
+    
+      <div class="navbar-item">
+
+  
+    
+  
+
+<a class="navbar-brand logo" href="../../index.html">
+  
+  
+  
+  
+  
+    
+    
+      
+    
+    
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-light" alt=""/>
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-dark pst-js-only" alt=""/>
+  
+  
+    <p class="title logo__title">Eclipse Aidge</p>
+  
+</a></div>
+    
+  </div>
+  
+  <div class="col-lg-9 navbar-header-items">
+    
+    <div class="me-auto navbar-header-items__center">
+      
+        <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+      
+    </div>
+    
+    
+    <div class="navbar-header-items__end">
+      
+        <div class="navbar-item navbar-persistent--container">
+          
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+        </div>
+      
+      
+        <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+      
+        <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+      
+    </div>
+    
+  </div>
+  
+  
+    <div class="navbar-persistent--mobile">
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+    </div>
+  
+
+  
+    <button class="pst-navbar-icon sidebar-toggle secondary-toggle" aria-label="On this page">
+      <span class="fa-solid fa-outdent"></span>
+    </button>
+  
+</div>
+
+    </header>
+  
+
+  <div class="bd-container">
+    <div class="bd-container__inner bd-page-width">
+      
+      
+      
+      <dialog id="pst-primary-sidebar-modal"></dialog>
+      <div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
+        
+
+  
+  <div class="sidebar-header-items sidebar-primary__section">
+    
+    
+      <div class="sidebar-header-items__center">
+        
+          
+          
+            <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+          
+        
+      </div>
+    
+    
+    
+      <div class="sidebar-header-items__end">
+        
+          <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+        
+          <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+        
+      </div>
+    
+  </div>
+  
+    <div class="sidebar-primary-items__start sidebar-primary__section">
+        <div class="sidebar-primary-item">
+<nav class="bd-docs-nav bd-links"
+     aria-label="Section Navigation">
+  <p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
+  <div class="bd-toc-item navbar-nav"><ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
+<li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
+</ul>
+<ul class="current nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">STM32 export</a></li>
+</ul>
+</div>
+</nav></div>
+    </div>
+  
+  
+  <div class="sidebar-primary-items__end sidebar-primary__section">
+      <div class="sidebar-primary-item">
+<div id="ethical-ad-placement"
+      class="flat"
+      data-ea-publisher="readthedocs"
+      data-ea-type="readthedocs-sidebar"
+      data-ea-manual="true">
+</div></div>
+  </div>
+
+
+      </div>
+      
+      <main id="main-content" class="bd-main" role="main">
+        
+        
+          <div class="bd-content">
+            <div class="bd-article-container">
+              
+              <div class="bd-header-article d-print-none">
+<div class="header-article-items header-article__inner">
+  
+    <div class="header-article-items__start">
+      
+        <div class="header-article-item">
+
+<nav aria-label="Breadcrumb" class="d-print-none">
+  <ul class="bd-breadcrumbs">
+    
+    <li class="breadcrumb-item breadcrumb-home">
+      <a href="../../index.html" class="nav-link" aria-label="Home">
+        <i class="fa-solid fa-home"></i>
+      </a>
+    </li>
+    
+    <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
+    
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">STM32 export</span></li>
+  </ul>
+</nav>
+</div>
+      
+    </div>
+  
+  
+</div>
+</div>
+              
+              
+              
+                
+<div id="searchbox"></div>
+                <article class="bd-article">
+                  
+  <section id="STM32-export">
+<h1>STM32 export<a class="headerlink" href="#STM32-export" title="Link to this heading">#</a></h1>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">%</span><span class="k">pip</span> install requests numpy ipywidgets ipycanvas
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+Requirement already satisfied: requests in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.32.3)
+Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.2.6)
+Requirement already satisfied: ipywidgets in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (8.1.7)
+Requirement already satisfied: ipycanvas in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (0.13.3)
+Requirement already satisfied: charset-normalizer&lt;4,&gt;=2 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (3.4.2)
+Requirement already satisfied: idna&lt;4,&gt;=2.5 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (3.10)
+Requirement already satisfied: urllib3&lt;3,&gt;=1.21.1 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (2.4.0)
+Requirement already satisfied: certifi&gt;=2017.4.17 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (2025.4.26)
+Requirement already satisfied: comm&gt;=0.1.3 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (0.2.2)
+Requirement already satisfied: ipython&gt;=6.1.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (8.36.0)
+Requirement already satisfied: traitlets&gt;=4.3.1 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (5.14.3)
+Requirement already satisfied: widgetsnbextension~=4.0.14 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (4.0.14)
+Requirement already satisfied: jupyterlab_widgets~=3.0.15 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (3.0.15)
+Requirement already satisfied: pillow&gt;=6.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipycanvas) (11.2.1)
+Requirement already satisfied: decorator in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (5.2.1)
+Requirement already satisfied: exceptiongroup in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (1.3.0)
+Requirement already satisfied: jedi&gt;=0.16 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (0.19.2)
+Requirement already satisfied: matplotlib-inline in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (0.1.7)
+Requirement already satisfied: pexpect&gt;4.3 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (4.9.0)
+Requirement already satisfied: prompt_toolkit&lt;3.1.0,&gt;=3.0.41 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (3.0.51)
+Requirement already satisfied: pygments&gt;=2.4.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (2.19.1)
+Requirement already satisfied: stack_data in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (0.6.3)
+Requirement already satisfied: typing_extensions&gt;=4.6 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython&gt;=6.1.0-&gt;ipywidgets) (4.13.2)
+Requirement already satisfied: wcwidth in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from prompt_toolkit&lt;3.1.0,&gt;=3.0.41-&gt;ipython&gt;=6.1.0-&gt;ipywidgets) (0.2.13)
+Requirement already satisfied: parso&lt;0.9.0,&gt;=0.8.4 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from jedi&gt;=0.16-&gt;ipython&gt;=6.1.0-&gt;ipywidgets) (0.8.4)
+Requirement already satisfied: ptyprocess&gt;=0.5 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from pexpect&gt;4.3-&gt;ipython&gt;=6.1.0-&gt;ipywidgets) (0.7.0)
+Requirement already satisfied: executing&gt;=1.2.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data-&gt;ipython&gt;=6.1.0-&gt;ipywidgets) (2.2.0)
+Requirement already satisfied: asttokens&gt;=2.1.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data-&gt;ipython&gt;=6.1.0-&gt;ipywidgets) (3.0.0)
+Requirement already satisfied: pure-eval in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data-&gt;ipython&gt;=6.1.0-&gt;ipywidgets) (0.2.3)
+Note: you may need to restart the kernel to use updated packages.
+</pre></div></div>
+</div>
+<section id="Download-the-model">
+<h2>Download the model<a class="headerlink" href="#Download-the-model" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">os</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">requests</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_core</span>
+
+<span class="n">file_url</span> <span class="o">=</span> <span class="s2">&quot;https://huggingface.co/EclipseAidge/LeNet/resolve/main/lenet_mnist.onnx?download=true&quot;</span>
+<span class="n">file_path</span> <span class="o">=</span> <span class="s2">&quot;lenet_mnist.onnx&quot;</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">download_file</span><span class="p">(</span><span class="n">file_path</span><span class="p">,</span> <span class="n">file_url</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+</section>
+<section id="Load-the-model-in-Aidge-and-manipulate-it">
+<h2>Load the model in Aidge and manipulate it<a class="headerlink" href="#Load-the-model-in-Aidge-and-manipulate-it" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_backend_cpu</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_onnx</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_export_cpp</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_export_arm_cortexm</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">model</span> <span class="o">=</span> <span class="n">aidge_onnx</span><span class="o">.</span><span class="n">load_onnx</span><span class="p">(</span><span class="s2">&quot;lenet_mnist.onnx&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Remove Flatten node, useless in the CPP export</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">remove_flatten</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+
+<span class="c1"># Configuration for the model + forward dimensions</span>
+<span class="n">model</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s2">&quot;cpu&quot;</span><span class="p">,</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">,</span> <span class="n">dims</span><span class="o">=</span><span class="p">[[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">28</span><span class="p">,</span> <span class="mi">28</span><span class="p">]])</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Generate scheduling of the model</span>
+<span class="n">scheduler</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">SequentialScheduler</span><span class="p">(</span><span class="n">model</span><span class="p">)</span>
+<span class="n">scheduler</span><span class="o">.</span><span class="n">generate_scheduling</span><span class="p">()</span>
+</pre></div>
+</div>
+</div>
+</section>
+<section id="Export-the-model">
+<h2>Export the model<a class="headerlink" href="#Export-the-model" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">aidge_core</span><span class="o">.</span><span class="n">export_utils</span><span class="o">.</span><span class="n">scheduler_export</span><span class="p">(</span>
+        <span class="n">scheduler</span><span class="p">,</span>
+        <span class="s2">&quot;lenet_export_fp32&quot;</span><span class="p">,</span>
+        <span class="n">aidge_export_arm_cortexm</span><span class="o">.</span><span class="n">ExportLibAidgeARM</span><span class="p">,</span>
+        <span class="n">memory_manager</span><span class="o">=</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">mem_info</span><span class="o">.</span><span class="n">generate_optimized_memory_info</span><span class="p">,</span>
+        <span class="n">memory_manager_args</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;stats_folder&quot;</span><span class="p">:</span> <span class="s2">&quot;lenet_export_fp32/stats&quot;</span><span class="p">,</span> <span class="s2">&quot;wrapping&quot;</span><span class="p">:</span> <span class="kc">False</span> <span class="p">}</span>
+<span class="p">)</span>
+<br/></pre></div>
+</div>
+</div>
+<p>Now that we have generated the dnn folder, we can generate the utils files that will help with compilation:</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">aidge_export_arm_cortexm</span><span class="o">.</span><span class="n">gen_board_files</span><span class="p">(</span><span class="s2">&quot;lenet_export_fp32&quot;</span><span class="p">,</span> <span class="s2">&quot;stm32h7&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<section id="Draw-your-own-number">
+<h3>Draw your own number<a class="headerlink" href="#Draw-your-own-number" title="Link to this heading">#</a></h3>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span><span class="w"> </span><span class="nn">ipywidgets</span><span class="w"> </span><span class="kn">import</span> <span class="n">HBox</span><span class="p">,</span> <span class="n">VBox</span><span class="p">,</span> <span class="n">Button</span><span class="p">,</span> <span class="n">Layout</span>
+<span class="kn">from</span><span class="w"> </span><span class="nn">ipycanvas</span><span class="w"> </span><span class="kn">import</span> <span class="n">RoughCanvas</span><span class="p">,</span> <span class="n">hold_canvas</span>
+
+<span class="n">img_name</span> <span class="o">=</span> <span class="s2">&quot;my_number.png&quot;</span>
+
+<span class="n">canvas</span> <span class="o">=</span> <span class="n">RoughCanvas</span><span class="p">(</span><span class="n">width</span><span class="o">=</span><span class="mi">28</span><span class="p">,</span> <span class="n">height</span><span class="o">=</span><span class="mi">28</span><span class="p">,</span> <span class="n">sync_image_data</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+
+<span class="n">button_gen</span> <span class="o">=</span> <span class="n">Button</span><span class="p">(</span><span class="n">description</span><span class="o">=</span><span class="s2">&quot;Generate PNG&quot;</span><span class="p">)</span>
+<span class="n">button_clear</span> <span class="o">=</span> <span class="n">Button</span><span class="p">(</span><span class="n">description</span><span class="o">=</span><span class="s2">&quot;Clear&quot;</span><span class="p">)</span>
+
+<span class="n">drawing</span> <span class="o">=</span> <span class="kc">False</span>
+<span class="n">position</span> <span class="o">=</span> <span class="kc">None</span>
+<span class="n">shape</span> <span class="o">=</span> <span class="p">[]</span>
+
+<span class="k">def</span><span class="w"> </span><span class="nf">on_erase_button_clicked</span><span class="p">(</span><span class="n">b</span><span class="p">):</span>
+    <span class="n">canvas</span><span class="o">.</span><span class="n">clear</span><span class="p">()</span>
+
+<span class="k">def</span><span class="w"> </span><span class="nf">on_generate_button_clicked</span><span class="p">(</span><span class="n">b</span><span class="p">):</span>
+    <span class="k">try</span><span class="p">:</span>
+        <span class="n">canvas</span><span class="o">.</span><span class="n">to_file</span><span class="p">(</span><span class="n">img_name</span><span class="p">)</span>
+        <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Image generated to </span><span class="si">{</span><span class="n">img_name</span><span class="si">}</span><span class="s2"> !&quot;</span><span class="p">)</span>
+    <span class="k">except</span><span class="p">:</span>
+        <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Draw a number before generating the image.&quot;</span><span class="p">)</span>
+
+<span class="n">button_clear</span><span class="o">.</span><span class="n">on_click</span><span class="p">(</span><span class="n">on_erase_button_clicked</span><span class="p">)</span>
+<span class="n">button_gen</span><span class="o">.</span><span class="n">on_click</span><span class="p">(</span><span class="n">on_generate_button_clicked</span><span class="p">)</span>
+
+<span class="k">def</span><span class="w"> </span><span class="nf">on_mouse_down</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">):</span>
+    <span class="k">global</span> <span class="n">drawing</span>
+    <span class="k">global</span> <span class="n">position</span>
+    <span class="k">global</span> <span class="n">shape</span>
+
+    <span class="n">drawing</span> <span class="o">=</span> <span class="kc">True</span>
+    <span class="n">position</span> <span class="o">=</span> <span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">)</span>
+    <span class="n">shape</span> <span class="o">=</span> <span class="p">[</span><span class="n">position</span><span class="p">]</span>
+
+<span class="k">def</span><span class="w"> </span><span class="nf">on_mouse_move</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">):</span>
+    <span class="k">global</span> <span class="n">drawing</span>
+    <span class="k">global</span> <span class="n">position</span>
+    <span class="k">global</span> <span class="n">shape</span>
+
+    <span class="k">if</span> <span class="ow">not</span> <span class="n">drawing</span><span class="p">:</span>
+        <span class="k">return</span>
+
+    <span class="k">with</span> <span class="n">hold_canvas</span><span class="p">():</span>
+        <span class="n">canvas</span><span class="o">.</span><span class="n">stroke_line</span><span class="p">(</span><span class="n">position</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">position</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">)</span>
+        <span class="n">position</span> <span class="o">=</span> <span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">)</span>
+
+    <span class="n">shape</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">position</span><span class="p">)</span>
+
+<span class="k">def</span><span class="w"> </span><span class="nf">on_mouse_up</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">):</span>
+    <span class="k">global</span> <span class="n">drawing</span>
+    <span class="k">global</span> <span class="n">position</span>
+    <span class="k">global</span> <span class="n">shape</span>
+
+    <span class="n">drawing</span> <span class="o">=</span> <span class="kc">False</span>
+
+    <span class="k">with</span> <span class="n">hold_canvas</span><span class="p">():</span>
+        <span class="n">canvas</span><span class="o">.</span><span class="n">stroke_line</span><span class="p">(</span><span class="n">position</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">position</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">)</span>
+
+    <span class="n">shape</span> <span class="o">=</span> <span class="p">[]</span>
+
+<span class="n">canvas</span><span class="o">.</span><span class="n">on_mouse_down</span><span class="p">(</span><span class="n">on_mouse_down</span><span class="p">)</span>
+<span class="n">canvas</span><span class="o">.</span><span class="n">on_mouse_move</span><span class="p">(</span><span class="n">on_mouse_move</span><span class="p">)</span>
+<span class="n">canvas</span><span class="o">.</span><span class="n">on_mouse_up</span><span class="p">(</span><span class="n">on_mouse_up</span><span class="p">)</span>
+
+<span class="n">canvas</span><span class="o">.</span><span class="n">stroke_style</span> <span class="o">=</span> <span class="s2">&quot;#000000&quot;</span>
+
+<span class="n">VBox</span><span class="p">((</span><span class="n">canvas</span><span class="p">,</span> <span class="n">HBox</span><span class="p">((</span><span class="n">button_gen</span><span class="p">,</span> <span class="n">button_clear</span><span class="p">))),</span>
+     <span class="n">layout</span><span class="o">=</span><span class="n">Layout</span><span class="p">(</span><span class="n">height</span><span class="o">=</span><span class="s1">&#39;auto&#39;</span><span class="p">,</span> <span class="n">width</span><span class="o">=</span><span class="s2">&quot;300px&quot;</span><span class="p">))</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
+</pre></div>
+</div>
+<div class="output_area docutils container">
+<script type="application/vnd.jupyter.widget-view+json">{"version_major": 2, "version_minor": 0, "model_id": "69b5f11b80a143ed9dd579f61c69e147"}</script></div>
+</div>
+</section>
+<section id="Generate-inputs-for-testing-the-model-from-your-drawing">
+<h3>Generate inputs for testing the model from your drawing<a class="headerlink" href="#Generate-inputs-for-testing-the-model-from-your-drawing" title="Link to this heading">#</a></h3>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="k">try</span><span class="p">:</span>
+    <span class="n">number_np</span> <span class="o">=</span> <span class="n">canvas</span><span class="o">.</span><span class="n">get_image_data</span><span class="p">()</span>
+    <span class="c1"># We got a numpy array with the shape of (28,28,4)</span>
+    <span class="c1"># Transform it to (28,28)</span>
+    <span class="n">x</span> <span class="o">=</span> <span class="n">number_np</span><span class="p">[:,</span> <span class="p">:,</span> <span class="mi">3</span><span class="p">]</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="s2">&quot;float32&quot;</span><span class="p">)</span>
+    <span class="c1"># Convert from [0, 255] to [0, 1] and export it</span>
+    <span class="n">aidge_core</span><span class="o">.</span><span class="n">export_utils</span><span class="o">.</span><span class="n">generate_input_file</span><span class="p">(</span><span class="n">export_folder</span><span class="o">=</span><span class="s2">&quot;lenet_export_fp32&quot;</span><span class="p">,</span> <span class="n">array_name</span><span class="o">=</span><span class="s2">&quot;feature_feature_0_Conv_input_0&quot;</span><span class="p">,</span> <span class="n">tensor</span><span class="o">=</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">Tensor</span><span class="p">(</span><span class="n">x</span> <span class="o">/</span> <span class="mi">255</span><span class="p">))</span>
+<span class="k">except</span><span class="p">:</span>
+    <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Please draw a number in the previous cell before running this one.&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+Please draw a number in the previous cell before running this one.
+</pre></div></div>
+</div>
+</section>
+<section id="Compile-the-export-and-test-it">
+<h3>Compile the export and test it<a class="headerlink" href="#Compile-the-export-and-test-it" title="Link to this heading">#</a></h3>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span><span class="nb">cd</span><span class="w"> </span>lenet_export_fp32<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span>make<span class="w"> </span>build_image_docker<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span>make<span class="w"> </span>build_export_docker
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+make[1]: Entering directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/lenet_export_fp32&#39;
+/bin/sh: 1: docker: not found
+make[1]: *** [Makefile:102: build_image_docker] Error 127
+make[1]: Leaving directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/lenet_export_fp32&#39;
+</pre></div></div>
+</div>
+<script type="application/vnd.jupyter.widget-state+json">
+{"state": {"9a178b53bd9b4f20aca130ca37451830": {"model_name": "CanvasManagerModel", "model_module": "ipycanvas", "model_module_version": "^0.13", "state": {"_model_module": "ipycanvas", "_model_module_version": "^0.13", "_model_name": "CanvasManagerModel", "_view_count": null, "_view_module": null, "_view_module_version": "", "_view_name": null}}, "de9c51891c5c44b9be93afad2e557a00": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "f78c2c6813b44057b3b9fd1eda4cd10b": {"model_name": "RoughCanvasModel", "model_module": "ipycanvas", "model_module_version": "^0.13", "state": {"_canvas_manager": "IPY_MODEL_9a178b53bd9b4f20aca130ca37451830", "_dom_classes": [], "_model_module": "ipycanvas", "_model_module_version": "^0.13", "_model_name": "RoughCanvasModel", "_send_client_ready_event": true, "_view_count": null, "_view_module": "ipycanvas", "_view_module_version": "^0.13", "_view_name": "CanvasView", "height": 28, "image_data": null, "layout": "IPY_MODEL_de9c51891c5c44b9be93afad2e557a00", "sync_image_data": true, "tabbable": null, "tooltip": null, "width": 28}}, "63a601b0507e41699d08bcb845eb97a1": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "ed8133f3aa3f4eb9a8aa24f304ca9f7a": {"model_name": "ButtonStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "button_color": null, "font_family": null, "font_size": null, "font_style": null, "font_variant": null, "font_weight": null, "text_color": null, "text_decoration": null}}, "09cba4ceca2241ee83c6a1ae1a414ca6": {"model_name": "ButtonModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ButtonView", "button_style": "", "description": "Generate PNG", "disabled": false, "icon": "", "layout": "IPY_MODEL_63a601b0507e41699d08bcb845eb97a1", "style": "IPY_MODEL_ed8133f3aa3f4eb9a8aa24f304ca9f7a", "tabbable": null, "tooltip": null}}, "8a3461715da04cd6a063d7ade111a24b": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "cfdb9e290e054f33b4f64f20fb7a60cc": {"model_name": "ButtonStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "button_color": null, "font_family": null, "font_size": null, "font_style": null, "font_variant": null, "font_weight": null, "text_color": null, "text_decoration": null}}, "695849e5fb4e4e7eafce7225a1215d2c": {"model_name": "ButtonModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ButtonModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ButtonView", "button_style": "", "description": "Clear", "disabled": false, "icon": "", "layout": "IPY_MODEL_8a3461715da04cd6a063d7ade111a24b", "style": "IPY_MODEL_cfdb9e290e054f33b4f64f20fb7a60cc", "tabbable": null, "tooltip": null}}, "632441b58bd34e01bd2c357d2953daff": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "0e9c60234cd540b1a0e253cfce83bbf8": {"model_name": "HBoxModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_09cba4ceca2241ee83c6a1ae1a414ca6", "IPY_MODEL_695849e5fb4e4e7eafce7225a1215d2c"], "layout": "IPY_MODEL_632441b58bd34e01bd2c357d2953daff", "tabbable": null, "tooltip": null}}, "22d8473599e34ee696c9a610f31097f7": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": "auto", "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "300px"}}, "69b5f11b80a143ed9dd579f61c69e147": {"model_name": "VBoxModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "VBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "VBoxView", "box_style": "", "children": ["IPY_MODEL_f78c2c6813b44057b3b9fd1eda4cd10b", "IPY_MODEL_0e9c60234cd540b1a0e253cfce83bbf8"], "layout": "IPY_MODEL_22d8473599e34ee696c9a610f31097f7", "tabbable": null, "tooltip": null}}}, "version_major": 2, "version_minor": 0}
+</script></section>
+</section>
+</section>
+
+
+                </article>
+              
+              
+              
+              
+              
+                <footer class="prev-next-footer d-print-none">
+                  
+<div class="prev-next-area">
+    <a class="left-prev"
+       href="export_trt.html"
+       title="previous page">
+      <i class="fa-solid fa-angle-left"></i>
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">previous</p>
+        <p class="prev-next-title">TensorRT export</p>
+      </div>
+    </a>
+    <a class="right-next"
+       href="../API/index.html"
+       title="next page">
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">next</p>
+        <p class="prev-next-title">API</p>
+      </div>
+      <i class="fa-solid fa-angle-right"></i>
+    </a>
+</div>
+                </footer>
+              
+            </div>
+            
+            
+              
+                <dialog id="pst-secondary-sidebar-modal"></dialog>
+                <div id="pst-secondary-sidebar" class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
+
+
+  <div class="sidebar-secondary-item">
+<div
+    id="pst-page-navigation-heading-2"
+    class="page-toc tocsection onthispage">
+    <i class="fa-solid fa-list"></i> On this page
+  </div>
+  <nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
+    <ul class="visible nav section-nav flex-column">
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Download-the-model">Download the model</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Load-the-model-in-Aidge-and-manipulate-it">Load the model in Aidge and manipulate it</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Export-the-model">Export the model</a><ul class="visible nav section-nav flex-column">
+<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#Draw-your-own-number">Draw your own number</a></li>
+<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#Generate-inputs-for-testing-the-model-from-your-drawing">Generate inputs for testing the model from your drawing</a></li>
+<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#Compile-the-export-and-test-it">Compile the export and test it</a></li>
+</ul>
+</li>
+</ul>
+  </nav></div>
+
+  <div class="sidebar-secondary-item">
+  <div role="note" aria-label="source link">
+    <h3>This Page</h3>
+    <ul class="this-page-menu">
+      <li><a href="../../_sources/source/Tutorial/export_stm32.nblink.txt"
+            rel="nofollow">Show Source</a></li>
+    </ul>
+   </div></div>
+
+</div></div>
+              
+            
+          </div>
+          <footer class="bd-footer-content">
+            
+          </footer>
+        
+      </main>
+    </div>
+  </div>
+  
+  <!-- Scripts loaded after <body> so the DOM is not blocked -->
+  <script defer src="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
+<script defer src="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>
+
+  <footer class="bd-footer">
+<div class="bd-footer__inner bd-page-width">
+  
+    <div class="footer-items__start">
+      
+        <div class="footer-item">
+
+  <p class="copyright">
+    
+      © Copyright 2023, CEA LIST.
+      <br/>
+    
+  </p>
+</div>
+      
+        <div class="footer-item">
+
+  <p class="sphinx-version">
+    Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.1.3.
+    <br/>
+  </p>
+</div>
+      
+    </div>
+  
+  
+  
+    <div class="footer-items__end">
+      
+        <div class="footer-item">
+<p class="theme-version">
+  <!-- # L10n: Setting the PST URL as an argument as this does not need to be localized -->
+  Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.16.1.
+</p></div>
+      
+    </div>
+  
+</div>
+
+  </footer>
+  </body>
+</html>
\ No newline at end of file
diff --git a/source/Tutorial/export_stm32.ipynb b/source/Tutorial/export_stm32.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..3f8235770622b727408ba15a6de6fcecf9ca3782
--- /dev/null
+++ b/source/Tutorial/export_stm32.ipynb
@@ -0,0 +1,895 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# STM32 export"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:21.188717Z",
+     "iopub.status.busy": "2025-05-19T10:05:21.188517Z",
+     "iopub.status.idle": "2025-05-19T10:05:21.726432Z",
+     "shell.execute_reply": "2025-05-19T10:05:21.726013Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Requirement already satisfied: requests in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.32.3)\r\n",
+      "Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (2.2.6)\r\n",
+      "Requirement already satisfied: ipywidgets in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (8.1.7)\r\n",
+      "Requirement already satisfied: ipycanvas in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (0.13.3)\r\n",
+      "Requirement already satisfied: charset-normalizer<4,>=2 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (3.4.2)\r\n",
+      "Requirement already satisfied: idna<4,>=2.5 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (3.10)\r\n",
+      "Requirement already satisfied: urllib3<3,>=1.21.1 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (2.4.0)\r\n",
+      "Requirement already satisfied: certifi>=2017.4.17 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests) (2025.4.26)\r\n",
+      "Requirement already satisfied: comm>=0.1.3 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (0.2.2)\r\n",
+      "Requirement already satisfied: ipython>=6.1.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (8.36.0)\r\n",
+      "Requirement already satisfied: traitlets>=4.3.1 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (5.14.3)\r\n",
+      "Requirement already satisfied: widgetsnbextension~=4.0.14 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (4.0.14)\r\n",
+      "Requirement already satisfied: jupyterlab_widgets~=3.0.15 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipywidgets) (3.0.15)\r\n",
+      "Requirement already satisfied: pillow>=6.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipycanvas) (11.2.1)\r\n",
+      "Requirement already satisfied: decorator in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (5.2.1)\r\n",
+      "Requirement already satisfied: exceptiongroup in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (1.3.0)\r\n",
+      "Requirement already satisfied: jedi>=0.16 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (0.19.2)\r\n",
+      "Requirement already satisfied: matplotlib-inline in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (0.1.7)\r\n",
+      "Requirement already satisfied: pexpect>4.3 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (4.9.0)\r\n",
+      "Requirement already satisfied: prompt_toolkit<3.1.0,>=3.0.41 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (3.0.51)\r\n",
+      "Requirement already satisfied: pygments>=2.4.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (2.19.1)\r\n",
+      "Requirement already satisfied: stack_data in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (0.6.3)\r\n",
+      "Requirement already satisfied: typing_extensions>=4.6 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from ipython>=6.1.0->ipywidgets) (4.13.2)\r\n",
+      "Requirement already satisfied: wcwidth in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from prompt_toolkit<3.1.0,>=3.0.41->ipython>=6.1.0->ipywidgets) (0.2.13)\r\n",
+      "Requirement already satisfied: parso<0.9.0,>=0.8.4 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from jedi>=0.16->ipython>=6.1.0->ipywidgets) (0.8.4)\r\n",
+      "Requirement already satisfied: ptyprocess>=0.5 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from pexpect>4.3->ipython>=6.1.0->ipywidgets) (0.7.0)\r\n",
+      "Requirement already satisfied: executing>=1.2.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (2.2.0)\r\n",
+      "Requirement already satisfied: asttokens>=2.1.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (3.0.0)\r\n",
+      "Requirement already satisfied: pure-eval in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from stack_data->ipython>=6.1.0->ipywidgets) (0.2.3)\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Note: you may need to restart the kernel to use updated packages.\n"
+     ]
+    }
+   ],
+   "source": [
+    "%pip install requests numpy ipywidgets ipycanvas"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Download the model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:21.727647Z",
+     "iopub.status.busy": "2025-05-19T10:05:21.727533Z",
+     "iopub.status.idle": "2025-05-19T10:05:21.768248Z",
+     "shell.execute_reply": "2025-05-19T10:05:21.767874Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "import os\n",
+    "import requests"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:21.769650Z",
+     "iopub.status.busy": "2025-05-19T10:05:21.769547Z",
+     "iopub.status.idle": "2025-05-19T10:05:21.990787Z",
+     "shell.execute_reply": "2025-05-19T10:05:21.990421Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "import aidge_core\n",
+    "\n",
+    "file_url = \"https://huggingface.co/EclipseAidge/LeNet/resolve/main/lenet_mnist.onnx?download=true\"\n",
+    "file_path = \"lenet_mnist.onnx\"\n",
+    "aidge_core.utils.download_file(file_path, file_url)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Load the model in Aidge and manipulate it"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:21.992288Z",
+     "iopub.status.busy": "2025-05-19T10:05:21.992089Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.221148Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.220840Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "import aidge_backend_cpu\n",
+    "import aidge_onnx\n",
+    "import aidge_export_cpp\n",
+    "import aidge_export_arm_cortexm"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:22.222543Z",
+     "iopub.status.busy": "2025-05-19T10:05:22.222306Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.232345Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.232008Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "model = aidge_onnx.load_onnx(\"lenet_mnist.onnx\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:22.233279Z",
+     "iopub.status.busy": "2025-05-19T10:05:22.233107Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.234983Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.234769Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# Remove Flatten node, useless in the CPP export\n",
+    "aidge_core.remove_flatten(model)\n",
+    "\n",
+    "# Configuration for the model + forward dimensions\n",
+    "model.compile(\"cpu\", aidge_core.dtype.float32, dims=[[1, 1, 28, 28]])"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:22.236035Z",
+     "iopub.status.busy": "2025-05-19T10:05:22.235866Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.237635Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.237398Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# Generate scheduling of the model\n",
+    "scheduler = aidge_core.SequentialScheduler(model)\n",
+    "scheduler.generate_scheduling()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Export the model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:22.238524Z",
+     "iopub.status.busy": "2025-05-19T10:05:22.238342Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.566824Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.566387Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "aidge_core.export_utils.scheduler_export(\n",
+    "        scheduler,\n",
+    "        \"lenet_export_fp32\",\n",
+    "        aidge_export_arm_cortexm.ExportLibAidgeARM,\n",
+    "        memory_manager=aidge_core.mem_info.generate_optimized_memory_info,\n",
+    "        memory_manager_args={\"stats_folder\": \"lenet_export_fp32/stats\", \"wrapping\": False }\n",
+    ")\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Now that we have generated the dnn folder, we can generate the utils files that will help with compilation:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:22.568351Z",
+     "iopub.status.busy": "2025-05-19T10:05:22.568195Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.579042Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.578686Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "aidge_export_arm_cortexm.gen_board_files(\"lenet_export_fp32\", \"stm32h7\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Draw your own number"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:22.580063Z",
+     "iopub.status.busy": "2025-05-19T10:05:22.579933Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.669610Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.669353Z"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "69b5f11b80a143ed9dd579f61c69e147",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "VBox(children=(RoughCanvas(height=28, sync_image_data=True, width=28), HBox(children=(Button(description='Gene…"
+      ]
+     },
+     "execution_count": 10,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "from ipywidgets import HBox, VBox, Button, Layout\n",
+    "from ipycanvas import RoughCanvas, hold_canvas\n",
+    "\n",
+    "img_name = \"my_number.png\"\n",
+    "\n",
+    "canvas = RoughCanvas(width=28, height=28, sync_image_data=True)\n",
+    "\n",
+    "button_gen = Button(description=\"Generate PNG\")\n",
+    "button_clear = Button(description=\"Clear\")\n",
+    "\n",
+    "drawing = False\n",
+    "position = None\n",
+    "shape = []\n",
+    "\n",
+    "def on_erase_button_clicked(b):\n",
+    "    canvas.clear()\n",
+    "\n",
+    "def on_generate_button_clicked(b):\n",
+    "    try:\n",
+    "        canvas.to_file(img_name)\n",
+    "        print(f\"Image generated to {img_name} !\")\n",
+    "    except:\n",
+    "        print(\"Draw a number before generating the image.\")\n",
+    "\n",
+    "button_clear.on_click(on_erase_button_clicked)\n",
+    "button_gen.on_click(on_generate_button_clicked)\n",
+    "\n",
+    "def on_mouse_down(x, y):\n",
+    "    global drawing\n",
+    "    global position\n",
+    "    global shape\n",
+    "\n",
+    "    drawing = True\n",
+    "    position = (x, y)\n",
+    "    shape = [position]\n",
+    "\n",
+    "def on_mouse_move(x, y):\n",
+    "    global drawing\n",
+    "    global position\n",
+    "    global shape\n",
+    "\n",
+    "    if not drawing:\n",
+    "        return\n",
+    "\n",
+    "    with hold_canvas():\n",
+    "        canvas.stroke_line(position[0], position[1], x, y)\n",
+    "        position = (x, y)\n",
+    "\n",
+    "    shape.append(position)\n",
+    "\n",
+    "def on_mouse_up(x, y):\n",
+    "    global drawing\n",
+    "    global position\n",
+    "    global shape\n",
+    "\n",
+    "    drawing = False\n",
+    "\n",
+    "    with hold_canvas():\n",
+    "        canvas.stroke_line(position[0], position[1], x, y)\n",
+    "\n",
+    "    shape = []\n",
+    "\n",
+    "canvas.on_mouse_down(on_mouse_down)\n",
+    "canvas.on_mouse_move(on_mouse_move)\n",
+    "canvas.on_mouse_up(on_mouse_up)\n",
+    "\n",
+    "canvas.stroke_style = \"#000000\"\n",
+    "\n",
+    "VBox((canvas, HBox((button_gen, button_clear))),\n",
+    "     layout=Layout(height='auto', width=\"300px\"))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Generate inputs for testing the model from your drawing"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:22.670953Z",
+     "iopub.status.busy": "2025-05-19T10:05:22.670814Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.673016Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.672793Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Please draw a number in the previous cell before running this one.\n"
+     ]
+    }
+   ],
+   "source": [
+    "try:\n",
+    "    number_np = canvas.get_image_data()\n",
+    "    # We got a numpy array with the shape of (28,28,4)\n",
+    "    # Transform it to (28,28)\n",
+    "    x = number_np[:, :, 3].astype(\"float32\")\n",
+    "    # Convert from [0, 255] to [0, 1] and export it\n",
+    "    aidge_core.export_utils.generate_input_file(export_folder=\"lenet_export_fp32\", array_name=\"feature_feature_0_Conv_input_0\", tensor=aidge_core.Tensor(x / 255))\n",
+    "except:\n",
+    "    print(\"Please draw a number in the previous cell before running this one.\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Compile the export and test it\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:22.673957Z",
+     "iopub.status.busy": "2025-05-19T10:05:22.673802Z",
+     "iopub.status.idle": "2025-05-19T10:05:22.796988Z",
+     "shell.execute_reply": "2025-05-19T10:05:22.796517Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "make[1]: Entering directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/lenet_export_fp32'\r\n",
+      "/bin/sh: 1: docker: not found\r\n",
+      "make[1]: *** [Makefile:102: build_image_docker] Error 127\r\n",
+      "make[1]: Leaving directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/lenet_export_fp32'\r\n"
+     ]
+    }
+   ],
+   "source": [
+    "!cd lenet_export_fp32 && make build_image_docker && make build_export_docker"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "aidge",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.12"
+  },
+  "widgets": {
+   "application/vnd.jupyter.widget-state+json": {
+    "state": {
+     "09cba4ceca2241ee83c6a1ae1a414ca6": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "ButtonModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "ButtonModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "ButtonView",
+       "button_style": "",
+       "description": "Generate PNG",
+       "disabled": false,
+       "icon": "",
+       "layout": "IPY_MODEL_63a601b0507e41699d08bcb845eb97a1",
+       "style": "IPY_MODEL_ed8133f3aa3f4eb9a8aa24f304ca9f7a",
+       "tabbable": null,
+       "tooltip": null
+      }
+     },
+     "0e9c60234cd540b1a0e253cfce83bbf8": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "HBoxModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "HBoxModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "HBoxView",
+       "box_style": "",
+       "children": [
+        "IPY_MODEL_09cba4ceca2241ee83c6a1ae1a414ca6",
+        "IPY_MODEL_695849e5fb4e4e7eafce7225a1215d2c"
+       ],
+       "layout": "IPY_MODEL_632441b58bd34e01bd2c357d2953daff",
+       "tabbable": null,
+       "tooltip": null
+      }
+     },
+     "22d8473599e34ee696c9a610f31097f7": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": "auto",
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": "300px"
+      }
+     },
+     "632441b58bd34e01bd2c357d2953daff": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": null,
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": null
+      }
+     },
+     "63a601b0507e41699d08bcb845eb97a1": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": null,
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": null
+      }
+     },
+     "695849e5fb4e4e7eafce7225a1215d2c": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "ButtonModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "ButtonModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "ButtonView",
+       "button_style": "",
+       "description": "Clear",
+       "disabled": false,
+       "icon": "",
+       "layout": "IPY_MODEL_8a3461715da04cd6a063d7ade111a24b",
+       "style": "IPY_MODEL_cfdb9e290e054f33b4f64f20fb7a60cc",
+       "tabbable": null,
+       "tooltip": null
+      }
+     },
+     "69b5f11b80a143ed9dd579f61c69e147": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "VBoxModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "VBoxModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "VBoxView",
+       "box_style": "",
+       "children": [
+        "IPY_MODEL_f78c2c6813b44057b3b9fd1eda4cd10b",
+        "IPY_MODEL_0e9c60234cd540b1a0e253cfce83bbf8"
+       ],
+       "layout": "IPY_MODEL_22d8473599e34ee696c9a610f31097f7",
+       "tabbable": null,
+       "tooltip": null
+      }
+     },
+     "8a3461715da04cd6a063d7ade111a24b": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": null,
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": null
+      }
+     },
+     "9a178b53bd9b4f20aca130ca37451830": {
+      "model_module": "ipycanvas",
+      "model_module_version": "^0.13",
+      "model_name": "CanvasManagerModel",
+      "state": {
+       "_model_module": "ipycanvas",
+       "_model_module_version": "^0.13",
+       "_model_name": "CanvasManagerModel",
+       "_view_count": null,
+       "_view_module": null,
+       "_view_module_version": "",
+       "_view_name": null
+      }
+     },
+     "cfdb9e290e054f33b4f64f20fb7a60cc": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "ButtonStyleModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "ButtonStyleModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "StyleView",
+       "button_color": null,
+       "font_family": null,
+       "font_size": null,
+       "font_style": null,
+       "font_variant": null,
+       "font_weight": null,
+       "text_color": null,
+       "text_decoration": null
+      }
+     },
+     "de9c51891c5c44b9be93afad2e557a00": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": null,
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": null
+      }
+     },
+     "ed8133f3aa3f4eb9a8aa24f304ca9f7a": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "ButtonStyleModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "ButtonStyleModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "StyleView",
+       "button_color": null,
+       "font_family": null,
+       "font_size": null,
+       "font_style": null,
+       "font_variant": null,
+       "font_weight": null,
+       "text_color": null,
+       "text_decoration": null
+      }
+     },
+     "f78c2c6813b44057b3b9fd1eda4cd10b": {
+      "model_module": "ipycanvas",
+      "model_module_version": "^0.13",
+      "model_name": "RoughCanvasModel",
+      "state": {
+       "_canvas_manager": "IPY_MODEL_9a178b53bd9b4f20aca130ca37451830",
+       "_dom_classes": [],
+       "_model_module": "ipycanvas",
+       "_model_module_version": "^0.13",
+       "_model_name": "RoughCanvasModel",
+       "_send_client_ready_event": true,
+       "_view_count": null,
+       "_view_module": "ipycanvas",
+       "_view_module_version": "^0.13",
+       "_view_name": "CanvasView",
+       "height": 28,
+       "image_data": null,
+       "layout": "IPY_MODEL_de9c51891c5c44b9be93afad2e557a00",
+       "sync_image_data": true,
+       "tabbable": null,
+       "tooltip": null,
+       "width": 28
+      }
+     }
+    },
+    "version_major": 2,
+    "version_minor": 0
+   }
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/source/Tutorial/export_trt.html b/source/Tutorial/export_trt.html
new file mode 100644
index 0000000000000000000000000000000000000000..c732a74a855bfbbc9946af9042062c595c45699d
--- /dev/null
+++ b/source/Tutorial/export_trt.html
@@ -0,0 +1,898 @@
+
+<!DOCTYPE html>
+
+
+<html lang="en" data-content_root="../../" >
+
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
+
+    <title>TensorRT export &#8212; Eclipse Aidge  documentation</title>
+  
+  
+  
+  <script data-cfasync="false">
+    document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
+    document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
+  </script>
+  <!--
+    this give us a css class that will be invisible only if js is disabled
+  -->
+  <noscript>
+    <style>
+      .pst-js-only { display: none !important; }
+
+    </style>
+  </noscript>
+  
+  <!-- Loaded before other Sphinx assets -->
+  <link href="../../_static/styles/theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+<link href="../../_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+
+    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=8f2a1f02" />
+    <link rel="stylesheet" type="text/css" href="../../_static/graphviz.css?v=4ae1632d" />
+    <link rel="stylesheet" type="text/css" href="../../_static/copybutton.css?v=76b2166b" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sg_gallery.css?v=d2d258e8" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sphinx-design.min.css?v=95c83b7e" />
+    <link rel="stylesheet" type="text/css" href="../../_static/nbsphinx-code-cells.css?v=2aa19091" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/custom.css?v=abb81387" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/id.css?v=5eddeb79" />
+  
+  <!-- So that users can add custom icons -->
+  <script src="../../_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
+  <!-- Pre-loaded scripts that we'll load fully later -->
+  <link rel="preload" as="script" href="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
+<link rel="preload" as="script" href="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />
+
+    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
+    <script src="../../_static/doctools.js?v=9bcbadda"></script>
+    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
+    <script src="../../_static/clipboard.min.js?v=a7894cd8"></script>
+    <script src="../../_static/copybutton.js?v=f281be69"></script>
+    <script src="../../_static/design-tabs.js?v=f930bc37"></script>
+    <script src="https://cdn.jsdelivr.net/npm/@jupyter-widgets/html-manager@^1.0.1/dist/embed-amd.js"></script>
+    <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script>
+    <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
+    <script>DOCUMENTATION_OPTIONS.pagename = 'source/Tutorial/export_trt';</script>
+    <script src="../../_static/js/mermaid.min.js"></script>
+    <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
+    <link rel="index" title="Index" href="../../genindex.html" />
+    <link rel="search" title="Search" href="../../search.html" />
+    <link rel="next" title="STM32 export" href="export_stm32.html" />
+    <link rel="prev" title="Add a custom operator to the C++ export" href="export_cpp_add_impl.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1"/>
+  <meta name="docsearch:language" content="en"/>
+  <meta name="docsearch:version" content="0.6.1" />
+  </head>
+  
+  
+  <body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
+
+  
+  
+  <div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
+  
+  <div id="pst-scroll-pixel-helper"></div>
+  
+  <button type="button" class="btn rounded-pill" id="pst-back-to-top">
+    <i class="fa-solid fa-arrow-up"></i>Back to top</button>
+
+  
+  <dialog id="pst-search-dialog">
+    
+<form class="bd-search d-flex align-items-center"
+      action="../../search.html"
+      method="get">
+  <i class="fa-solid fa-magnifying-glass"></i>
+  <input type="search"
+         class="form-control"
+         name="q"
+         placeholder="Search the docs ..."
+         aria-label="Search the docs ..."
+         autocomplete="off"
+         autocorrect="off"
+         autocapitalize="off"
+         spellcheck="false"/>
+  <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
+</form>
+  </dialog>
+
+  <div class="pst-async-banner-revealer d-none">
+  <aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
+</div>
+
+  
+    <header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
+<div class="bd-header__inner bd-page-width">
+  <button class="pst-navbar-icon sidebar-toggle primary-toggle" aria-label="Site navigation">
+    <span class="fa-solid fa-bars"></span>
+  </button>
+  
+  
+  <div class="col-lg-3 navbar-header-items__start">
+    
+      <div class="navbar-item">
+
+  
+    
+  
+
+<a class="navbar-brand logo" href="../../index.html">
+  
+  
+  
+  
+  
+    
+    
+      
+    
+    
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-light" alt=""/>
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-dark pst-js-only" alt=""/>
+  
+  
+    <p class="title logo__title">Eclipse Aidge</p>
+  
+</a></div>
+    
+  </div>
+  
+  <div class="col-lg-9 navbar-header-items">
+    
+    <div class="me-auto navbar-header-items__center">
+      
+        <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+      
+    </div>
+    
+    
+    <div class="navbar-header-items__end">
+      
+        <div class="navbar-item navbar-persistent--container">
+          
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+        </div>
+      
+      
+        <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+      
+        <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+      
+    </div>
+    
+  </div>
+  
+  
+    <div class="navbar-persistent--mobile">
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+    </div>
+  
+
+  
+    <button class="pst-navbar-icon sidebar-toggle secondary-toggle" aria-label="On this page">
+      <span class="fa-solid fa-outdent"></span>
+    </button>
+  
+</div>
+
+    </header>
+  
+
+  <div class="bd-container">
+    <div class="bd-container__inner bd-page-width">
+      
+      
+      
+      <dialog id="pst-primary-sidebar-modal"></dialog>
+      <div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
+        
+
+  
+  <div class="sidebar-header-items sidebar-primary__section">
+    
+    
+      <div class="sidebar-header-items__center">
+        
+          
+          
+            <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+          
+        
+      </div>
+    
+    
+    
+      <div class="sidebar-header-items__end">
+        
+          <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+        
+          <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+        
+      </div>
+    
+  </div>
+  
+    <div class="sidebar-primary-items__start sidebar-primary__section">
+        <div class="sidebar-primary-item">
+<nav class="bd-docs-nav bd-links"
+     aria-label="Section Navigation">
+  <p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
+  <div class="bd-toc-item navbar-nav"><ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
+<li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
+</ul>
+<ul class="current nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
+</ul>
+</div>
+</nav></div>
+    </div>
+  
+  
+  <div class="sidebar-primary-items__end sidebar-primary__section">
+      <div class="sidebar-primary-item">
+<div id="ethical-ad-placement"
+      class="flat"
+      data-ea-publisher="readthedocs"
+      data-ea-type="readthedocs-sidebar"
+      data-ea-manual="true">
+</div></div>
+  </div>
+
+
+      </div>
+      
+      <main id="main-content" class="bd-main" role="main">
+        
+        
+          <div class="bd-content">
+            <div class="bd-article-container">
+              
+              <div class="bd-header-article d-print-none">
+<div class="header-article-items header-article__inner">
+  
+    <div class="header-article-items__start">
+      
+        <div class="header-article-item">
+
+<nav aria-label="Breadcrumb" class="d-print-none">
+  <ul class="bd-breadcrumbs">
+    
+    <li class="breadcrumb-item breadcrumb-home">
+      <a href="../../index.html" class="nav-link" aria-label="Home">
+        <i class="fa-solid fa-home"></i>
+      </a>
+    </li>
+    
+    <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
+    
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">TensorRT export</span></li>
+  </ul>
+</nav>
+</div>
+      
+    </div>
+  
+  
+</div>
+</div>
+              
+              
+              
+                
+<div id="searchbox"></div>
+                <article class="bd-article">
+                  
+  <section id="TensorRT-export">
+<h1>TensorRT export<a class="headerlink" href="#TensorRT-export" title="Link to this heading">#</a></h1>
+<p>In this tutorial, we’ll walk through the process of performing 8-bit quantization on a simple model using TensorRT and Aidge. The steps include:</p>
+<ul class="simple">
+<li><p>exporting the model</p></li>
+<li><p>modifying the test script for quantization</p></li>
+<li><p>preparing calibration data</p></li>
+<li><p>running the quantization and profile the quantized model</p></li>
+</ul>
+<p><img alt="tutorial graph" src="../../_images/TRT_worklfow.png" /></p>
+<p>Furthermore, as shown in this image but not demonstrated in this tutorial, Aidge allows the user to:</p>
+<ul class="simple">
+<li><p>Add custom operators via the plugin interface</p></li>
+<li><p>Facilitate the transformation of user data into calibration data</p></li>
+</ul>
+<section id="0.-Requirements-for-this-tutorial">
+<h2>0. Requirements for this tutorial<a class="headerlink" href="#0.-Requirements-for-this-tutorial" title="Link to this heading">#</a></h2>
+<p>To complete this tutorial, we hightly recommend following these requirements:</p>
+<ul class="simple">
+<li><p>To have completed the <a class="reference external" href="https://gitlab.eclipse.org/eclipse/aidge/aidge/-/tree/master/examples/tutorials/Aidge_tutorial?ref_type=heads">Aidge 101 tutorial</a></p></li>
+<li><p>To have installed the <code class="docutils literal notranslate"><span class="pre">aidge_export_tensorrt</span></code> module</p></li>
+</ul>
+<p>In order to compile the export on your machine, please be sure to have one of these two conditions:</p>
+<ul class="simple">
+<li><p>To have installed <a class="reference external" href="https://docs.docker.com/get-docker/">Docker</a> (the export compilation chain is able to use docker)</p></li>
+<li><p>To have installed the correct packages to support TensorRT 8.6</p></li>
+</ul>
+</section>
+<section id="1.-Exporting-the-model">
+<h2>1. Exporting the model<a class="headerlink" href="#1.-Exporting-the-model" title="Link to this heading">#</a></h2>
+<p>In this tutorial, we will export <a class="reference external" href="https://github.com/onnx/models/tree/main/validated/vision/classification/mobilenet/model">MobileNetV2</a>, a lightweight convolutional neural network.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span>wget<span class="w"> </span>-c<span class="w"> </span>https://github.com/onnx/models/raw/main/validated/vision/classification/mobilenet/model/mobilenetv2-7.onnx
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+/usr/bin/sh: 1: wget: not found
+</pre></div></div>
+</div>
+<p>For visualizing the model structure, we recommend using Netron. If you haven’t installed Netron yet, you can do so by executing the following command:</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># !pip install netron</span>
+</pre></div>
+</div>
+</div>
+<p>Once installed, you can launch Netron to visualize the model:</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># import netron</span>
+<span class="c1"># netron.start(&#39;mobilenetv2-7.onnx&#39;, 8080)</span>
+</pre></div>
+</div>
+</div>
+<p>Then let’s export the model using the <code class="docutils literal notranslate"><span class="pre">aidge_export_tensorrt</span></code> module.</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># First, be sure that any previous exports are removed</span>
+<span class="o">!</span>rm<span class="w"> </span>-rf<span class="w"> </span>export_trt
+</pre></div>
+</div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_export_tensorrt</span>
+
+<span class="c1"># Generate export for your model</span>
+<span class="c1"># This function takes as argument the name of the export folder</span>
+<span class="c1"># and the onnx file or the graphview of your model</span>
+<span class="n">aidge_export_tensorrt</span><span class="o">.</span><span class="n">export</span><span class="p">(</span><span class="s2">&quot;export_trt&quot;</span><span class="p">,</span> <span class="s2">&quot;mobilenetv2-7.onnx&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+Generating TensorRT export in export_trt.
+</pre></div></div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+<span class="ansi-red-fg">---------------------------------------------------------------------------</span>
+<span class="ansi-red-fg">FileNotFoundError</span>                         Traceback (most recent call last)
+Cell <span class="ansi-green-fg">In[5], line 6</span>
+<span class="ansi-green-intense-fg ansi-bold">      1</span> <span class="ansi-bold" style="color: rgb(0,135,0)">import</span><span style="color: rgb(188,188,188)"> </span><span class="ansi-bold" style="color: rgb(0,0,255)">aidge_export_tensorrt</span>
+<span class="ansi-green-intense-fg ansi-bold">      3</span> <span style="color: rgb(95,135,135)"># Generate export for your model</span>
+<span class="ansi-green-intense-fg ansi-bold">      4</span> <span style="color: rgb(95,135,135)"># This function takes as argument the name of the export folder</span>
+<span class="ansi-green-intense-fg ansi-bold">      5</span> <span style="color: rgb(95,135,135)"># and the onnx file or the graphview of your model</span>
+<span class="ansi-green-fg">----&gt; 6</span> <span class="ansi-yellow-bg">aidge_export_tensorrt</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">export</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">export_trt</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">mobilenetv2-7.onnx</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">)</span>
+
+File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/aidge_export_tensorrt/__init__.py:56</span>, in <span class="ansi-cyan-fg">export</span><span class="ansi-blue-fg">(export_folder, graphview, python_binding, trt_version)</span>
+<span class="ansi-green-intense-fg ansi-bold">     54</span> <span class="ansi-bold" style="color: rgb(0,135,0)">elif</span> <span style="color: rgb(0,135,0)">isinstance</span>(graphview, <span style="color: rgb(0,135,0)">str</span>):
+<span class="ansi-green-intense-fg ansi-bold">     55</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> graphview<span style="color: rgb(98,98,98)">.</span>endswith(<span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">.onnx</span><span style="color: rgb(175,0,0)">&#34;</span>):
+<span class="ansi-green-fg">---&gt; 56</span>         <span class="ansi-yellow-bg">shutil</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">copy</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">graphview</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg">export_folder</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">     57</span>         <span style="color: rgb(95,135,135)"># Rename onnx file to &#34;model.onnx&#34;</span>
+<span class="ansi-green-intense-fg ansi-bold">     58</span>         _, old_name <span style="color: rgb(98,98,98)">=</span> os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>split(graphview)
+
+File <span class="ansi-green-fg">/usr/lib/python3.10/shutil.py:417</span>, in <span class="ansi-cyan-fg">copy</span><span class="ansi-blue-fg">(src, dst, follow_symlinks)</span>
+<span class="ansi-green-intense-fg ansi-bold">    415</span> <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>isdir(dst):
+<span class="ansi-green-intense-fg ansi-bold">    416</span>     dst <span style="color: rgb(98,98,98)">=</span> os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>join(dst, os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>basename(src))
+<span class="ansi-green-fg">--&gt; 417</span> <span class="ansi-yellow-bg">copyfile</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">src</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg">dst</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg">follow_symlinks</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">=</span><span class="ansi-yellow-bg">follow_symlinks</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">    418</span> copymode(src, dst, follow_symlinks<span style="color: rgb(98,98,98)">=</span>follow_symlinks)
+<span class="ansi-green-intense-fg ansi-bold">    419</span> <span class="ansi-bold" style="color: rgb(0,135,0)">return</span> dst
+
+File <span class="ansi-green-fg">/usr/lib/python3.10/shutil.py:254</span>, in <span class="ansi-cyan-fg">copyfile</span><span class="ansi-blue-fg">(src, dst, follow_symlinks)</span>
+<span class="ansi-green-intense-fg ansi-bold">    252</span>     os<span style="color: rgb(98,98,98)">.</span>symlink(os<span style="color: rgb(98,98,98)">.</span>readlink(src), dst)
+<span class="ansi-green-intense-fg ansi-bold">    253</span> <span class="ansi-bold" style="color: rgb(0,135,0)">else</span>:
+<span class="ansi-green-fg">--&gt; 254</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">with</span> <span class="ansi-yellow-bg" style="color: rgb(0,135,0)">open</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">src</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#39;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">rb</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#39;</span><span class="ansi-yellow-bg">)</span> <span class="ansi-bold" style="color: rgb(0,135,0)">as</span> fsrc:
+<span class="ansi-green-intense-fg ansi-bold">    255</span>         <span class="ansi-bold" style="color: rgb(0,135,0)">try</span>:
+<span class="ansi-green-intense-fg ansi-bold">    256</span>             <span class="ansi-bold" style="color: rgb(0,135,0)">with</span> <span style="color: rgb(0,135,0)">open</span>(dst, <span style="color: rgb(175,0,0)">&#39;</span><span style="color: rgb(175,0,0)">wb</span><span style="color: rgb(175,0,0)">&#39;</span>) <span class="ansi-bold" style="color: rgb(0,135,0)">as</span> fdst:
+<span class="ansi-green-intense-fg ansi-bold">    257</span>                 <span style="color: rgb(95,135,135)"># macOS</span>
+
+<span class="ansi-red-fg">FileNotFoundError</span>: [Errno 2] No such file or directory: &#39;mobilenetv2-7.onnx&#39;
+</pre></div></div>
+</div>
+<p>The export povides a Makefile with several options to use the export on your machine. You can generate a C++ export or a Python export.</p>
+<p>You also have the possibility to compile the export or/and the Python library by using Docker if your host machine doesn’t have the correct packages. In this tutorial, we generate the Python library of the export and use it a Python script.</p>
+<p>All of these options are resumed in the helper of the Makefile (run <code class="docutils literal notranslate"><span class="pre">make</span> <span class="pre">help</span></code> in the export folder for more details).</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Compile the export Python library by using docker</span>
+<span class="c1"># and the Makefile provided in the export</span>
+<span class="o">!</span><span class="nb">cd</span><span class="w"> </span>export_trt/<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span>make<span class="w"> </span>build_lib_python_docker
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+make[1]: Entering directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/export_trt&#39;
+make[1]: *** No rule to make target &#39;build_lib_python_docker&#39;.  Stop.
+make[1]: Leaving directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/export_trt&#39;
+</pre></div></div>
+</div>
+</section>
+<section id="2.-Modifying-the-test-script-for-quantization">
+<h2>2. Modifying the test script for quantization<a class="headerlink" href="#2.-Modifying-the-test-script-for-quantization" title="Link to this heading">#</a></h2>
+<p>Next, you have to modify <code class="docutils literal notranslate"><span class="pre">test.py</span></code> by adding <code class="docutils literal notranslate"><span class="pre">nb_bits=8</span></code> in the graph constructor and call <code class="docutils literal notranslate"><span class="pre">model.calibrate()</span></code>.</p>
+<p><code class="docutils literal notranslate"><span class="pre">calibrate()</span></code> can accept three arguments:</p>
+<ul class="simple">
+<li><p><strong>calibration_folder_path</strong>: to specify the path to your calibration folder</p></li>
+<li><p><strong>cache_file_path</strong>: to use your pre-built calibration cache</p></li>
+<li><p><strong>batch_size</strong>: to specify the batch size for calibration data</p></li>
+</ul>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">%%writefile</span> export_trt/test.py
+<span class="sd">&quot;&quot;&quot;Example test file for the TensorRT Python API.&quot;&quot;&quot;</span>
+
+<span class="kn">import</span><span class="w"> </span><span class="nn">build.lib.aidge_trt</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">aidge_trt</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span>
+
+<span class="k">if</span> <span class="vm">__name__</span> <span class="o">==</span> <span class="s1">&#39;__main__&#39;</span><span class="p">:</span>
+    <span class="c1"># Load the model</span>
+    <span class="n">model</span> <span class="o">=</span> <span class="n">aidge_trt</span><span class="o">.</span><span class="n">Graph</span><span class="p">(</span><span class="s2">&quot;model.onnx&quot;</span><span class="p">,</span> <span class="n">nb_bits</span><span class="o">=</span><span class="mi">8</span><span class="p">)</span>
+
+    <span class="c1"># Calibrate the model</span>
+    <span class="n">model</span><span class="o">.</span><span class="n">calibrate</span><span class="p">()</span>
+
+    <span class="c1"># Initialize the model</span>
+    <span class="n">model</span><span class="o">.</span><span class="n">initialize</span><span class="p">()</span>
+
+    <span class="c1"># Profile the model with 10 iterations</span>
+    <span class="n">model</span><span class="o">.</span><span class="n">profile</span><span class="p">(</span><span class="mi">10</span><span class="p">)</span>
+
+    <span class="c1"># Example of running inference</span>
+    <span class="c1"># img: numpy.array = np.load(&quot;PATH TO NPY file&quot;)</span>
+    <span class="c1"># output: numpy.array = model.run_sync([img])</span>
+<br/></pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+Writing export_trt/test.py
+</pre></div></div>
+</div>
+</section>
+<section id="3.-Preparing-the-calibration-dataset">
+<h2>3. Preparing the calibration dataset<a class="headerlink" href="#3.-Preparing-the-calibration-dataset" title="Link to this heading">#</a></h2>
+<p>To ensure accurate calibration, it’s essential to select representative samples. In this example, we will use a 224x224 RGB image from the ImageNet dataset.</p>
+<p>However, for practical applications, TensorRT suggests that “The amount of input data required is application-dependent, but experiments indicate that approximately 500 images are adequate for calibrating ImageNet classification networks”.</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create calibration folder</span>
+<span class="o">!</span><span class="nb">cd</span><span class="w"> </span>export_trt/<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span>mkdir<span class="w"> </span>calibration_folder
+</pre></div>
+</div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">%</span><span class="k">matplotlib</span> inline
+<span class="kn">import</span><span class="w"> </span><span class="nn">matplotlib.pyplot</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">plt</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">matplotlib.image</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">mpimg</span>
+
+<span class="n">demo_img_path</span> <span class="o">=</span> <span class="s1">&#39;./data/0.jpg&#39;</span>
+
+<span class="n">img</span> <span class="o">=</span> <span class="n">mpimg</span><span class="o">.</span><span class="n">imread</span><span class="p">(</span><span class="n">demo_img_path</span><span class="p">)</span>
+<span class="n">imgplot</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">imshow</span><span class="p">(</span><span class="n">img</span><span class="p">)</span>
+<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+<span class="ansi-red-fg">---------------------------------------------------------------------------</span>
+<span class="ansi-red-fg">FileNotFoundError</span>                         Traceback (most recent call last)
+Cell <span class="ansi-green-fg">In[9], line 7</span>
+<span class="ansi-green-intense-fg ansi-bold">      3</span> <span class="ansi-bold" style="color: rgb(0,135,0)">import</span><span style="color: rgb(188,188,188)"> </span><span class="ansi-bold" style="color: rgb(0,0,255)">matplotlib</span><span class="ansi-bold" style="color: rgb(0,0,255)">.</span><span class="ansi-bold" style="color: rgb(0,0,255)">image</span><span style="color: rgb(188,188,188)"> </span><span class="ansi-bold" style="color: rgb(0,135,0)">as</span><span style="color: rgb(188,188,188)"> </span><span class="ansi-bold" style="color: rgb(0,0,255)">mpimg</span>
+<span class="ansi-green-intense-fg ansi-bold">      5</span> demo_img_path <span style="color: rgb(98,98,98)">=</span> <span style="color: rgb(175,0,0)">&#39;</span><span style="color: rgb(175,0,0)">./data/0.jpg</span><span style="color: rgb(175,0,0)">&#39;</span>
+<span class="ansi-green-fg">----&gt; 7</span> img <span style="color: rgb(98,98,98)">=</span> <span class="ansi-yellow-bg">mpimg</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">imread</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">demo_img_path</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">      8</span> imgplot <span style="color: rgb(98,98,98)">=</span> plt<span style="color: rgb(98,98,98)">.</span>imshow(img)
+<span class="ansi-green-intense-fg ansi-bold">      9</span> plt<span style="color: rgb(98,98,98)">.</span>show()
+
+File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/matplotlib/image.py:1520</span>, in <span class="ansi-cyan-fg">imread</span><span class="ansi-blue-fg">(fname, format)</span>
+<span class="ansi-green-intense-fg ansi-bold">   1513</span> <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> <span style="color: rgb(0,135,0)">isinstance</span>(fname, <span style="color: rgb(0,135,0)">str</span>) <span class="ansi-bold" style="color: rgb(175,0,255)">and</span> <span style="color: rgb(0,135,0)">len</span>(parse<span style="color: rgb(98,98,98)">.</span>urlparse(fname)<span style="color: rgb(98,98,98)">.</span>scheme) <span style="color: rgb(98,98,98)">&gt;</span> <span style="color: rgb(98,98,98)">1</span>:
+<span class="ansi-green-intense-fg ansi-bold">   1514</span>     <span style="color: rgb(95,135,135)"># Pillow doesn&#39;t handle URLs directly.</span>
+<span class="ansi-green-intense-fg ansi-bold">   1515</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">raise</span> <span class="ansi-bold" style="color: rgb(215,95,95)">ValueError</span>(
+<span class="ansi-green-intense-fg ansi-bold">   1516</span>         <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">Please open the URL for reading and pass the </span><span style="color: rgb(175,0,0)">&#34;</span>
+<span class="ansi-green-intense-fg ansi-bold">   1517</span>         <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">result to Pillow, e.g. with </span><span style="color: rgb(175,0,0)">&#34;</span>
+<span class="ansi-green-intense-fg ansi-bold">   1518</span>         <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">``np.array(PIL.Image.open(urllib.request.urlopen(url)))``.</span><span style="color: rgb(175,0,0)">&#34;</span>
+<span class="ansi-green-intense-fg ansi-bold">   1519</span>         )
+<span class="ansi-green-fg">-&gt; 1520</span> <span class="ansi-bold" style="color: rgb(0,135,0)">with</span> <span class="ansi-yellow-bg">img_open</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">fname</span><span class="ansi-yellow-bg">)</span> <span class="ansi-bold" style="color: rgb(0,135,0)">as</span> image:
+<span class="ansi-green-intense-fg ansi-bold">   1521</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">return</span> (_pil_png_to_float_array(image)
+<span class="ansi-green-intense-fg ansi-bold">   1522</span>             <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> <span style="color: rgb(0,135,0)">isinstance</span>(image, PIL<span style="color: rgb(98,98,98)">.</span>PngImagePlugin<span style="color: rgb(98,98,98)">.</span>PngImageFile) <span class="ansi-bold" style="color: rgb(0,135,0)">else</span>
+<span class="ansi-green-intense-fg ansi-bold">   1523</span>             pil_to_array(image))
+
+File <span class="ansi-green-fg">/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/PIL/Image.py:3505</span>, in <span class="ansi-cyan-fg">open</span><span class="ansi-blue-fg">(fp, mode, formats)</span>
+<span class="ansi-green-intense-fg ansi-bold">   3502</span>     filename <span style="color: rgb(98,98,98)">=</span> os<span style="color: rgb(98,98,98)">.</span>fspath(fp)
+<span class="ansi-green-intense-fg ansi-bold">   3504</span> <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> filename:
+<span class="ansi-green-fg">-&gt; 3505</span>     fp <span style="color: rgb(98,98,98)">=</span> <span class="ansi-yellow-bg">builtins</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">open</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">filename</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">rb</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">   3506</span>     exclusive_fp <span style="color: rgb(98,98,98)">=</span> <span class="ansi-bold" style="color: rgb(0,135,0)">True</span>
+<span class="ansi-green-intense-fg ansi-bold">   3507</span> <span class="ansi-bold" style="color: rgb(0,135,0)">else</span>:
+
+<span class="ansi-red-fg">FileNotFoundError</span>: [Errno 2] No such file or directory: &#39;./data/0.jpg&#39;
+</pre></div></div>
+</div>
+<p>This image has been preprocessed and stored in <code class="docutils literal notranslate"><span class="pre">/data/</span></code> as <code class="docutils literal notranslate"><span class="pre">0.batch</span></code> file. Information about the image’s shape is stored in the <code class="docutils literal notranslate"><span class="pre">.info</span></code> file.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">shutil</span>
+
+<span class="n">shutil</span><span class="o">.</span><span class="n">copy</span><span class="p">(</span><span class="s2">&quot;data/.info&quot;</span><span class="p">,</span> <span class="s2">&quot;export_trt/calibration_folder/.info&quot;</span><span class="p">)</span>
+<span class="n">shutil</span><span class="o">.</span><span class="n">copy</span><span class="p">(</span><span class="s2">&quot;data/0.batch&quot;</span><span class="p">,</span> <span class="s2">&quot;export_trt/calibration_folder/0.batch&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+<span class="ansi-red-fg">---------------------------------------------------------------------------</span>
+<span class="ansi-red-fg">FileNotFoundError</span>                         Traceback (most recent call last)
+Cell <span class="ansi-green-fg">In[10], line 3</span>
+<span class="ansi-green-intense-fg ansi-bold">      1</span> <span class="ansi-bold" style="color: rgb(0,135,0)">import</span><span style="color: rgb(188,188,188)"> </span><span class="ansi-bold" style="color: rgb(0,0,255)">shutil</span>
+<span class="ansi-green-fg">----&gt; 3</span> <span class="ansi-yellow-bg">shutil</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">.</span><span class="ansi-yellow-bg">copy</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">data/.info</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">export_trt/calibration_folder/.info</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#34;</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">      4</span> shutil<span style="color: rgb(98,98,98)">.</span>copy(<span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">data/0.batch</span><span style="color: rgb(175,0,0)">&#34;</span>, <span style="color: rgb(175,0,0)">&#34;</span><span style="color: rgb(175,0,0)">export_trt/calibration_folder/0.batch</span><span style="color: rgb(175,0,0)">&#34;</span>)
+
+File <span class="ansi-green-fg">/usr/lib/python3.10/shutil.py:417</span>, in <span class="ansi-cyan-fg">copy</span><span class="ansi-blue-fg">(src, dst, follow_symlinks)</span>
+<span class="ansi-green-intense-fg ansi-bold">    415</span> <span class="ansi-bold" style="color: rgb(0,135,0)">if</span> os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>isdir(dst):
+<span class="ansi-green-intense-fg ansi-bold">    416</span>     dst <span style="color: rgb(98,98,98)">=</span> os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>join(dst, os<span style="color: rgb(98,98,98)">.</span>path<span style="color: rgb(98,98,98)">.</span>basename(src))
+<span class="ansi-green-fg">--&gt; 417</span> <span class="ansi-yellow-bg">copyfile</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">src</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg">dst</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg">follow_symlinks</span><span class="ansi-yellow-bg" style="color: rgb(98,98,98)">=</span><span class="ansi-yellow-bg">follow_symlinks</span><span class="ansi-yellow-bg">)</span>
+<span class="ansi-green-intense-fg ansi-bold">    418</span> copymode(src, dst, follow_symlinks<span style="color: rgb(98,98,98)">=</span>follow_symlinks)
+<span class="ansi-green-intense-fg ansi-bold">    419</span> <span class="ansi-bold" style="color: rgb(0,135,0)">return</span> dst
+
+File <span class="ansi-green-fg">/usr/lib/python3.10/shutil.py:254</span>, in <span class="ansi-cyan-fg">copyfile</span><span class="ansi-blue-fg">(src, dst, follow_symlinks)</span>
+<span class="ansi-green-intense-fg ansi-bold">    252</span>     os<span style="color: rgb(98,98,98)">.</span>symlink(os<span style="color: rgb(98,98,98)">.</span>readlink(src), dst)
+<span class="ansi-green-intense-fg ansi-bold">    253</span> <span class="ansi-bold" style="color: rgb(0,135,0)">else</span>:
+<span class="ansi-green-fg">--&gt; 254</span>     <span class="ansi-bold" style="color: rgb(0,135,0)">with</span> <span class="ansi-yellow-bg" style="color: rgb(0,135,0)">open</span><span class="ansi-yellow-bg">(</span><span class="ansi-yellow-bg">src</span><span class="ansi-yellow-bg">,</span><span class="ansi-yellow-bg"> </span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#39;</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">rb</span><span class="ansi-yellow-bg" style="color: rgb(175,0,0)">&#39;</span><span class="ansi-yellow-bg">)</span> <span class="ansi-bold" style="color: rgb(0,135,0)">as</span> fsrc:
+<span class="ansi-green-intense-fg ansi-bold">    255</span>         <span class="ansi-bold" style="color: rgb(0,135,0)">try</span>:
+<span class="ansi-green-intense-fg ansi-bold">    256</span>             <span class="ansi-bold" style="color: rgb(0,135,0)">with</span> <span style="color: rgb(0,135,0)">open</span>(dst, <span style="color: rgb(175,0,0)">&#39;</span><span style="color: rgb(175,0,0)">wb</span><span style="color: rgb(175,0,0)">&#39;</span>) <span class="ansi-bold" style="color: rgb(0,135,0)">as</span> fdst:
+<span class="ansi-green-intense-fg ansi-bold">    257</span>                 <span style="color: rgb(95,135,135)"># macOS</span>
+
+<span class="ansi-red-fg">FileNotFoundError</span>: [Errno 2] No such file or directory: &#39;data/.info&#39;
+</pre></div></div>
+</div>
+</section>
+<section id="4.-Generating-the-quantized-model">
+<h2>4. Generating the quantized model<a class="headerlink" href="#4.-Generating-the-quantized-model" title="Link to this heading">#</a></h2>
+<p>Finally, run the test script to quantize the model with the export python library and profile it.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span><span class="nb">cd</span><span class="w"> </span>export_trt/<span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span>make<span class="w"> </span>test_lib_python_docker
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+make[1]: Entering directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/export_trt&#39;
+make[1]: *** No rule to make target &#39;test_lib_python_docker&#39;.  Stop.
+make[1]: Leaving directory &#39;/builds/eclipse/aidge/aidge/docs/source/Tutorial/export_trt&#39;
+</pre></div></div>
+</div>
+<p>Following these steps have enabled you to conduct 8-bit quantization on your model. Upon completing the calibration, the calibration data can be reused if a <code class="docutils literal notranslate"><span class="pre">calibration_cache</span></code> exists, saving computational resources.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[12]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="o">!</span>tail<span class="w"> </span>-n<span class="w"> </span>+0<span class="w"> </span>export_trt/calibration_cache
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+tail: cannot open &#39;export_trt/calibration_cache&#39; for reading: No such file or directory
+</pre></div></div>
+</div>
+<p>After quantization, feel free to save the generated TensorRT engine using <code class="docutils literal notranslate"><span class="pre">model.save(&quot;name_of_your_model&quot;)</span></code>. The method will save the engine into a <code class="docutils literal notranslate"><span class="pre">.trt</span></code> file.</p>
+<p>To load the engine for further applications, use <code class="docutils literal notranslate"><span class="pre">model.load(&quot;name_of_your_model.trt&quot;)</span></code> after instancing a model.</p>
+</section>
+</section>
+
+
+                </article>
+              
+              
+              
+              
+              
+                <footer class="prev-next-footer d-print-none">
+                  
+<div class="prev-next-area">
+    <a class="left-prev"
+       href="export_cpp_add_impl.html"
+       title="previous page">
+      <i class="fa-solid fa-angle-left"></i>
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">previous</p>
+        <p class="prev-next-title">Add a custom operator to the C++ export</p>
+      </div>
+    </a>
+    <a class="right-next"
+       href="export_stm32.html"
+       title="next page">
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">next</p>
+        <p class="prev-next-title">STM32 export</p>
+      </div>
+      <i class="fa-solid fa-angle-right"></i>
+    </a>
+</div>
+                </footer>
+              
+            </div>
+            
+            
+              
+                <dialog id="pst-secondary-sidebar-modal"></dialog>
+                <div id="pst-secondary-sidebar" class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
+
+
+  <div class="sidebar-secondary-item">
+<div
+    id="pst-page-navigation-heading-2"
+    class="page-toc tocsection onthispage">
+    <i class="fa-solid fa-list"></i> On this page
+  </div>
+  <nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
+    <ul class="visible nav section-nav flex-column">
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#0.-Requirements-for-this-tutorial">0. Requirements for this tutorial</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#1.-Exporting-the-model">1. Exporting the model</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#2.-Modifying-the-test-script-for-quantization">2. Modifying the test script for quantization</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#3.-Preparing-the-calibration-dataset">3. Preparing the calibration dataset</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#4.-Generating-the-quantized-model">4. Generating the quantized model</a></li>
+</ul>
+  </nav></div>
+
+  <div class="sidebar-secondary-item">
+  <div role="note" aria-label="source link">
+    <h3>This Page</h3>
+    <ul class="this-page-menu">
+      <li><a href="../../_sources/source/Tutorial/export_trt.nblink.txt"
+            rel="nofollow">Show Source</a></li>
+    </ul>
+   </div></div>
+
+</div></div>
+              
+            
+          </div>
+          <footer class="bd-footer-content">
+            
+          </footer>
+        
+      </main>
+    </div>
+  </div>
+  
+  <!-- Scripts loaded after <body> so the DOM is not blocked -->
+  <script defer src="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
+<script defer src="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>
+
+  <footer class="bd-footer">
+<div class="bd-footer__inner bd-page-width">
+  
+    <div class="footer-items__start">
+      
+        <div class="footer-item">
+
+  <p class="copyright">
+    
+      © Copyright 2023, CEA LIST.
+      <br/>
+    
+  </p>
+</div>
+      
+        <div class="footer-item">
+
+  <p class="sphinx-version">
+    Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.1.3.
+    <br/>
+  </p>
+</div>
+      
+    </div>
+  
+  
+  
+    <div class="footer-items__end">
+      
+        <div class="footer-item">
+<p class="theme-version">
+  <!-- # L10n: Setting the PST URL as an argument as this does not need to be localized -->
+  Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.16.1.
+</p></div>
+      
+    </div>
+  
+</div>
+
+  </footer>
+  </body>
+</html>
\ No newline at end of file
diff --git a/source/Tutorial/export_trt.ipynb b/source/Tutorial/export_trt.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..8d40dc3bbf805525ab6dbc778457dd0951e52084
--- /dev/null
+++ b/source/Tutorial/export_trt.ipynb
@@ -0,0 +1,495 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# TensorRT export\n",
+    "\n",
+    "In this tutorial, we'll walk through the process of performing 8-bit quantization on a simple model using TensorRT and Aidge. <br>\n",
+    "The steps include:\n",
+    "- exporting the model\n",
+    "- modifying the test script for quantization\n",
+    "- preparing calibration data\n",
+    "- running the quantization and profile the quantized model\n",
+    "\n",
+    "![tutorial graph](static/TRT_worklfow.png)\n",
+    "\n",
+    "Furthermore, as shown in this image but not demonstrated in this tutorial, Aidge allows the user to:\n",
+    "- Add custom operators via the plugin interface\n",
+    "- Facilitate the transformation of user data into calibration data\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## 0. Requirements for this tutorial\n",
+    "\n",
+    "To complete this tutorial, we hightly recommend following these requirements:\n",
+    "- To have completed the [Aidge 101 tutorial](https://gitlab.eclipse.org/eclipse/aidge/aidge/-/tree/master/examples/tutorials/Aidge_tutorial?ref_type=heads)\n",
+    "- To have installed the `aidge_export_tensorrt` module\n",
+    "\n",
+    "In order to compile the export on your machine, please be sure to have one of these two conditions:\n",
+    "- To have installed [Docker](https://docs.docker.com/get-docker/) (the export compilation chain is able to use docker)\n",
+    "- To have installed the correct packages to support TensorRT 8.6"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## 1. Exporting the model\n",
+    "\n",
+    "In this tutorial, we will export [MobileNetV2](https://github.com/onnx/models/tree/main/validated/vision/classification/mobilenet/model), a lightweight convolutional neural network. "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:24.110818Z",
+     "iopub.status.busy": "2025-05-19T10:05:24.110686Z",
+     "iopub.status.idle": "2025-05-19T10:05:24.224173Z",
+     "shell.execute_reply": "2025-05-19T10:05:24.223695Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "/usr/bin/sh: 1: wget: not found\r\n"
+     ]
+    }
+   ],
+   "source": [
+    "!wget -c https://github.com/onnx/models/raw/main/validated/vision/classification/mobilenet/model/mobilenetv2-7.onnx"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "For visualizing the model structure, we recommend using Netron. <br>\n",
+    "If you haven't installed Netron yet, you can do so by executing the following command:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:24.225828Z",
+     "iopub.status.busy": "2025-05-19T10:05:24.225615Z",
+     "iopub.status.idle": "2025-05-19T10:05:24.227778Z",
+     "shell.execute_reply": "2025-05-19T10:05:24.227460Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# !pip install netron"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Once installed, you can launch Netron to visualize the model:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:24.228911Z",
+     "iopub.status.busy": "2025-05-19T10:05:24.228810Z",
+     "iopub.status.idle": "2025-05-19T10:05:24.230540Z",
+     "shell.execute_reply": "2025-05-19T10:05:24.230199Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# import netron\n",
+    "# netron.start('mobilenetv2-7.onnx', 8080)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Then let's export the model using the `aidge_export_tensorrt` module."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:24.231641Z",
+     "iopub.status.busy": "2025-05-19T10:05:24.231456Z",
+     "iopub.status.idle": "2025-05-19T10:05:24.341712Z",
+     "shell.execute_reply": "2025-05-19T10:05:24.341064Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# First, be sure that any previous exports are removed\n",
+    "!rm -rf export_trt"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:24.343648Z",
+     "iopub.status.busy": "2025-05-19T10:05:24.343281Z",
+     "iopub.status.idle": "2025-05-19T10:05:24.887922Z",
+     "shell.execute_reply": "2025-05-19T10:05:24.887661Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Generating TensorRT export in export_trt.\n"
+     ]
+    },
+    {
+     "ename": "FileNotFoundError",
+     "evalue": "[Errno 2] No such file or directory: 'mobilenetv2-7.onnx'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mFileNotFoundError\u001b[0m                         Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[5], line 6\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01maidge_export_tensorrt\u001b[39;00m\n\u001b[1;32m      3\u001b[0m \u001b[38;5;66;03m# Generate export for your model\u001b[39;00m\n\u001b[1;32m      4\u001b[0m \u001b[38;5;66;03m# This function takes as argument the name of the export folder\u001b[39;00m\n\u001b[1;32m      5\u001b[0m \u001b[38;5;66;03m# and the onnx file or the graphview of your model\u001b[39;00m\n\u001b[0;32m----> 6\u001b[0m \u001b[43maidge_export_tensorrt\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mexport\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mexport_trt\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mmobilenetv2-7.onnx\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n",
+      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/aidge_export_tensorrt/__init__.py:56\u001b[0m, in \u001b[0;36mexport\u001b[0;34m(export_folder, graphview, python_binding, trt_version)\u001b[0m\n\u001b[1;32m     54\u001b[0m \u001b[38;5;28;01melif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(graphview, \u001b[38;5;28mstr\u001b[39m):\n\u001b[1;32m     55\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m graphview\u001b[38;5;241m.\u001b[39mendswith(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m.onnx\u001b[39m\u001b[38;5;124m\"\u001b[39m):\n\u001b[0;32m---> 56\u001b[0m         \u001b[43mshutil\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcopy\u001b[49m\u001b[43m(\u001b[49m\u001b[43mgraphview\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mexport_folder\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m     57\u001b[0m         \u001b[38;5;66;03m# Rename onnx file to \"model.onnx\"\u001b[39;00m\n\u001b[1;32m     58\u001b[0m         _, old_name \u001b[38;5;241m=\u001b[39m os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39msplit(graphview)\n",
+      "File \u001b[0;32m/usr/lib/python3.10/shutil.py:417\u001b[0m, in \u001b[0;36mcopy\u001b[0;34m(src, dst, follow_symlinks)\u001b[0m\n\u001b[1;32m    415\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39misdir(dst):\n\u001b[1;32m    416\u001b[0m     dst \u001b[38;5;241m=\u001b[39m os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mjoin(dst, os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mbasename(src))\n\u001b[0;32m--> 417\u001b[0m \u001b[43mcopyfile\u001b[49m\u001b[43m(\u001b[49m\u001b[43msrc\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mdst\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mfollow_symlinks\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfollow_symlinks\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    418\u001b[0m copymode(src, dst, follow_symlinks\u001b[38;5;241m=\u001b[39mfollow_symlinks)\n\u001b[1;32m    419\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m dst\n",
+      "File \u001b[0;32m/usr/lib/python3.10/shutil.py:254\u001b[0m, in \u001b[0;36mcopyfile\u001b[0;34m(src, dst, follow_symlinks)\u001b[0m\n\u001b[1;32m    252\u001b[0m     os\u001b[38;5;241m.\u001b[39msymlink(os\u001b[38;5;241m.\u001b[39mreadlink(src), dst)\n\u001b[1;32m    253\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m--> 254\u001b[0m     \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28;43mopen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43msrc\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mrb\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m fsrc:\n\u001b[1;32m    255\u001b[0m         \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m    256\u001b[0m             \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28mopen\u001b[39m(dst, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mwb\u001b[39m\u001b[38;5;124m'\u001b[39m) \u001b[38;5;28;01mas\u001b[39;00m fdst:\n\u001b[1;32m    257\u001b[0m                 \u001b[38;5;66;03m# macOS\u001b[39;00m\n",
+      "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'mobilenetv2-7.onnx'"
+     ]
+    }
+   ],
+   "source": [
+    "import aidge_export_tensorrt\n",
+    "\n",
+    "# Generate export for your model\n",
+    "# This function takes as argument the name of the export folder\n",
+    "# and the onnx file or the graphview of your model\n",
+    "aidge_export_tensorrt.export(\"export_trt\", \"mobilenetv2-7.onnx\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "The export povides a Makefile with several options to use the export on your machine. <br>\n",
+    "You can generate a C++ export or a Python export.\n",
+    "\n",
+    "You also have the possibility to compile the export or/and the Python library by using Docker if your host machine doesn't have the correct packages. <br>\n",
+    "In this tutorial, we generate the Python library of the export and use it a Python script.\n",
+    "\n",
+    "All of these options are resumed in the helper of the Makefile (run `make help` in the export folder for more details)."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:24.889019Z",
+     "iopub.status.busy": "2025-05-19T10:05:24.888920Z",
+     "iopub.status.idle": "2025-05-19T10:05:25.003689Z",
+     "shell.execute_reply": "2025-05-19T10:05:25.003160Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "make[1]: Entering directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/export_trt'\r\n",
+      "make[1]: *** No rule to make target 'build_lib_python_docker'.  Stop.\r\n",
+      "make[1]: Leaving directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/export_trt'\r\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Compile the export Python library by using docker\n",
+    "# and the Makefile provided in the export\n",
+    "!cd export_trt/ && make build_lib_python_docker"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## 2. Modifying the test script for quantization\n",
+    "\n",
+    "Next, you have to modify `test.py` by adding `nb_bits=8` in the graph constructor and call `model.calibrate()`."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "`calibrate()` can accept three arguments: \n",
+    "- **calibration_folder_path**: to specify the path to your calibration folder \n",
+    "- **cache_file_path**: to use your pre-built calibration cache\n",
+    "- **batch_size**: to specify the batch size for calibration data"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:25.005494Z",
+     "iopub.status.busy": "2025-05-19T10:05:25.005334Z",
+     "iopub.status.idle": "2025-05-19T10:05:25.008527Z",
+     "shell.execute_reply": "2025-05-19T10:05:25.008189Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Writing export_trt/test.py\n"
+     ]
+    }
+   ],
+   "source": [
+    "%%writefile export_trt/test.py\n",
+    "\"\"\"Example test file for the TensorRT Python API.\"\"\"\n",
+    "\n",
+    "import build.lib.aidge_trt as aidge_trt\n",
+    "import numpy as np\n",
+    "\n",
+    "if __name__ == '__main__':\n",
+    "    # Load the model\n",
+    "    model = aidge_trt.Graph(\"model.onnx\", nb_bits=8)\n",
+    "\n",
+    "    # Calibrate the model\n",
+    "    model.calibrate()\n",
+    "\n",
+    "    # Initialize the model\n",
+    "    model.initialize()\n",
+    "\n",
+    "    # Profile the model with 10 iterations\n",
+    "    model.profile(10)\n",
+    "\n",
+    "    # Example of running inference\n",
+    "    # img: numpy.array = np.load(\"PATH TO NPY file\")\n",
+    "    # output: numpy.array = model.run_sync([img])\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## 3. Preparing the calibration dataset\n",
+    "\n",
+    "To ensure accurate calibration, it's essential to select representative samples. In this example, we will use a 224x224 RGB image from the ImageNet dataset.\n",
+    "\n",
+    "However, for practical applications, TensorRT suggests that \"The amount of input data required is application-dependent, but experiments indicate that approximately 500 images are adequate for calibrating ImageNet classification networks\"."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:25.009380Z",
+     "iopub.status.busy": "2025-05-19T10:05:25.009287Z",
+     "iopub.status.idle": "2025-05-19T10:05:25.120863Z",
+     "shell.execute_reply": "2025-05-19T10:05:25.120252Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# Create calibration folder\n",
+    "!cd export_trt/ && mkdir calibration_folder"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:25.122596Z",
+     "iopub.status.busy": "2025-05-19T10:05:25.122390Z",
+     "iopub.status.idle": "2025-05-19T10:05:25.345359Z",
+     "shell.execute_reply": "2025-05-19T10:05:25.345029Z"
+    }
+   },
+   "outputs": [
+    {
+     "ename": "FileNotFoundError",
+     "evalue": "[Errno 2] No such file or directory: './data/0.jpg'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mFileNotFoundError\u001b[0m                         Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[9], line 7\u001b[0m\n\u001b[1;32m      3\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mmatplotlib\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mimage\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mmpimg\u001b[39;00m\n\u001b[1;32m      5\u001b[0m demo_img_path \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m./data/0.jpg\u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m----> 7\u001b[0m img \u001b[38;5;241m=\u001b[39m \u001b[43mmpimg\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mimread\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdemo_img_path\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m      8\u001b[0m imgplot \u001b[38;5;241m=\u001b[39m plt\u001b[38;5;241m.\u001b[39mimshow(img)\n\u001b[1;32m      9\u001b[0m plt\u001b[38;5;241m.\u001b[39mshow()\n",
+      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/matplotlib/image.py:1520\u001b[0m, in \u001b[0;36mimread\u001b[0;34m(fname, format)\u001b[0m\n\u001b[1;32m   1513\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(fname, \u001b[38;5;28mstr\u001b[39m) \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mlen\u001b[39m(parse\u001b[38;5;241m.\u001b[39murlparse(fname)\u001b[38;5;241m.\u001b[39mscheme) \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[1;32m   1514\u001b[0m     \u001b[38;5;66;03m# Pillow doesn't handle URLs directly.\u001b[39;00m\n\u001b[1;32m   1515\u001b[0m     \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[1;32m   1516\u001b[0m         \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mPlease open the URL for reading and pass the \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m   1517\u001b[0m         \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mresult to Pillow, e.g. with \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m   1518\u001b[0m         \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m``np.array(PIL.Image.open(urllib.request.urlopen(url)))``.\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m   1519\u001b[0m         )\n\u001b[0;32m-> 1520\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[43mimg_open\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfname\u001b[49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m image:\n\u001b[1;32m   1521\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m (_pil_png_to_float_array(image)\n\u001b[1;32m   1522\u001b[0m             \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(image, PIL\u001b[38;5;241m.\u001b[39mPngImagePlugin\u001b[38;5;241m.\u001b[39mPngImageFile) \u001b[38;5;28;01melse\u001b[39;00m\n\u001b[1;32m   1523\u001b[0m             pil_to_array(image))\n",
+      "File \u001b[0;32m/builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages/PIL/Image.py:3505\u001b[0m, in \u001b[0;36mopen\u001b[0;34m(fp, mode, formats)\u001b[0m\n\u001b[1;32m   3502\u001b[0m     filename \u001b[38;5;241m=\u001b[39m os\u001b[38;5;241m.\u001b[39mfspath(fp)\n\u001b[1;32m   3504\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m filename:\n\u001b[0;32m-> 3505\u001b[0m     fp \u001b[38;5;241m=\u001b[39m \u001b[43mbuiltins\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mopen\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfilename\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mrb\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m   3506\u001b[0m     exclusive_fp \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n\u001b[1;32m   3507\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n",
+      "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: './data/0.jpg'"
+     ]
+    }
+   ],
+   "source": [
+    "%matplotlib inline\n",
+    "import matplotlib.pyplot as plt\n",
+    "import matplotlib.image as mpimg\n",
+    "\n",
+    "demo_img_path = './data/0.jpg'\n",
+    "\n",
+    "img = mpimg.imread(demo_img_path)\n",
+    "imgplot = plt.imshow(img)\n",
+    "plt.show()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "This image has been preprocessed and stored in `/data/` as `0.batch` file. Information about the image's shape is stored in the `.info` file."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:25.346917Z",
+     "iopub.status.busy": "2025-05-19T10:05:25.346587Z",
+     "iopub.status.idle": "2025-05-19T10:05:25.363607Z",
+     "shell.execute_reply": "2025-05-19T10:05:25.363301Z"
+    }
+   },
+   "outputs": [
+    {
+     "ename": "FileNotFoundError",
+     "evalue": "[Errno 2] No such file or directory: 'data/.info'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mFileNotFoundError\u001b[0m                         Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[10], line 3\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21;01mshutil\u001b[39;00m\n\u001b[0;32m----> 3\u001b[0m \u001b[43mshutil\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcopy\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mdata/.info\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mexport_trt/calibration_folder/.info\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m      4\u001b[0m shutil\u001b[38;5;241m.\u001b[39mcopy(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mdata/0.batch\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mexport_trt/calibration_folder/0.batch\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
+      "File \u001b[0;32m/usr/lib/python3.10/shutil.py:417\u001b[0m, in \u001b[0;36mcopy\u001b[0;34m(src, dst, follow_symlinks)\u001b[0m\n\u001b[1;32m    415\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39misdir(dst):\n\u001b[1;32m    416\u001b[0m     dst \u001b[38;5;241m=\u001b[39m os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mjoin(dst, os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mbasename(src))\n\u001b[0;32m--> 417\u001b[0m \u001b[43mcopyfile\u001b[49m\u001b[43m(\u001b[49m\u001b[43msrc\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mdst\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mfollow_symlinks\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfollow_symlinks\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    418\u001b[0m copymode(src, dst, follow_symlinks\u001b[38;5;241m=\u001b[39mfollow_symlinks)\n\u001b[1;32m    419\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m dst\n",
+      "File \u001b[0;32m/usr/lib/python3.10/shutil.py:254\u001b[0m, in \u001b[0;36mcopyfile\u001b[0;34m(src, dst, follow_symlinks)\u001b[0m\n\u001b[1;32m    252\u001b[0m     os\u001b[38;5;241m.\u001b[39msymlink(os\u001b[38;5;241m.\u001b[39mreadlink(src), dst)\n\u001b[1;32m    253\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m--> 254\u001b[0m     \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28;43mopen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43msrc\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mrb\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m fsrc:\n\u001b[1;32m    255\u001b[0m         \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m    256\u001b[0m             \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28mopen\u001b[39m(dst, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mwb\u001b[39m\u001b[38;5;124m'\u001b[39m) \u001b[38;5;28;01mas\u001b[39;00m fdst:\n\u001b[1;32m    257\u001b[0m                 \u001b[38;5;66;03m# macOS\u001b[39;00m\n",
+      "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'data/.info'"
+     ]
+    }
+   ],
+   "source": [
+    "import shutil\n",
+    "\n",
+    "shutil.copy(\"data/.info\", \"export_trt/calibration_folder/.info\")\n",
+    "shutil.copy(\"data/0.batch\", \"export_trt/calibration_folder/0.batch\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## 4. Generating the quantized model \n",
+    "\n",
+    "Finally, run the test script to quantize the model with the export python library and profile it."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:25.364770Z",
+     "iopub.status.busy": "2025-05-19T10:05:25.364617Z",
+     "iopub.status.idle": "2025-05-19T10:05:25.480098Z",
+     "shell.execute_reply": "2025-05-19T10:05:25.479622Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "make[1]: Entering directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/export_trt'\r\n",
+      "make[1]: *** No rule to make target 'test_lib_python_docker'.  Stop.\r\n",
+      "make[1]: Leaving directory '/builds/eclipse/aidge/aidge/docs/source/Tutorial/export_trt'\r\n"
+     ]
+    }
+   ],
+   "source": [
+    "!cd export_trt/ && make test_lib_python_docker"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Following these steps have enabled you to conduct 8-bit quantization on your model. <br> \n",
+    "Upon completing the calibration, the calibration data can be reused if a `calibration_cache` exists, saving computational resources. "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:05:25.481653Z",
+     "iopub.status.busy": "2025-05-19T10:05:25.481484Z",
+     "iopub.status.idle": "2025-05-19T10:05:25.594531Z",
+     "shell.execute_reply": "2025-05-19T10:05:25.594102Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "tail: cannot open 'export_trt/calibration_cache' for reading: No such file or directory\r\n"
+     ]
+    }
+   ],
+   "source": [
+    "!tail -n +0 export_trt/calibration_cache"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "After quantization, feel free to save the generated TensorRT engine using `model.save(\"name_of_your_model\")`. The method will save the engine into a `.trt` file. \n",
+    "\n",
+    "To load the engine for further applications, use `model.load(\"name_of_your_model.trt\")` after instancing a model."
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "aidge",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.12"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/source/Tutorial/graph_matching.html b/source/Tutorial/graph_matching.html
index c3579a667771b0dfadac458749702ab6e0c347f1..6caaa3a76d1b261b92950602175b69415ab40edc 100644
--- a/source/Tutorial/graph_matching.html
+++ b/source/Tutorial/graph_matching.html
@@ -8,7 +8,7 @@
     <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
 
-    <title>Graph matching and manipulation with Aidge &#8212; Eclipse Aidge  documentation</title>
+    <title>Graph matching and manipulation &#8212; Eclipse Aidge  documentation</title>
   
   
   
@@ -60,10 +60,10 @@
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
     <link rel="next" title="Understanding Aidge’s scheduling" href="scheduling.html" />
-    <link rel="prev" title="Database MNIST" href="database.html" />
+    <link rel="prev" title="Data provider tutorial" href="database.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="current nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1 current active"><a class="current reference internal" href="#">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -392,7 +398,7 @@
     
     <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
     
-    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Graph matching and manipulation with Aidge</span></li>
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Graph matching and manipulation</span></li>
   </ul>
 </nav>
 </div>
@@ -409,8 +415,8 @@
 <div id="searchbox"></div>
                 <article class="bd-article">
                   
-  <section id="Graph-matching-and-manipulation-with-Aidge">
-<h1>Graph matching and manipulation with Aidge<a class="headerlink" href="#Graph-matching-and-manipulation-with-Aidge" title="Link to this heading">#</a></h1>
+  <section id="Graph-matching-and-manipulation">
+<h1>Graph matching and manipulation<a class="headerlink" href="#Graph-matching-and-manipulation" title="Link to this heading">#</a></h1>
 <p>Aidge introduces a simple and efficient DSL for graph matching, sometimes referred to as ‘graph regex.’ It allows for the creation of complex textual queries to find a quantified or unquantified set of nodes with specific types, attributes, and/or relationships between them. This is particularly useful for implementing sophisticated pattern-matching heuristics with minimal effort!</p>
 <div class="nbinput nblast docutils container">
 <div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[71]:
@@ -1258,7 +1264,7 @@ Replaced 5 (out of 5) matching sub-graph with meta operators
       <i class="fa-solid fa-angle-left"></i>
       <div class="prev-next-info">
         <p class="prev-next-subtitle">previous</p>
-        <p class="prev-next-title">Database MNIST</p>
+        <p class="prev-next-title">Data provider tutorial</p>
       </div>
     </a>
     <a class="right-next"
diff --git a/source/Tutorial/graph_matching.ipynb b/source/Tutorial/graph_matching.ipynb
index 369f7a3b20967ad666e8a650aeeca0d99b7bf0fd..db1324b6319adf2d5bee5ac361c09d8605002490 100644
--- a/source/Tutorial/graph_matching.ipynb
+++ b/source/Tutorial/graph_matching.ipynb
@@ -4,7 +4,7 @@
    "cell_type": "markdown",
    "metadata": {},
    "source": [
-    "# Graph matching and manipulation with Aidge\n",
+    "# Graph matching and manipulation\n",
     "\n",
     "Aidge introduces a simple and efficient DSL for graph matching, sometimes referred to as 'graph regex.' It allows for the creation of complex textual queries to find a quantified or unquantified set of nodes with specific types, attributes, and/or relationships between them. This is particularly useful for implementing sophisticated pattern-matching heuristics with minimal effort!"
    ]
@@ -996,7 +996,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "aidge",
    "language": "python",
    "name": "python3"
   },
@@ -1010,7 +1010,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.10.12"
+   "version": "3.12.6"
   }
  },
  "nbformat": 4,
diff --git a/source/Tutorial/index.html b/source/Tutorial/index.html
index 3b26822ae094b898fc7dfb1bb5440413d0bc9afe..7cdae6d0f7810d767b1b41007e821663692e65e4 100644
--- a/source/Tutorial/index.html
+++ b/source/Tutorial/index.html
@@ -63,7 +63,7 @@
     <link rel="prev" title="Learn on edge" href="../UserGuide/learnEdge.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -408,62 +414,58 @@
                   
   <section id="tutorials">
 <h1>Tutorials<a class="headerlink" href="#tutorials" title="Link to this heading">#</a></h1>
-<section id="aidge-101">
-<h2>Aidge 101<a class="headerlink" href="#aidge-101" title="Link to this heading">#</a></h2>
+<p>If you encounter any difficulty with the Tutorials, please create an issue <a class="reference external" href="https://gitlab.eclipse.org/groups/eclipse/aidge/-/issues">here</a>.</p>
 <p>To get started with Aidge, please follow the Aidge demonstration tutorial.
 This tutorial demonstrates the basic features of the Aidge Framework, importing an ONNX, transforming a neural network graph, performing inference and a cpp export.</p>
 <div class="toctree-wrapper compound">
 <div class="nbsphinx-gallery">
 <a class="reference internal" href="101_first_step.html">
-  <div><img alt="" src="../../_static/nbsphinx-no-thumbnail.svg"></div>
+  <div><img alt="" src="../../_static/Tuto101.PNG"></div>
   <div>Aidge demonstration</div>
 </a>
 </div>
 </div>
-</section>
-<section id="aidge-dnn-fonctionnalities">
-<h2>Aidge DNN fonctionnalities<a class="headerlink" href="#aidge-dnn-fonctionnalities" title="Link to this heading">#</a></h2>
-<ul class="simple">
-<li><p>Manipulating databases and creating batches of data</p></li>
-<li><p>Train a Deep Neural Network</p></li>
-<li><p>Provide an operator implementation using Python or meta-operators</p></li>
-<li><p>Perform advanced graph matching with the Graph Regular Expression tool</p></li>
-</ul>
+<section id="aidge-functionalities">
+<h2>🛠 Aidge functionalities<a class="headerlink" href="#aidge-functionalities" title="Link to this heading">#</a></h2>
 <div class="toctree-wrapper compound">
 <div class="nbsphinx-gallery">
 <a class="reference internal" href="database.html">
-  <div><img alt="" src="../../_images/MnistExamples.png"></div>
-  <div>Database MNIST</div>
+  <div><img alt="" src="../../_static/TutoDatabase.PNG"></div>
+  <div>Data provider tutorial</div>
 </a>
 <a class="reference internal" href="graph_matching.html">
-  <div><img alt="" src="../../_static/nbsphinx-no-thumbnail.svg"></div>
-  <div>Graph matching and manipulation with Aidge</div>
+  <div><img alt="" src="../../_static/TutoGraphMatching.PNG"></div>
+  <div>Graph matching and manipulation</div>
 </a>
 <a class="reference internal" href="scheduling.html">
-  <div><img alt="" src="../../_static/nbsphinx-no-thumbnail.svg"></div>
+  <div><img alt="" src="../../_static/TutoScheduling.PNG"></div>
   <div>Understanding Aidge’s scheduling</div>
 </a>
 <a class="reference internal" href="learning.html">
-  <div><img alt="" src="../../_images/Logotype-aidge.png"></div>
+  <div><img alt="" src="../../_static/TutoLearning.PNG"></div>
   <div>Training a simple Neural Network</div>
 </a>
 <a class="reference internal" href="ONNX.html">
-  <div><img alt="" src="../../_images/Logotype-aidge.png"></div>
+  <div><img alt="" src="../../_static/TutoONNX.PNG"></div>
   <div>Aidge ONNX tutorial</div>
 </a>
+<a class="reference internal" href="static_analysis.html"None>
+  <div><img alt="" src="../../_images/Logotype-aidge.png"></div>
+  <div>Perform static analysis on a neural network model</div>
+</a>
+<a class="reference internal" href="backend_cuda.html">
+  <div><img alt="" src="../../_images/Logotype-aidge.png"></div>
+  <div>Backend CUDA example</div>
+</a>
 </div>
 </div>
 </section>
-<section id="dnn-optimization">
-<h2>DNN Optimization<a class="headerlink" href="#dnn-optimization" title="Link to this heading">#</a></h2>
-<ul class="simple">
-<li><p>Perform post Training Quantization</p></li>
-<li><p>Perform Convolution tiling</p></li>
-</ul>
+<section id="optimization-tutorials">
+<h2>⚙️ Optimization tutorials<a class="headerlink" href="#optimization-tutorials" title="Link to this heading">#</a></h2>
 <div class="toctree-wrapper compound">
 <div class="nbsphinx-gallery">
 <a class="reference internal" href="ptq.html"None>
-  <div><img alt="" src="../../_images/ptq_diagram.png"></div>
+  <div><img alt="" src="../../_static/TutoPTQ.png"></div>
   <div>Post Training Quantization with AIDGE</div>
 </a>
 <a class="reference internal" href="tiling.html">
@@ -473,28 +475,32 @@ This tutorial demonstrates the basic features of the Aidge Framework, importing
 </div>
 </div>
 </section>
-<section id="dnn-export">
-<h2>DNN export<a class="headerlink" href="#dnn-export" title="Link to this heading">#</a></h2>
+<section id="export-tutorials">
+<h2>🚀 Export tutorials<a class="headerlink" href="#export-tutorials" title="Link to this heading">#</a></h2>
 <div class="toctree-wrapper compound">
 <div class="nbsphinx-gallery">
 <a class="reference internal" href="export_cpp.html">
-  <div><img alt="" src="../../_images/Logotype-aidge.png"></div>
-  <div>Export a MNIST model to a CPP standalone project</div>
+  <div><img alt="" src="../../_static/TutoExport101.PNG"></div>
+  <div>Export 101</div>
+</a>
+<a class="reference internal" href="export_cpp_quant.html">
+  <div><img alt="" src="../../_static/TutoExportCpp.PNG"></div>
+  <div>Quantized model C++ export</div>
+</a>
+<a class="reference internal" href="export_cpp_add_impl.html">
+  <div><img alt="" src="../../_static/TutoExportCpp.PNG"></div>
+  <div>Add a custom operator to the C++ export</div>
+</a>
+<a class="reference internal" href="export_trt.html">
+  <div><img alt="" src="../../_static/TutoExportTRT.PNG"></div>
+  <div>TensorRT export</div>
+</a>
+<a class="reference internal" href="export_stm32.html">
+  <div><img alt="" src="../../_static/TutoExportSTM32.PNG"></div>
+  <div>STM32 export</div>
 </a>
 </div>
 </div>
-<ul class="simple">
-<li><p><a class="reference external" href="https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/export/aidge_to_cpp/add_custom_operator/add_custom_operator.ipynb?ref_type=heads">Exercise on adding a custom implementation for a cpp export</a></p></li>
-<li><p><a class="reference external" href="https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/TRT_Quantization_tutorial/tuto.ipynb?ref_type=heads">Export your DNN with TensorRT</a></p></li>
-<li><p><a class="reference external" href="https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/export/aidge_to_STM32/export_LeNet/export_lenet_fp32.ipynb?ref_type=heads">Export your DNN for an STM32</a></p></li>
-</ul>
-</section>
-<section id="tutorial-on-adding-the-c-aidge">
-<h2>Tutorial on adding the C++ Aidge<a class="headerlink" href="#tutorial-on-adding-the-c-aidge" title="Link to this heading">#</a></h2>
-<p>You can extend our operator coverage by adding an operator and its implementation in the C++ Aidge library.
-The <a class="reference external" href="https://gitlab.eclipse.org/eclipse/aidge/aidge/-/blob/main/examples/tutorials/Hardmax_operator/operator_adding.ipynb?ref_type=heads">Add an operator and its implementation Tutorial</a> details the steps to follow.</p>
-<p>For more information on contributing to Aidge, please refer to the <a class="reference external" href="https://gitlab.eclipse.org/groups/eclipse/aidge/-/wikis/Contributing">wiki</a>.</p>
-<p>If you encounter any difficulty with the Tutorials, please create an issue <a class="reference external" href="https://gitlab.eclipse.org/groups/eclipse/aidge/-/issues">here</a>.</p>
 </section>
 </section>
 
@@ -545,11 +551,9 @@ The <a class="reference external" href="https://gitlab.eclipse.org/eclipse/aidge
   </div>
   <nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
     <ul class="visible nav section-nav flex-column">
-<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge-101">Aidge 101</a></li>
-<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge-dnn-fonctionnalities">Aidge DNN fonctionnalities</a></li>
-<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#dnn-optimization">DNN Optimization</a></li>
-<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#dnn-export">DNN export</a></li>
-<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#tutorial-on-adding-the-c-aidge">Tutorial on adding the C++ Aidge</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#aidge-functionalities">🛠 Aidge functionalities</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#optimization-tutorials">⚙️ Optimization tutorials</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#export-tutorials">🚀 Export tutorials</a></li>
 </ul>
   </nav></div>
 
diff --git a/source/Tutorial/learning.html b/source/Tutorial/learning.html
index d8e2677faf1b65ad45a8431079ba23faebd9a3d6..f83c26f32c7442cec9f5171db8f1e46fc4ca9a3e 100644
--- a/source/Tutorial/learning.html
+++ b/source/Tutorial/learning.html
@@ -63,7 +63,7 @@
     <link rel="prev" title="Understanding Aidge’s scheduling" href="scheduling.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="current nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1 current active"><a class="current reference internal" href="#">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -436,13 +442,13 @@
 Looking in indexes: https://pypi.org/simple, https://download.pytorch.org/whl/cpu
 Collecting torchvision==0.14.1+cpu
   Downloading https://download.pytorch.org/whl/cpu/torchvision-0.14.1%2Bcpu-cp310-cp310-linux_x86_64.whl (16.8 MB)
-     <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">16.8/16.8 MB</span> <span class="ansi-red-fg">86.9 MB/s</span> eta <span class="ansi-cyan-fg">0:00:00</span>
+     <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">16.8/16.8 MB</span> <span class="ansi-red-fg">27.7 MB/s</span> eta <span class="ansi-cyan-fg">0:00:00</span>
 Requirement already satisfied: typing-extensions in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (4.13.2)
-Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (2.2.5)
+Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (2.2.6)
 Requirement already satisfied: requests in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (2.32.3)
 Collecting torch==1.13.1 (from torchvision==0.14.1+cpu)
   Downloading https://download.pytorch.org/whl/cpu/torch-1.13.1%2Bcpu-cp310-cp310-linux_x86_64.whl (199.1 MB)
-     <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">199.1/199.1 MB</span> <span class="ansi-red-fg">78.4 MB/s</span> eta <span class="ansi-cyan-fg">0:00:00</span>
+     <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">199.1/199.1 MB</span> <span class="ansi-red-fg">40.5 MB/s</span> eta <span class="ansi-cyan-fg">0:00:00</span>
 Requirement already satisfied: pillow!=8.3.*,&gt;=5.3.0 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (11.2.1)
 Requirement already satisfied: charset-normalizer&lt;4,&gt;=2 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests-&gt;torchvision==0.14.1+cpu) (3.4.2)
 Requirement already satisfied: idna&lt;4,&gt;=2.5 in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from requests-&gt;torchvision==0.14.1+cpu) (3.10)
@@ -458,12 +464,12 @@ Successfully installed torch-1.13.1+cpu torchvision-0.14.1+cpu
 Collecting numpy==1.24.1
   Downloading numpy-1.24.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (5.6 kB)
 Downloading numpy-1.24.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.3 MB)
-   <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">17.3/17.3 MB</span> <span class="ansi-red-fg">62.8 MB/s</span> eta <span class="ansi-cyan-fg">0:00:00</span>
+   <span class="ansi-black-intense-fg">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span class="ansi-green-fg">17.3/17.3 MB</span> <span class="ansi-red-fg">36.4 MB/s</span> eta <span class="ansi-cyan-fg">0:00:00</span>
 Installing collected packages: numpy
   Attempting uninstall: numpy
-    Found existing installation: numpy 2.2.5
-    Uninstalling numpy-2.2.5:
-      Successfully uninstalled numpy-2.2.5
+    Found existing installation: numpy 2.2.6
+    Uninstalling numpy-2.2.6:
+      Successfully uninstalled numpy-2.2.6
 Successfully installed numpy-1.24.1
 </pre></div></div>
 </div>
@@ -616,10 +622,8 @@ Downloading https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz to ./data/ci
 <div class="nboutput docutils container">
 <div class="prompt empty docutils container">
 </div>
-<div class="output_area stderr docutils container">
-<div class="highlight"><pre>
-100.0%
-</pre></div></div>
+<div class="output_area docutils container">
+<script type="application/vnd.jupyter.widget-view+json">{"version_major": 2, "version_minor": 0, "model_id": "46f1f30f18c74f3898f963f6d97d8fa3"}</script></div>
 </div>
 <div class="nboutput nblast docutils container">
 <div class="prompt empty docutils container">
@@ -688,15 +692,17 @@ Extracting ./data/cifar-10-python.tar.gz to ./data
 </div>
 <div class="output_area docutils container">
 <div class="highlight"><pre>
-Nb samples 64, loss: 0.405445396900177, acc:10.9375%, tot_acc:10.9375%
-Nb samples 128, loss: 0.2865900695323944, acc:10.9375%, tot_acc:10.9375%
-Nb samples 192, loss: 0.31530556082725525, acc:12.5%, tot_acc:11.458333333333332%
-Nb samples 256, loss: 0.3035673499107361, acc:4.6875%, tot_acc:9.765625%
-Nb samples 320, loss: 0.30495578050613403, acc:4.6875%, tot_acc:8.75%
-Nb samples 384, loss: 0.2815946638584137, acc:3.125%, tot_acc:7.8125%
+Nb samples 64, loss: 0.7916586995124817, acc:10.9375%, tot_acc:10.9375%
+Nb samples 128, loss: 0.5616523027420044, acc:14.0625%, tot_acc:12.5%
+Nb samples 192, loss: 0.486709862947464, acc:10.9375%, tot_acc:11.979166666666668%
+Nb samples 256, loss: 0.3463484048843384, acc:20.3125%, tot_acc:14.0625%
+Nb samples 320, loss: 0.33549389243125916, acc:15.625%, tot_acc:14.374999999999998%
+Nb samples 384, loss: 0.30594590306282043, acc:14.0625%, tot_acc:14.322916666666666%
 </pre></div></div>
 </div>
-</section>
+<script type="application/vnd.jupyter.widget-state+json">
+{"state": {"9fb71728ae31481d80d3a4b979d8e1c7": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "2491af5fadf045c8a8d93dab89974074": {"model_name": "ProgressStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "38e9b6c3bbf14c0abcdcd2ceb93ae8ed": {"model_name": "FloatProgressModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_9fb71728ae31481d80d3a4b979d8e1c7", "max": 170498071.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_2491af5fadf045c8a8d93dab89974074", "tabbable": null, "tooltip": null, "value": 170498071.0}}, "8159bacfc6b74a7b8d3ca31f141e1404": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "d36587a875e24a339c4904295b025c44": {"model_name": "HTMLStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "bd94b410fc0b452a963050fb3a9b8933": {"model_name": "HTMLModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_8159bacfc6b74a7b8d3ca31f141e1404", "placeholder": "\u200b", "style": "IPY_MODEL_d36587a875e24a339c4904295b025c44", "tabbable": null, "tooltip": null, "value": "100%"}}, "70dcc171600449b1b375c4aaadf48c3f": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "cb90c09d2a684bf3aab409da80db50c9": {"model_name": "HTMLStyleModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "be8361db28de442ab6134a256a194256": {"model_name": "HTMLModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_70dcc171600449b1b375c4aaadf48c3f", "placeholder": "\u200b", "style": "IPY_MODEL_cb90c09d2a684bf3aab409da80db50c9", "tabbable": null, "tooltip": null, "value": "\u2007170498071/170498071\u2007[00:14&lt;00:00,\u200711955634.76it/s]"}}, "aa79a65570e74e93ae79ee5582c6c08f": {"model_name": "LayoutModel", "model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "46f1f30f18c74f3898f963f6d97d8fa3": {"model_name": "HBoxModel", "model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_bd94b410fc0b452a963050fb3a9b8933", "IPY_MODEL_38e9b6c3bbf14c0abcdcd2ceb93ae8ed", "IPY_MODEL_be8361db28de442ab6134a256a194256"], "layout": "IPY_MODEL_aa79a65570e74e93ae79ee5582c6c08f", "tabbable": null, "tooltip": null}}}, "version_major": 2, "version_minor": 0}
+</script></section>
 </section>
 
 
diff --git a/source/Tutorial/learning.ipynb b/source/Tutorial/learning.ipynb
index a58fb737b27bff2326368104cd340982e3f1f887..3b352b92d9e373ec98e778985b7502bde416e541 100644
--- a/source/Tutorial/learning.ipynb
+++ b/source/Tutorial/learning.ipynb
@@ -21,10 +21,10 @@
    "execution_count": 1,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:21:51.549580Z",
-     "iopub.status.busy": "2025-05-11T15:21:51.549481Z",
-     "iopub.status.idle": "2025-05-11T15:22:02.698888Z",
-     "shell.execute_reply": "2025-05-11T15:22:02.698378Z"
+     "iopub.execute_input": "2025-05-19T10:05:28.434457Z",
+     "iopub.status.busy": "2025-05-19T10:05:28.434307Z",
+     "iopub.status.idle": "2025-05-19T10:05:43.303069Z",
+     "shell.execute_reply": "2025-05-19T10:05:43.302562Z"
     }
    },
    "outputs": [
@@ -39,15 +39,17 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "Collecting torchvision==0.14.1+cpu\r\n"
+      "Collecting torchvision==0.14.1+cpu\r\n",
+      "  Downloading https://download.pytorch.org/whl/cpu/torchvision-0.14.1%2Bcpu-cp310-cp310-linux_x86_64.whl (16.8 MB)\r\n",
+      "\u001b[?25l     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/16.8 MB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m"
      ]
     },
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "  Downloading https://download.pytorch.org/whl/cpu/torchvision-0.14.1%2Bcpu-cp310-cp310-linux_x86_64.whl (16.8 MB)\r\n",
-      "\u001b[?25l     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/16.8 MB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m"
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.2/16.8 MB\u001b[0m \u001b[31m25.7 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
@@ -55,16 +57,17 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m16.8/16.8 MB\u001b[0m \u001b[31m86.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n",
-      "\u001b[?25h"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━\u001b[0m \u001b[32m10.2/16.8 MB\u001b[0m \u001b[31m25.6 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "Requirement already satisfied: typing-extensions in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (4.13.2)\r\n",
-      "Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (2.2.5)\r\n",
+      "\r",
+      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m16.8/16.8 MB\u001b[0m \u001b[31m27.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n",
+      "\u001b[?25hRequirement already satisfied: typing-extensions in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (4.13.2)\r\n",
+      "Requirement already satisfied: numpy in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (2.2.6)\r\n",
       "Requirement already satisfied: requests in /builds/eclipse/aidge/aidge/venv/lib/python3.10/site-packages (from torchvision==0.14.1+cpu) (2.32.3)\r\n"
      ]
     },
@@ -72,7 +75,13 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "Collecting torch==1.13.1 (from torchvision==0.14.1+cpu)\r\n",
+      "Collecting torch==1.13.1 (from torchvision==0.14.1+cpu)\r\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
       "  Downloading https://download.pytorch.org/whl/cpu/torch-1.13.1%2Bcpu-cp310-cp310-linux_x86_64.whl (199.1 MB)\r\n",
       "\u001b[?25l     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/199.1 MB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m"
      ]
@@ -82,7 +91,103 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m19.4/199.1 MB\u001b[0m \u001b[31m98.9 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
+      "\u001b[2K     \u001b[91m━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m7.9/199.1 MB\u001b[0m \u001b[31m38.7 MB/s\u001b[0m eta \u001b[36m0:00:05\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m18.9/199.1 MB\u001b[0m \u001b[31m46.8 MB/s\u001b[0m eta \u001b[36m0:00:04\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m29.9/199.1 MB\u001b[0m \u001b[31m49.6 MB/s\u001b[0m eta \u001b[36m0:00:04\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m38.3/199.1 MB\u001b[0m \u001b[31m47.6 MB/s\u001b[0m eta \u001b[36m0:00:04\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m46.4/199.1 MB\u001b[0m \u001b[31m46.3 MB/s\u001b[0m eta \u001b[36m0:00:04\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m55.6/199.1 MB\u001b[0m \u001b[31m46.1 MB/s\u001b[0m eta \u001b[36m0:00:04\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m62.9/199.1 MB\u001b[0m \u001b[31m44.8 MB/s\u001b[0m eta \u001b[36m0:00:04\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m71.0/199.1 MB\u001b[0m \u001b[31m44.1 MB/s\u001b[0m eta \u001b[36m0:00:03\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m78.6/199.1 MB\u001b[0m \u001b[31m43.5 MB/s\u001b[0m eta \u001b[36m0:00:03\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m88.9/199.1 MB\u001b[0m \u001b[31m44.2 MB/s\u001b[0m eta \u001b[36m0:00:03\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m96.2/199.1 MB\u001b[0m \u001b[31m43.5 MB/s\u001b[0m eta \u001b[36m0:00:03\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m104.9/199.1 MB\u001b[0m \u001b[31m43.4 MB/s\u001b[0m eta \u001b[36m0:00:03\u001b[0m"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m111.1/199.1 MB\u001b[0m \u001b[31m42.6 MB/s\u001b[0m eta \u001b[36m0:00:03\u001b[0m"
      ]
     },
     {
@@ -90,7 +195,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m39.1/199.1 MB\u001b[0m \u001b[31m98.0 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━\u001b[0m \u001b[32m119.3/199.1 MB\u001b[0m \u001b[31m42.4 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
      ]
     },
     {
@@ -98,7 +203,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m58.2/199.1 MB\u001b[0m \u001b[31m97.9 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━\u001b[0m \u001b[32m129.5/199.1 MB\u001b[0m \u001b[31m43.1 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
      ]
     },
     {
@@ -106,7 +211,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m79.2/199.1 MB\u001b[0m \u001b[31m99.4 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━\u001b[0m \u001b[32m136.6/199.1 MB\u001b[0m \u001b[31m42.4 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
      ]
     },
     {
@@ -114,7 +219,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m95.9/199.1 MB\u001b[0m \u001b[31m95.8 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━\u001b[0m \u001b[32m145.0/199.1 MB\u001b[0m \u001b[31m42.4 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
      ]
     },
     {
@@ -122,7 +227,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m113.0/199.1 MB\u001b[0m \u001b[31m94.2 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━\u001b[0m \u001b[32m152.6/199.1 MB\u001b[0m \u001b[31m42.2 MB/s\u001b[0m eta \u001b[36m0:00:02\u001b[0m"
      ]
     },
     {
@@ -130,7 +235,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━\u001b[0m \u001b[32m127.7/199.1 MB\u001b[0m \u001b[31m90.9 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━\u001b[0m \u001b[32m161.2/199.1 MB\u001b[0m \u001b[31m42.2 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
@@ -138,7 +243,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━\u001b[0m \u001b[32m146.3/199.1 MB\u001b[0m \u001b[31m91.3 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━\u001b[0m \u001b[32m170.1/199.1 MB\u001b[0m \u001b[31m42.3 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
@@ -146,7 +251,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━\u001b[0m \u001b[32m159.1/199.1 MB\u001b[0m \u001b[31m91.4 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━\u001b[0m \u001b[32m178.8/199.1 MB\u001b[0m \u001b[31m42.3 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
@@ -154,7 +259,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━\u001b[0m \u001b[32m167.0/199.1 MB\u001b[0m \u001b[31m83.2 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━\u001b[0m \u001b[32m186.9/199.1 MB\u001b[0m \u001b[31m42.2 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
@@ -162,7 +267,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━\u001b[0m \u001b[32m182.2/199.1 MB\u001b[0m \u001b[31m82.5 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m \u001b[32m194.5/199.1 MB\u001b[0m \u001b[31m42.0 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
@@ -170,7 +275,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m \u001b[32m199.0/199.1 MB\u001b[0m \u001b[31m84.6 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
+      "\u001b[2K     \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m \u001b[32m199.0/199.1 MB\u001b[0m \u001b[31m42.3 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
@@ -178,7 +283,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m199.1/199.1 MB\u001b[0m \u001b[31m78.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n",
+      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m199.1/199.1 MB\u001b[0m \u001b[31m40.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n",
       "\u001b[?25h"
      ]
     },
@@ -422,6 +527,22 @@
       "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0/2\u001b[0m [torch]"
      ]
     },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0/2\u001b[0m [torch]"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "\u001b[2K   \u001b[91m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[90m╺\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1/2\u001b[0m [torchvision]"
+     ]
+    },
     {
      "name": "stdout",
      "output_type": "stream",
@@ -461,7 +582,7 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K   \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━\u001b[0m \u001b[32m12.1/17.3 MB\u001b[0m \u001b[31m70.1 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
+      "\u001b[2K   \u001b[91m━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m6.0/17.3 MB\u001b[0m \u001b[31m33.6 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
@@ -469,25 +590,27 @@
      "output_type": "stream",
      "text": [
       "\r",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m17.3/17.3 MB\u001b[0m \u001b[31m62.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n",
-      "\u001b[?25h"
+      "\u001b[2K   \u001b[91m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[91m╸\u001b[0m\u001b[90m━━━━━\u001b[0m \u001b[32m14.9/17.3 MB\u001b[0m \u001b[31m39.1 MB/s\u001b[0m eta \u001b[36m0:00:01\u001b[0m"
      ]
     },
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "Installing collected packages: numpy\r\n",
-      "  Attempting uninstall: numpy\r\n",
-      "    Found existing installation: numpy 2.2.5\r\n"
+      "\r",
+      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m17.3/17.3 MB\u001b[0m \u001b[31m36.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n",
+      "\u001b[?25h"
      ]
     },
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "    Uninstalling numpy-2.2.5:\r\n",
-      "      Successfully uninstalled numpy-2.2.5\r\n"
+      "Installing collected packages: numpy\r\n",
+      "  Attempting uninstall: numpy\r\n",
+      "    Found existing installation: numpy 2.2.6\r\n",
+      "    Uninstalling numpy-2.2.6:\r\n",
+      "      Successfully uninstalled numpy-2.2.6\r\n"
      ]
     },
     {
@@ -515,10 +638,10 @@
    "execution_count": 2,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:02.700470Z",
-     "iopub.status.busy": "2025-05-11T15:22:02.700367Z",
-     "iopub.status.idle": "2025-05-11T15:22:02.702275Z",
-     "shell.execute_reply": "2025-05-11T15:22:02.702006Z"
+     "iopub.execute_input": "2025-05-19T10:05:43.304935Z",
+     "iopub.status.busy": "2025-05-19T10:05:43.304745Z",
+     "iopub.status.idle": "2025-05-19T10:05:43.306869Z",
+     "shell.execute_reply": "2025-05-19T10:05:43.306589Z"
     }
    },
    "outputs": [],
@@ -539,10 +662,10 @@
    "execution_count": 3,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:02.703219Z",
-     "iopub.status.busy": "2025-05-11T15:22:02.703064Z",
-     "iopub.status.idle": "2025-05-11T15:22:03.341263Z",
-     "shell.execute_reply": "2025-05-11T15:22:03.340837Z"
+     "iopub.execute_input": "2025-05-19T10:05:43.308116Z",
+     "iopub.status.busy": "2025-05-19T10:05:43.307876Z",
+     "iopub.status.idle": "2025-05-19T10:05:44.114869Z",
+     "shell.execute_reply": "2025-05-19T10:05:44.114503Z"
     }
    },
    "outputs": [],
@@ -576,10 +699,10 @@
    "execution_count": 4,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:03.343028Z",
-     "iopub.status.busy": "2025-05-11T15:22:03.342895Z",
-     "iopub.status.idle": "2025-05-11T15:22:03.345116Z",
-     "shell.execute_reply": "2025-05-11T15:22:03.344840Z"
+     "iopub.execute_input": "2025-05-19T10:05:44.116525Z",
+     "iopub.status.busy": "2025-05-19T10:05:44.116350Z",
+     "iopub.status.idle": "2025-05-19T10:05:44.118757Z",
+     "shell.execute_reply": "2025-05-19T10:05:44.118481Z"
     }
    },
    "outputs": [],
@@ -609,10 +732,10 @@
    "execution_count": 5,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:03.346028Z",
-     "iopub.status.busy": "2025-05-11T15:22:03.345940Z",
-     "iopub.status.idle": "2025-05-11T15:22:03.377583Z",
-     "shell.execute_reply": "2025-05-11T15:22:03.377244Z"
+     "iopub.execute_input": "2025-05-19T10:05:44.119853Z",
+     "iopub.status.busy": "2025-05-19T10:05:44.119718Z",
+     "iopub.status.idle": "2025-05-19T10:05:44.153961Z",
+     "shell.execute_reply": "2025-05-19T10:05:44.153602Z"
     }
    },
    "outputs": [],
@@ -662,10 +785,10 @@
    "execution_count": 6,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:03.378442Z",
-     "iopub.status.busy": "2025-05-11T15:22:03.378357Z",
-     "iopub.status.idle": "2025-05-11T15:22:03.381105Z",
-     "shell.execute_reply": "2025-05-11T15:22:03.380830Z"
+     "iopub.execute_input": "2025-05-19T10:05:44.155031Z",
+     "iopub.status.busy": "2025-05-19T10:05:44.154907Z",
+     "iopub.status.idle": "2025-05-19T10:05:44.158034Z",
+     "shell.execute_reply": "2025-05-19T10:05:44.157761Z"
     }
    },
    "outputs": [],
@@ -710,10 +833,10 @@
    "execution_count": 7,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:03.381962Z",
-     "iopub.status.busy": "2025-05-11T15:22:03.381873Z",
-     "iopub.status.idle": "2025-05-11T15:22:19.873750Z",
-     "shell.execute_reply": "2025-05-11T15:22:19.873408Z"
+     "iopub.execute_input": "2025-05-19T10:05:44.158928Z",
+     "iopub.status.busy": "2025-05-19T10:05:44.158829Z",
+     "iopub.status.idle": "2025-05-19T10:06:00.923384Z",
+     "shell.execute_reply": "2025-05-19T10:06:00.922949Z"
     }
    },
    "outputs": [
@@ -725,41777 +848,152 @@
      ]
     },
     {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.1%"
-     ]
+     "data": {
+      "application/vnd.jupyter.widget-view+json": {
+       "model_id": "46f1f30f18c74f3898f963f6d97d8fa3",
+       "version_major": 2,
+       "version_minor": 0
+      },
+      "text/plain": [
+       "  0%|          | 0/170498071 [00:00<?, ?it/s]"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
     },
     {
-     "name": "stderr",
+     "name": "stdout",
      "output_type": "stream",
      "text": [
-      "\r",
-      "0.2%"
+      "Extracting ./data/cifar-10-python.tar.gz to ./data\n"
      ]
-    },
+    }
+   ],
+   "source": [
+    "aidge_database = aidge_cifar10()\n",
+    "BATCH_SIZE = 64\n",
+    "aidge_dataprovider = aidge_core.DataProvider(aidge_database,\n",
+    "                                             backend=BACKEND,\n",
+    "                                             batch_size=BATCH_SIZE,\n",
+    "                                             shuffle=True,\n",
+    "                                             drop_last=True)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Set up learning objects\n",
+    "\n",
+    "We now have all the basic elements required to run the leanring. We just need to setup the object specific to the learning and we will be able to write our first training loop !\n",
+    "\n",
+    "For propagation and backpropagation, Aidge use scheduler object, we will use the ``SequentialScheduler``.\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:00.925258Z",
+     "iopub.status.busy": "2025-05-19T10:06:00.925143Z",
+     "iopub.status.idle": "2025-05-19T10:06:00.927202Z",
+     "shell.execute_reply": "2025-05-19T10:06:00.926925Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# Set object for learning\n",
+    "scheduler = aidge_core.SequentialScheduler(model)\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "To update weights, we will use an optimizer, in this case SGD."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:00.928446Z",
+     "iopub.status.busy": "2025-05-19T10:06:00.928328Z",
+     "iopub.status.idle": "2025-05-19T10:06:00.930274Z",
+     "shell.execute_reply": "2025-05-19T10:06:00.930008Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# setup optimizer\n",
+    "opt = aidge_learning.SGD()\n",
+    "learning_rates = aidge_learning.constant_lr(0.01)\n",
+    "opt.set_learning_rate_scheduler(learning_rates)\n",
+    "opt.set_parameters(list(aidge_core.producers(model)))"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Training loop "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:00.931138Z",
+     "iopub.status.busy": "2025-05-19T10:06:00.931028Z",
+     "iopub.status.idle": "2025-05-19T10:06:04.523052Z",
+     "shell.execute_reply": "2025-05-19T10:06:04.522775Z"
+    }
+   },
+   "outputs": [
     {
-     "name": "stderr",
+     "name": "stdout",
      "output_type": "stream",
      "text": [
-      "\r",
-      "0.2%"
+      "Nb samples 64, loss: 0.7916586995124817, acc:10.9375%, tot_acc:10.9375%\n"
      ]
     },
     {
-     "name": "stderr",
+     "name": "stdout",
      "output_type": "stream",
      "text": [
-      "\r",
-      "0.2%"
+      "Nb samples 128, loss: 0.5616523027420044, acc:14.0625%, tot_acc:12.5%\n"
      ]
     },
     {
-     "name": "stderr",
+     "name": "stdout",
      "output_type": "stream",
      "text": [
-      "\r",
-      "0.2%"
+      "Nb samples 192, loss: 0.486709862947464, acc:10.9375%, tot_acc:11.979166666666668%\n"
      ]
     },
     {
-     "name": "stderr",
+     "name": "stdout",
      "output_type": "stream",
      "text": [
-      "\r",
-      "0.2%"
+      "Nb samples 256, loss: 0.3463484048843384, acc:20.3125%, tot_acc:14.0625%\n"
      ]
     },
     {
-     "name": "stderr",
+     "name": "stdout",
      "output_type": "stream",
      "text": [
-      "\r",
-      "0.2%"
+      "Nb samples 320, loss: 0.33549389243125916, acc:15.625%, tot_acc:14.374999999999998%\n"
      ]
     },
     {
-     "name": "stderr",
+     "name": "stdout",
      "output_type": "stream",
      "text": [
-      "\r",
-      "0.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "0.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "1.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "2.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "3.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "4.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "5.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "6.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "7.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "8.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "9.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "10.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "11.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "12.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "13.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "14.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "15.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "16.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "17.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "18.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "19.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "20.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "21.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "22.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "23.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "24.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "25.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "26.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "27.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "28.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "29.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "30.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "31.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "32.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "33.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "34.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "35.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "36.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "37.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "38.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "39.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "40.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "41.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "42.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "43.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "44.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "45.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "46.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "47.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "48.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "49.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "50.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "51.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "52.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "53.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "54.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "55.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "56.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "57.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "58.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "59.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "60.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "61.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "62.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "63.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "64.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "65.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "66.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "67.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "68.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "69.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "70.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "71.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "72.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "73.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "74.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "75.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "76.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "77.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "78.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "79.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "80.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "81.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "82.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "83.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "84.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "85.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "86.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "87.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "88.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "89.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "90.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "91.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "92.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "93.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "94.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "95.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "96.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "97.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "98.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.1%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.2%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.3%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.4%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.5%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.6%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.7%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.8%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "99.9%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "100.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "100.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "100.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\r",
-      "100.0%"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Extracting ./data/cifar-10-python.tar.gz to ./data\n"
-     ]
-    }
-   ],
-   "source": [
-    "aidge_database = aidge_cifar10()\n",
-    "BATCH_SIZE = 64\n",
-    "aidge_dataprovider = aidge_core.DataProvider(aidge_database,\n",
-    "                                             backend=BACKEND,\n",
-    "                                             batch_size=BATCH_SIZE,\n",
-    "                                             shuffle=True,\n",
-    "                                             drop_last=True)"
-   ]
-  },
-  {
-   "cell_type": "markdown",
-   "metadata": {},
-   "source": [
-    "## Set up learning objects\n",
-    "\n",
-    "We now have all the basic elements required to run the leanring. We just need to setup the object specific to the learning and we will be able to write our first training loop !\n",
-    "\n",
-    "For propagation and backpropagation, Aidge use scheduler object, we will use the ``SequentialScheduler``.\n",
-    "\n"
-   ]
-  },
-  {
-   "cell_type": "code",
-   "execution_count": 8,
-   "metadata": {
-    "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:19.875263Z",
-     "iopub.status.busy": "2025-05-11T15:22:19.875170Z",
-     "iopub.status.idle": "2025-05-11T15:22:19.876930Z",
-     "shell.execute_reply": "2025-05-11T15:22:19.876720Z"
-    }
-   },
-   "outputs": [],
-   "source": [
-    "# Set object for learning\n",
-    "scheduler = aidge_core.SequentialScheduler(model)\n"
-   ]
-  },
-  {
-   "cell_type": "markdown",
-   "metadata": {},
-   "source": [
-    "To update weights, we will use an optimizer, in this case SGD."
-   ]
-  },
-  {
-   "cell_type": "code",
-   "execution_count": 9,
-   "metadata": {
-    "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:19.877774Z",
-     "iopub.status.busy": "2025-05-11T15:22:19.877687Z",
-     "iopub.status.idle": "2025-05-11T15:22:19.879395Z",
-     "shell.execute_reply": "2025-05-11T15:22:19.879192Z"
-    }
-   },
-   "outputs": [],
-   "source": [
-    "# setup optimizer\n",
-    "opt = aidge_learning.SGD()\n",
-    "learning_rates = aidge_learning.constant_lr(0.01)\n",
-    "opt.set_learning_rate_scheduler(learning_rates)\n",
-    "opt.set_parameters(list(aidge_core.producers(model)))"
-   ]
-  },
-  {
-   "cell_type": "markdown",
-   "metadata": {},
-   "source": [
-    "## Training loop "
-   ]
-  },
-  {
-   "cell_type": "code",
-   "execution_count": 10,
-   "metadata": {
-    "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:19.880284Z",
-     "iopub.status.busy": "2025-05-11T15:22:19.880118Z",
-     "iopub.status.idle": "2025-05-11T15:22:23.176254Z",
-     "shell.execute_reply": "2025-05-11T15:22:23.175940Z"
-    }
-   },
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Nb samples 64, loss: 0.405445396900177, acc:10.9375%, tot_acc:10.9375%\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Nb samples 128, loss: 0.2865900695323944, acc:10.9375%, tot_acc:10.9375%\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Nb samples 192, loss: 0.31530556082725525, acc:12.5%, tot_acc:11.458333333333332%\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Nb samples 256, loss: 0.3035673499107361, acc:4.6875%, tot_acc:9.765625%\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Nb samples 320, loss: 0.30495578050613403, acc:4.6875%, tot_acc:8.75%\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Nb samples 384, loss: 0.2815946638584137, acc:3.125%, tot_acc:7.8125%\n"
+      "Nb samples 384, loss: 0.30594590306282043, acc:14.0625%, tot_acc:14.322916666666666%\n"
      ]
     }
    ],
@@ -42524,7 +1022,7 @@
  ],
  "metadata": {
   "kernelspec": {
-   "display_name": "Python 3",
+   "display_name": "aidge",
    "language": "python",
    "name": "python3"
   },
@@ -42539,6 +1037,374 @@
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
    "version": "3.10.12"
+  },
+  "widgets": {
+   "application/vnd.jupyter.widget-state+json": {
+    "state": {
+     "2491af5fadf045c8a8d93dab89974074": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "ProgressStyleModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "ProgressStyleModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "StyleView",
+       "bar_color": null,
+       "description_width": ""
+      }
+     },
+     "38e9b6c3bbf14c0abcdcd2ceb93ae8ed": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "FloatProgressModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "FloatProgressModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "ProgressView",
+       "bar_style": "success",
+       "description": "",
+       "description_allow_html": false,
+       "layout": "IPY_MODEL_9fb71728ae31481d80d3a4b979d8e1c7",
+       "max": 170498071.0,
+       "min": 0.0,
+       "orientation": "horizontal",
+       "style": "IPY_MODEL_2491af5fadf045c8a8d93dab89974074",
+       "tabbable": null,
+       "tooltip": null,
+       "value": 170498071.0
+      }
+     },
+     "46f1f30f18c74f3898f963f6d97d8fa3": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "HBoxModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "HBoxModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "HBoxView",
+       "box_style": "",
+       "children": [
+        "IPY_MODEL_bd94b410fc0b452a963050fb3a9b8933",
+        "IPY_MODEL_38e9b6c3bbf14c0abcdcd2ceb93ae8ed",
+        "IPY_MODEL_be8361db28de442ab6134a256a194256"
+       ],
+       "layout": "IPY_MODEL_aa79a65570e74e93ae79ee5582c6c08f",
+       "tabbable": null,
+       "tooltip": null
+      }
+     },
+     "70dcc171600449b1b375c4aaadf48c3f": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": null,
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": null
+      }
+     },
+     "8159bacfc6b74a7b8d3ca31f141e1404": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": null,
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": null
+      }
+     },
+     "9fb71728ae31481d80d3a4b979d8e1c7": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": null,
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": null
+      }
+     },
+     "aa79a65570e74e93ae79ee5582c6c08f": {
+      "model_module": "@jupyter-widgets/base",
+      "model_module_version": "2.0.0",
+      "model_name": "LayoutModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/base",
+       "_model_module_version": "2.0.0",
+       "_model_name": "LayoutModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "LayoutView",
+       "align_content": null,
+       "align_items": null,
+       "align_self": null,
+       "border_bottom": null,
+       "border_left": null,
+       "border_right": null,
+       "border_top": null,
+       "bottom": null,
+       "display": null,
+       "flex": null,
+       "flex_flow": null,
+       "grid_area": null,
+       "grid_auto_columns": null,
+       "grid_auto_flow": null,
+       "grid_auto_rows": null,
+       "grid_column": null,
+       "grid_gap": null,
+       "grid_row": null,
+       "grid_template_areas": null,
+       "grid_template_columns": null,
+       "grid_template_rows": null,
+       "height": null,
+       "justify_content": null,
+       "justify_items": null,
+       "left": null,
+       "margin": null,
+       "max_height": null,
+       "max_width": null,
+       "min_height": null,
+       "min_width": null,
+       "object_fit": null,
+       "object_position": null,
+       "order": null,
+       "overflow": null,
+       "padding": null,
+       "right": null,
+       "top": null,
+       "visibility": null,
+       "width": null
+      }
+     },
+     "bd94b410fc0b452a963050fb3a9b8933": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "HTMLModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "HTMLModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "HTMLView",
+       "description": "",
+       "description_allow_html": false,
+       "layout": "IPY_MODEL_8159bacfc6b74a7b8d3ca31f141e1404",
+       "placeholder": "​",
+       "style": "IPY_MODEL_d36587a875e24a339c4904295b025c44",
+       "tabbable": null,
+       "tooltip": null,
+       "value": "100%"
+      }
+     },
+     "be8361db28de442ab6134a256a194256": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "HTMLModel",
+      "state": {
+       "_dom_classes": [],
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "HTMLModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/controls",
+       "_view_module_version": "2.0.0",
+       "_view_name": "HTMLView",
+       "description": "",
+       "description_allow_html": false,
+       "layout": "IPY_MODEL_70dcc171600449b1b375c4aaadf48c3f",
+       "placeholder": "​",
+       "style": "IPY_MODEL_cb90c09d2a684bf3aab409da80db50c9",
+       "tabbable": null,
+       "tooltip": null,
+       "value": " 170498071/170498071 [00:14&lt;00:00, 11955634.76it/s]"
+      }
+     },
+     "cb90c09d2a684bf3aab409da80db50c9": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "HTMLStyleModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "HTMLStyleModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "StyleView",
+       "background": null,
+       "description_width": "",
+       "font_size": null,
+       "text_color": null
+      }
+     },
+     "d36587a875e24a339c4904295b025c44": {
+      "model_module": "@jupyter-widgets/controls",
+      "model_module_version": "2.0.0",
+      "model_name": "HTMLStyleModel",
+      "state": {
+       "_model_module": "@jupyter-widgets/controls",
+       "_model_module_version": "2.0.0",
+       "_model_name": "HTMLStyleModel",
+       "_view_count": null,
+       "_view_module": "@jupyter-widgets/base",
+       "_view_module_version": "2.0.0",
+       "_view_name": "StyleView",
+       "background": null,
+       "description_width": "",
+       "font_size": null,
+       "text_color": null
+      }
+     }
+    },
+    "version_major": 2,
+    "version_minor": 0
+   }
   }
  },
  "nbformat": 4,
diff --git a/source/Tutorial/ptq.html b/source/Tutorial/ptq.html
index cb1e4dada39fcd346f4a3521eecbc5be4479e04d..546b81429eee25c0fd96115f63669204ebbf92b1 100644
--- a/source/Tutorial/ptq.html
+++ b/source/Tutorial/ptq.html
@@ -60,10 +60,10 @@
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
     <link rel="next" title="Aidge tiling demonstration" href="tiling.html" />
-    <link rel="prev" title="Aidge ONNX tutorial" href="ONNX.html" />
+    <link rel="prev" title="Backend CUDA example" href="backend_cuda.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="current nav bd-sidenav">
 <li class="toctree-l1 current active"><a class="current reference internal" href="#">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -895,12 +901,12 @@ That&#39;s all folks !
                   
 <div class="prev-next-area">
     <a class="left-prev"
-       href="ONNX.html"
+       href="backend_cuda.html"
        title="previous page">
       <i class="fa-solid fa-angle-left"></i>
       <div class="prev-next-info">
         <p class="prev-next-subtitle">previous</p>
-        <p class="prev-next-title">Aidge ONNX tutorial</p>
+        <p class="prev-next-title">Backend CUDA example</p>
       </div>
     </a>
     <a class="right-next"
diff --git a/source/Tutorial/scheduling.html b/source/Tutorial/scheduling.html
index 6a8a977b30419dda4bb7ab40c736d870a1939d9a..5aa15e1c4d0da86aba9aa6e72c0073a0aa2dc947 100644
--- a/source/Tutorial/scheduling.html
+++ b/source/Tutorial/scheduling.html
@@ -60,10 +60,10 @@
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
     <link rel="next" title="Training a simple Neural Network" href="learning.html" />
-    <link rel="prev" title="Graph matching and manipulation with Aidge" href="graph_matching.html" />
+    <link rel="prev" title="Graph matching and manipulation" href="graph_matching.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="current nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1 current active"><a class="current reference internal" href="#">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -851,7 +857,7 @@ possible.</p>
       <i class="fa-solid fa-angle-left"></i>
       <div class="prev-next-info">
         <p class="prev-next-subtitle">previous</p>
-        <p class="prev-next-title">Graph matching and manipulation with Aidge</p>
+        <p class="prev-next-title">Graph matching and manipulation</p>
       </div>
     </a>
     <a class="right-next"
diff --git a/source/Tutorial/static_analysis.html b/source/Tutorial/static_analysis.html
new file mode 100644
index 0000000000000000000000000000000000000000..665c9ac6137d9cf4aa11b9999f42d61bec7168eb
--- /dev/null
+++ b/source/Tutorial/static_analysis.html
@@ -0,0 +1,969 @@
+
+<!DOCTYPE html>
+
+
+<html lang="en" data-content_root="../../" >
+
+  <head>
+    <meta charset="utf-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
+
+    <title>Perform static analysis on a neural network model &#8212; Eclipse Aidge  documentation</title>
+  
+  
+  
+  <script data-cfasync="false">
+    document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
+    document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
+  </script>
+  <!--
+    this give us a css class that will be invisible only if js is disabled
+  -->
+  <noscript>
+    <style>
+      .pst-js-only { display: none !important; }
+
+    </style>
+  </noscript>
+  
+  <!-- Loaded before other Sphinx assets -->
+  <link href="../../_static/styles/theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+<link href="../../_static/styles/pydata-sphinx-theme.css?digest=8878045cc6db502f8baf" rel="stylesheet" />
+
+    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=8f2a1f02" />
+    <link rel="stylesheet" type="text/css" href="../../_static/graphviz.css?v=4ae1632d" />
+    <link rel="stylesheet" type="text/css" href="../../_static/copybutton.css?v=76b2166b" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sg_gallery.css?v=d2d258e8" />
+    <link rel="stylesheet" type="text/css" href="../../_static/sphinx-design.min.css?v=95c83b7e" />
+    <link rel="stylesheet" type="text/css" href="../../_static/nbsphinx-code-cells.css?v=2aa19091" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/custom.css?v=abb81387" />
+    <link rel="stylesheet" type="text/css" href="../../_static/css/id.css?v=5eddeb79" />
+  
+  <!-- So that users can add custom icons -->
+  <script src="../../_static/scripts/fontawesome.js?digest=8878045cc6db502f8baf"></script>
+  <!-- Pre-loaded scripts that we'll load fully later -->
+  <link rel="preload" as="script" href="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf" />
+<link rel="preload" as="script" href="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf" />
+
+    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
+    <script src="../../_static/doctools.js?v=9bcbadda"></script>
+    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
+    <script src="../../_static/clipboard.min.js?v=a7894cd8"></script>
+    <script src="../../_static/copybutton.js?v=f281be69"></script>
+    <script src="../../_static/design-tabs.js?v=f930bc37"></script>
+    <script src="https://cdn.jsdelivr.net/npm/@jupyter-widgets/html-manager@^1.0.1/dist/embed-amd.js"></script>
+    <script>window.MathJax = {"tex": {"inlineMath": [["$", "$"], ["\\(", "\\)"]], "processEscapes": true}, "options": {"ignoreHtmlClass": "tex2jax_ignore|mathjax_ignore|document", "processHtmlClass": "tex2jax_process|mathjax_process|math|output_area"}}</script>
+    <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
+    <script>DOCUMENTATION_OPTIONS.pagename = 'source/Tutorial/static_analysis';</script>
+    <script src="../../_static/js/mermaid.min.js"></script>
+    <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
+    <link rel="index" title="Index" href="../../genindex.html" />
+    <link rel="search" title="Search" href="../../search.html" />
+    <link rel="next" title="Backend CUDA example" href="backend_cuda.html" />
+    <link rel="prev" title="Aidge ONNX tutorial" href="ONNX.html" />
+  <meta name="viewport" content="width=device-width, initial-scale=1"/>
+  <meta name="docsearch:language" content="en"/>
+  <meta name="docsearch:version" content="0.6.1" />
+  </head>
+  
+  
+  <body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
+
+  
+  
+  <div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
+  
+  <div id="pst-scroll-pixel-helper"></div>
+  
+  <button type="button" class="btn rounded-pill" id="pst-back-to-top">
+    <i class="fa-solid fa-arrow-up"></i>Back to top</button>
+
+  
+  <dialog id="pst-search-dialog">
+    
+<form class="bd-search d-flex align-items-center"
+      action="../../search.html"
+      method="get">
+  <i class="fa-solid fa-magnifying-glass"></i>
+  <input type="search"
+         class="form-control"
+         name="q"
+         placeholder="Search the docs ..."
+         aria-label="Search the docs ..."
+         autocomplete="off"
+         autocorrect="off"
+         autocapitalize="off"
+         spellcheck="false"/>
+  <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
+</form>
+  </dialog>
+
+  <div class="pst-async-banner-revealer d-none">
+  <aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
+</div>
+
+  
+    <header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
+<div class="bd-header__inner bd-page-width">
+  <button class="pst-navbar-icon sidebar-toggle primary-toggle" aria-label="Site navigation">
+    <span class="fa-solid fa-bars"></span>
+  </button>
+  
+  
+  <div class="col-lg-3 navbar-header-items__start">
+    
+      <div class="navbar-item">
+
+  
+    
+  
+
+<a class="navbar-brand logo" href="../../index.html">
+  
+  
+  
+  
+  
+    
+    
+      
+    
+    
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-light" alt=""/>
+    <img src="../../_static/Isotype-aidge.png" class="logo__image only-dark pst-js-only" alt=""/>
+  
+  
+    <p class="title logo__title">Eclipse Aidge</p>
+  
+</a></div>
+    
+  </div>
+  
+  <div class="col-lg-9 navbar-header-items">
+    
+    <div class="me-auto navbar-header-items__center">
+      
+        <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+      
+    </div>
+    
+    
+    <div class="navbar-header-items__end">
+      
+        <div class="navbar-item navbar-persistent--container">
+          
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+        </div>
+      
+      
+        <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+      
+        <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+      
+    </div>
+    
+  </div>
+  
+  
+    <div class="navbar-persistent--mobile">
+
+<button class="btn search-button-field search-button__button pst-js-only" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
+ <i class="fa-solid fa-magnifying-glass"></i>
+ <span class="search-button__default-text">Search</span>
+ <span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
+</button>
+    </div>
+  
+
+  
+    <button class="pst-navbar-icon sidebar-toggle secondary-toggle" aria-label="On this page">
+      <span class="fa-solid fa-outdent"></span>
+    </button>
+  
+</div>
+
+    </header>
+  
+
+  <div class="bd-container">
+    <div class="bd-container__inner bd-page-width">
+      
+      
+      
+      <dialog id="pst-primary-sidebar-modal"></dialog>
+      <div id="pst-primary-sidebar" class="bd-sidebar-primary bd-sidebar">
+        
+
+  
+  <div class="sidebar-header-items sidebar-primary__section">
+    
+    
+      <div class="sidebar-header-items__center">
+        
+          
+          
+            <div class="navbar-item">
+<nav>
+  <ul class="bd-navbar-elements navbar-nav">
+    
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../GetStarted/index.html">
+    Get Started
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../UserGuide/index.html">
+    User Guide
+  </a>
+</li>
+
+
+<li class="nav-item current active">
+  <a class="nav-link nav-internal" href="index.html">
+    Tutorials
+  </a>
+</li>
+
+
+<li class="nav-item ">
+  <a class="nav-link nav-internal" href="../API/index.html">
+    API
+  </a>
+</li>
+
+  </ul>
+</nav></div>
+          
+        
+      </div>
+    
+    
+    
+      <div class="sidebar-header-items__end">
+        
+          <div class="navbar-item">
+
+<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button pst-js-only" aria-label="Color mode" data-bs-title="Color mode"  data-bs-placement="bottom" data-bs-toggle="tooltip">
+  <i class="theme-switch fa-solid fa-sun                fa-lg" data-mode="light" title="Light"></i>
+  <i class="theme-switch fa-solid fa-moon               fa-lg" data-mode="dark"  title="Dark"></i>
+  <i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"  title="System Settings"></i>
+</button></div>
+        
+          <div class="navbar-item"><ul class="navbar-icon-links"
+    aria-label="Icon Links">
+        <li class="nav-item">
+          
+          
+          
+          
+          
+          
+          
+          
+          <a href="https://gitlab.eclipse.org/eclipse/aidge" title="GitLab" class="nav-link pst-navbar-icon" rel="noopener" target="_blank" data-bs-toggle="tooltip" data-bs-placement="bottom"><i class="fab fa-gitlab fa-lg" aria-hidden="true"></i>
+            <span class="sr-only">GitLab</span></a>
+        </li>
+</ul></div>
+        
+      </div>
+    
+  </div>
+  
+    <div class="sidebar-primary-items__start sidebar-primary__section">
+        <div class="sidebar-primary-item">
+<nav class="bd-docs-nav bd-links"
+     aria-label="Section Navigation">
+  <p class="bd-links__title" role="heading" aria-level="1">Section Navigation</p>
+  <div class="bd-toc-item navbar-nav"><ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
+</ul>
+<ul class="current nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
+<li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
+<li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1 current active"><a class="current reference internal" href="#">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
+<li class="toctree-l1"><a class="reference internal" href="tiling.html">Aidge tiling demonstration</a></li>
+</ul>
+<ul class="nav bd-sidenav">
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
+</ul>
+</div>
+</nav></div>
+    </div>
+  
+  
+  <div class="sidebar-primary-items__end sidebar-primary__section">
+      <div class="sidebar-primary-item">
+<div id="ethical-ad-placement"
+      class="flat"
+      data-ea-publisher="readthedocs"
+      data-ea-type="readthedocs-sidebar"
+      data-ea-manual="true">
+</div></div>
+  </div>
+
+
+      </div>
+      
+      <main id="main-content" class="bd-main" role="main">
+        
+        
+          <div class="bd-content">
+            <div class="bd-article-container">
+              
+              <div class="bd-header-article d-print-none">
+<div class="header-article-items header-article__inner">
+  
+    <div class="header-article-items__start">
+      
+        <div class="header-article-item">
+
+<nav aria-label="Breadcrumb" class="d-print-none">
+  <ul class="bd-breadcrumbs">
+    
+    <li class="breadcrumb-item breadcrumb-home">
+      <a href="../../index.html" class="nav-link" aria-label="Home">
+        <i class="fa-solid fa-home"></i>
+      </a>
+    </li>
+    
+    <li class="breadcrumb-item"><a href="index.html" class="nav-link">Tutorials</a></li>
+    
+    <li class="breadcrumb-item active" aria-current="page"><span class="ellipsis">Perform static analysis on a neural network model</span></li>
+  </ul>
+</nav>
+</div>
+      
+    </div>
+  
+  
+</div>
+</div>
+              
+              
+              
+                
+<div id="searchbox"></div>
+                <article class="bd-article">
+                  
+  <section id="Perform-static-analysis-on-a-neural-network-model">
+<h1>Perform static analysis on a neural network model<a class="headerlink" href="#Perform-static-analysis-on-a-neural-network-model" title="Link to this heading">#</a></h1>
+<p>In this tutorial, we employ Aidge’s <code class="docutils literal notranslate"><span class="pre">static</span> <span class="pre">analysis</span></code> module to evaluate the DINOv2 model.</p>
+<section id="Setting-up-the-notebook">
+<h2>Setting up the notebook<a class="headerlink" href="#Setting-up-the-notebook" title="Link to this heading">#</a></h2>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[1]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Import Aidge modules</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_core</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">aidge_onnx</span>
+
+<span class="c1"># Select low verbose mode</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">Log</span><span class="o">.</span><span class="n">set_console_level</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">Level</span><span class="o">.</span><span class="n">Error</span><span class="p">)</span>
+
+<span class="c1"># Import module to show images in the notebook</span>
+<span class="kn">from</span><span class="w"> </span><span class="nn">IPython.display</span><span class="w"> </span><span class="kn">import</span> <span class="n">Image</span>
+
+<span class="c1"># Import some utility modules</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">os</span>
+<span class="kn">import</span><span class="w"> </span><span class="nn">requests</span>
+<br/></pre></div>
+</div>
+</div>
+</section>
+<section id="(if-needed)-Download-the-model">
+<h2>(if needed) Download the model<a class="headerlink" href="#(if-needed)-Download-the-model" title="Link to this heading">#</a></h2>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[2]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Download the DINOv2 model ONNX file, if this has not been done yet</span>
+<span class="n">file_url</span> <span class="o">=</span> <span class="s2">&quot;https://huggingface.co/EclipseAidge/dinov2/resolve/main/dinov2.onnx?download=true&quot;</span>
+<span class="n">file_path</span> <span class="o">=</span> <span class="s2">&quot;dinov2.onnx&quot;</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">utils</span><span class="o">.</span><span class="n">download_file</span><span class="p">(</span><span class="n">file_path</span><span class="p">,</span> <span class="n">file_url</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area stderr docutils container">
+<div class="highlight"><pre>
+dinov2.onnx: 100%|██████████| 82.7M/82.7M [00:01&lt;00:00, 84.0MB/s]
+</pre></div></div>
+</div>
+</section>
+<section id="Import-the-ONNX-model-into-Aidge">
+<h2>Import the ONNX model into Aidge<a class="headerlink" href="#Import-the-ONNX-model-into-Aidge" title="Link to this heading">#</a></h2>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># We rely on the Aidge ONNX module, which provides an interface between ONNX operators and Aidge&#39;s internal representation</span>
+<span class="n">dinov2_model</span> <span class="o">=</span> <span class="n">aidge_onnx</span><span class="o">.</span><span class="n">load_onnx</span><span class="p">(</span><span class="s2">&quot;dinov2.onnx&quot;</span><span class="p">)</span>
+
+<span class="c1"># Verify Aidge&#39;s native operators coverage for this model</span>
+<span class="n">aidge_onnx</span><span class="o">.</span><span class="n">native_coverage_report</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+Native operators: 824 (17 types)
+- Add: 159
+- Concat: 1
+- Conv2D: 1
+- Div: 49
+- Erf: 12
+- Gather: 1
+- MatMul: 72
+- Mul: 73
+- Pow: 25
+- Producer: 209
+- ReduceMean: 50
+- Reshape: 49
+- Softmax: 12
+- Split: 12
+- Sqrt: 25
+- Sub: 25
+- Transpose: 49
+Generic operators: 0 (0 types)
+Native types coverage: 100.0% (17/17)
+Native operators coverage: 100.0% (824/824)
+</pre></div></div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[3]:
+</pre></div>
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+(defaultdict(int,
+             {&#39;Add&#39;: 159,
+              &#39;ReduceMean&#39;: 50,
+              &#39;Reshape&#39;: 49,
+              &#39;Pow&#39;: 25,
+              &#39;Sub&#39;: 25,
+              &#39;Split&#39;: 12,
+              &#39;MatMul&#39;: 72,
+              &#39;Mul&#39;: 73,
+              &#39;Div&#39;: 49,
+              &#39;Sqrt&#39;: 25,
+              &#39;Erf&#39;: 12,
+              &#39;Gather&#39;: 1,
+              &#39;Transpose&#39;: 49,
+              &#39;Softmax&#39;: 12,
+              &#39;Producer&#39;: 209,
+              &#39;Concat&#39;: 1,
+              &#39;Conv2D&#39;: 1}),
+ defaultdict(int, {}))
+</pre></div></div>
+</div>
+</section>
+<section id="Explore-a-handful-of-graph-transformations">
+<h2>Explore a handful of graph transformations<a class="headerlink" href="#Explore-a-handful-of-graph-transformations" title="Link to this heading">#</a></h2>
+<p>In this section we use some of Aidge’s recipes to simplify the model graph.</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[4]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create a clone of the original model to be used for comparison later</span>
+<span class="n">clone_dinov2</span> <span class="o">=</span> <span class="n">dinov2_model</span><span class="o">.</span><span class="n">clone</span><span class="p">()</span>
+
+<span class="c1"># Simplify the model using meta-operators via the ``fuse_to_metaops`` recipe</span>
+<span class="c1"># In this context we use Graph Regex to specify which sequence of operators must be replaced by a given meta operator</span>
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">fuse_to_metaops</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">,</span> <span class="s2">&quot;MatMul-*&gt;Add&quot;</span><span class="p">,</span> <span class="s2">&quot;Linear&quot;</span><span class="p">)</span>
+
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">fuse_to_metaops</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">,</span> <span class="s2">&quot;ReduceMean-*&gt;Sub#1~&gt;(Pow#1-&gt;ReduceMean-*&gt;Add#1-&gt;Sqrt)-*&gt;Div#1-*&gt;Mul#1-*&gt;Add#2;&quot;</span>
+                                        <span class="s2">&quot;Sub#1~*&gt;Div#1;&quot;</span>
+                                        <span class="s2">&quot;Pow#1&lt;1~Producer;&quot;</span>
+                                        <span class="s2">&quot;Add#1&lt;*~Producer;&quot;</span>
+                                        <span class="s2">&quot;Mul#1&lt;*~Producer;&quot;</span>
+                                        <span class="s2">&quot;Add#2&lt;*~Producer;&quot;</span>
+                                        <span class="s2">&quot;Sub#1~&gt;$&quot;</span><span class="p">,</span> <span class="s2">&quot;LayerNorm&quot;</span><span class="p">)</span>
+
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">fuse_to_metaops</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">,</span> <span class="s2">&quot;MatMul-&gt;Div#1-&gt;Softmax-*&gt;MatMul;&quot;</span>
+                                        <span class="s2">&quot;Div#1&lt;1~Producer&quot;</span><span class="p">,</span> <span class="s2">&quot;ScaledDotProductAttention&quot;</span><span class="p">)</span>
+
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">fuse_to_metaops</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">,</span> <span class="s2">&quot;ScaledDotProductAttention#1-&gt;Transpose-&gt;Reshape#1-&gt;Linear;&quot;</span>
+                                        <span class="s2">&quot;Reshape#1&lt;1~Producer;&quot;</span>
+                                        <span class="s2">&quot;ScaledDotProductAttention#1&lt;0-(Transpose&lt;-Reshape#2&lt;-Add#1);&quot;</span>
+                                        <span class="s2">&quot;ScaledDotProductAttention#1&lt;1-(Transpose&lt;-Reshape#3&lt;-Add#2);&quot;</span>
+                                        <span class="s2">&quot;ScaledDotProductAttention#1&lt;2-(Transpose&lt;-Reshape#4&lt;-Add#3);&quot;</span>
+                                        <span class="s2">&quot;Reshape#2&lt;1~Producer;&quot;</span>
+                                        <span class="s2">&quot;Add#1&lt;*-0-Split#1;&quot;</span>
+                                        <span class="s2">&quot;Add#2&lt;*-1-Split#1;&quot;</span>
+                                        <span class="s2">&quot;Add#3&lt;*-2-Split#1;&quot;</span>
+                                        <span class="s2">&quot;Split#1&lt;-MatMul;&quot;</span>
+                                        <span class="s2">&quot;Split#1&lt;1~Producer&quot;</span><span class="p">,</span> <span class="s2">&quot;MultiHeadAttention&quot;</span><span class="p">)</span>
+
+<span class="n">aidge_core</span><span class="o">.</span><span class="n">fuse_to_metaops</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">,</span> <span class="s2">&quot;Div#1-&gt;Erf-&gt;Add#1-*&gt;Mul-&gt;Mul#2;&quot;</span>
+                                        <span class="s2">&quot;Div#1&lt;1~Producer;&quot;</span>
+                                        <span class="s2">&quot;Add#1&lt;*~Producer;&quot;</span>
+                                        <span class="s2">&quot;Mul#2&lt;*~Producer&quot;</span><span class="p">,</span> <span class="s2">&quot;GeLU&quot;</span><span class="p">)</span>
+
+<span class="n">dinov2_model</span><span class="o">.</span><span class="n">set_ordered_outputs</span><span class="p">([</span><span class="n">dinov2_model</span><span class="o">.</span><span class="n">get_ordered_outputs</span><span class="p">()[</span><span class="mi">0</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">inputs</span><span class="p">()[</span><span class="mi">0</span><span class="p">],</span> <span class="n">dinov2_model</span><span class="o">.</span><span class="n">get_ordered_outputs</span><span class="p">()[</span><span class="mi">0</span><span class="p">]])</span>
+</pre></div>
+</div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[5]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># After creating meta-operators, we can verify the updated total number of operators in the graph</span>
+<span class="n">_</span> <span class="o">=</span> <span class="n">aidge_onnx</span><span class="o">.</span><span class="n">native_coverage_report</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+Native operators: 277 (12 types)
+- Add: 25
+- Concat: 1
+- Conv2D: 1
+- Gather: 1
+- GeLU: 12
+- LayerNorm: 25
+- Linear: 24
+- Mul: 24
+- MultiHeadAttention: 12
+- Producer: 150
+- Reshape: 1
+- Transpose: 1
+Generic operators: 0 (0 types)
+Native types coverage: 100.0% (12/12)
+Native operators coverage: 100.0% (277/277)
+</pre></div></div>
+</div>
+<p>The number of operators is reduced from 824 (17 unique) to 277 (12 unique), as depicted in the following image.</p>
+<p><img alt="./static/dino_sim.png" src="../../_images/dino_sim.png" /></p>
+</section>
+<section id="Run-static-analysis">
+<h2>Run static analysis<a class="headerlink" href="#Run-static-analysis" title="Link to this heading">#</a></h2>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[6]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_core.static_analysis</span>
+
+<span class="c1"># Input dimensions must be forwarded for static analysis</span>
+<span class="n">dinov2_model</span><span class="o">.</span><span class="n">forward_dims</span><span class="p">(</span><span class="n">dims</span><span class="o">=</span><span class="p">[[</span><span class="mi">1</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">224</span><span class="p">,</span><span class="mi">224</span><span class="p">]],</span> <span class="n">allow_data_dependency</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+
+<span class="n">dinov2_stats</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">static_analysis</span><span class="o">.</span><span class="n">StaticAnalysis</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">)</span>
+<span class="n">dinov2_stats</span><span class="o">.</span><span class="n">summary</span><span class="p">()</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+--------------------------------------------------------------------------------
+                        Layer (type)               Output Shape         Param #
+================================================================================
+embeddings_patch_embeddings_projection_Conv (Conv2D#0)           [1, 384, 16, 16]          226176
+embeddings_patch_embeddings_Reshape (Reshape#0)              [1, 384, 256]               3
+embeddings_patch_embeddings_Transpose (Transpose#0)              [1, 256, 384]               0
+        embeddings_Concat (Concat#0)              [1, 257, 384]             384
+              embeddings_Add (Add#0)              [1, 257, 384]           98688
+                       (LayerNorm#0)              [1, 257, 384]             770
+              (MultiHeadAttention#0)              [1, 257, 384]          591370
+encoder_layer_0_layer_scale1_Mul (Mul#0)              [1, 257, 384]             384
+         encoder_layer_0_Add (Add#1)              [1, 257, 384]               0
+                       (LayerNorm#1)              [1, 257, 384]             770
+                          (Linear#0)             [1, 257, 1536]          591360
+                            (GeLU#0)             [1, 257, 1536]               3
+                          (Linear#1)              [1, 257, 384]          590208
+encoder_layer_0_layer_scale2_Mul (Mul#1)              [1, 257, 384]             384
+       encoder_layer_0_Add_1 (Add#2)              [1, 257, 384]               0
+                       (LayerNorm#2)              [1, 257, 384]             770
+              (MultiHeadAttention#1)              [1, 257, 384]          591370
+encoder_layer_1_layer_scale1_Mul (Mul#2)              [1, 257, 384]             384
+         encoder_layer_1_Add (Add#3)              [1, 257, 384]               0
+                       (LayerNorm#3)              [1, 257, 384]             770
+                          (Linear#2)             [1, 257, 1536]          591360
+                            (GeLU#1)             [1, 257, 1536]               3
+                          (Linear#3)              [1, 257, 384]          590208
+encoder_layer_1_layer_scale2_Mul (Mul#3)              [1, 257, 384]             384
+       encoder_layer_1_Add_1 (Add#4)              [1, 257, 384]               0
+                       (LayerNorm#4)              [1, 257, 384]             770
+              (MultiHeadAttention#2)              [1, 257, 384]          591370
+encoder_layer_2_layer_scale1_Mul (Mul#4)              [1, 257, 384]             384
+         encoder_layer_2_Add (Add#5)              [1, 257, 384]               0
+                       (LayerNorm#5)              [1, 257, 384]             770
+                          (Linear#4)             [1, 257, 1536]          591360
+                            (GeLU#2)             [1, 257, 1536]               3
+                          (Linear#5)              [1, 257, 384]          590208
+encoder_layer_2_layer_scale2_Mul (Mul#5)              [1, 257, 384]             384
+       encoder_layer_2_Add_1 (Add#6)              [1, 257, 384]               0
+                       (LayerNorm#6)              [1, 257, 384]             770
+              (MultiHeadAttention#3)              [1, 257, 384]          591370
+encoder_layer_3_layer_scale1_Mul (Mul#6)              [1, 257, 384]             384
+         encoder_layer_3_Add (Add#7)              [1, 257, 384]               0
+                       (LayerNorm#7)              [1, 257, 384]             770
+                          (Linear#6)             [1, 257, 1536]          591360
+                            (GeLU#3)             [1, 257, 1536]               3
+                          (Linear#7)              [1, 257, 384]          590208
+encoder_layer_3_layer_scale2_Mul (Mul#7)              [1, 257, 384]             384
+       encoder_layer_3_Add_1 (Add#8)              [1, 257, 384]               0
+                       (LayerNorm#8)              [1, 257, 384]             770
+              (MultiHeadAttention#4)              [1, 257, 384]          591370
+encoder_layer_4_layer_scale1_Mul (Mul#8)              [1, 257, 384]             384
+         encoder_layer_4_Add (Add#9)              [1, 257, 384]               0
+                       (LayerNorm#9)              [1, 257, 384]             770
+                          (Linear#8)             [1, 257, 1536]          591360
+                            (GeLU#4)             [1, 257, 1536]               3
+                          (Linear#9)              [1, 257, 384]          590208
+encoder_layer_4_layer_scale2_Mul (Mul#9)              [1, 257, 384]             384
+      encoder_layer_4_Add_1 (Add#10)              [1, 257, 384]               0
+                      (LayerNorm#10)              [1, 257, 384]             770
+              (MultiHeadAttention#5)              [1, 257, 384]          591370
+encoder_layer_5_layer_scale1_Mul (Mul#10)              [1, 257, 384]             384
+        encoder_layer_5_Add (Add#11)              [1, 257, 384]               0
+                      (LayerNorm#11)              [1, 257, 384]             770
+                         (Linear#10)             [1, 257, 1536]          591360
+                            (GeLU#5)             [1, 257, 1536]               3
+                         (Linear#11)              [1, 257, 384]          590208
+encoder_layer_5_layer_scale2_Mul (Mul#11)              [1, 257, 384]             384
+      encoder_layer_5_Add_1 (Add#12)              [1, 257, 384]               0
+                      (LayerNorm#12)              [1, 257, 384]             770
+              (MultiHeadAttention#6)              [1, 257, 384]          591370
+encoder_layer_6_layer_scale1_Mul (Mul#12)              [1, 257, 384]             384
+        encoder_layer_6_Add (Add#13)              [1, 257, 384]               0
+                      (LayerNorm#13)              [1, 257, 384]             770
+                         (Linear#12)             [1, 257, 1536]          591360
+                            (GeLU#6)             [1, 257, 1536]               3
+                         (Linear#13)              [1, 257, 384]          590208
+encoder_layer_6_layer_scale2_Mul (Mul#13)              [1, 257, 384]             384
+      encoder_layer_6_Add_1 (Add#14)              [1, 257, 384]               0
+                      (LayerNorm#14)              [1, 257, 384]             770
+              (MultiHeadAttention#7)              [1, 257, 384]          591370
+encoder_layer_7_layer_scale1_Mul (Mul#14)              [1, 257, 384]             384
+        encoder_layer_7_Add (Add#15)              [1, 257, 384]               0
+                      (LayerNorm#15)              [1, 257, 384]             770
+                         (Linear#14)             [1, 257, 1536]          591360
+                            (GeLU#7)             [1, 257, 1536]               3
+                         (Linear#15)              [1, 257, 384]          590208
+encoder_layer_7_layer_scale2_Mul (Mul#15)              [1, 257, 384]             384
+      encoder_layer_7_Add_1 (Add#16)              [1, 257, 384]               0
+                      (LayerNorm#16)              [1, 257, 384]             770
+              (MultiHeadAttention#8)              [1, 257, 384]          591370
+encoder_layer_8_layer_scale1_Mul (Mul#16)              [1, 257, 384]             384
+        encoder_layer_8_Add (Add#17)              [1, 257, 384]               0
+                      (LayerNorm#17)              [1, 257, 384]             770
+                         (Linear#16)             [1, 257, 1536]          591360
+                            (GeLU#8)             [1, 257, 1536]               3
+                         (Linear#17)              [1, 257, 384]          590208
+encoder_layer_8_layer_scale2_Mul (Mul#17)              [1, 257, 384]             384
+      encoder_layer_8_Add_1 (Add#18)              [1, 257, 384]               0
+                      (LayerNorm#18)              [1, 257, 384]             770
+              (MultiHeadAttention#9)              [1, 257, 384]          591370
+encoder_layer_9_layer_scale1_Mul (Mul#18)              [1, 257, 38
+</pre></div></div>
+</div>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[7]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Display certain statistics about the number of operations by node</span>
+<span class="n">_</span> <span class="o">=</span> <span class="n">dinov2_stats</span><span class="o">.</span><span class="n">log_nb_ops_by_type</span><span class="p">(</span><span class="s2">&quot;stats_ops.png&quot;</span><span class="p">,</span> <span class="n">log_scale</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+<br/></pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt empty docutils container">
+</div>
+<div class="output_area docutils container">
+<img alt="../../_images/source_Tutorial_static_analysis_14_0.png" src="../../_images/source_Tutorial_static_analysis_14_0.png" />
+</div>
+</div>
+</section>
+<section id="Configure-the-model-for-inference">
+<h2>Configure the model for inference<a class="headerlink" href="#Configure-the-model-for-inference" title="Link to this heading">#</a></h2>
+<p>Currently, the model has no implementation and exists only as a data structure. To set an implementation, we will specify a backend and a data type.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span><span class="w"> </span><span class="nn">aidge_backend_cpu</span>
+
+<span class="n">dinov2_model</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s2">&quot;cpu&quot;</span><span class="p">)</span>
+<span class="n">dinov2_model</span><span class="o">.</span><span class="n">set_datatype</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">)</span>
+<span class="n">dinov2_model</span><span class="o">.</span><span class="n">forward_dims</span><span class="p">([[</span><span class="mi">1</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">224</span><span class="p">,</span><span class="mi">224</span><span class="p">]],</span> <span class="kc">True</span><span class="p">)</span>
+<br/><br/></pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[8]:
+</pre></div>
+</div>
+<div class="output_area docutils container">
+<div class="highlight"><pre>
+True
+</pre></div></div>
+</div>
+<p>Finally, to run inference, we need to schedule the execution. To do so we create a <code class="docutils literal notranslate"><span class="pre">Scheduler</span></code> object, which takes the graph and generates an optimized scheduling using a consummer-producer (C-P) heuristic.</p>
+<div class="nbinput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[9]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">s</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">SequentialScheduler</span><span class="p">(</span><span class="n">dinov2_model</span><span class="p">)</span>
+<span class="n">s</span><span class="o">.</span><span class="n">generate_scheduling</span><span class="p">()</span>
+</pre></div>
+</div>
+</div>
+<p>In addition, it is possible to verify the memory usage of the different nodes composing the graph.</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="n">_</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">generate_optimized_memory_info</span><span class="p">(</span><span class="n">s</span><span class="p">,</span> <span class="s2">&quot;mem_strategy_dino&quot;</span><span class="p">,</span> <span class="n">wrapping</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">display_names</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+<span class="n">Image</span><span class="p">(</span><span class="n">filename</span><span class="o">=</span><span class="s2">&quot;./mem_strategy_dino/memory_info.png&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[10]:
+</pre></div>
+</div>
+<div class="output_area docutils container">
+<img alt="../../_images/source_Tutorial_static_analysis_20_0.png" src="../../_images/source_Tutorial_static_analysis_20_0.png" />
+</div>
+</div>
+<p>We can then compare the modified model with the original one, whose operators have not been fused:</p>
+<div class="nbinput docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]:
+</pre></div>
+</div>
+<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre><span></span><span class="c1"># Compile the model</span>
+<span class="n">clone_dinov2</span><span class="o">.</span><span class="n">set_backend</span><span class="p">(</span><span class="s2">&quot;cpu&quot;</span><span class="p">)</span>
+<span class="n">clone_dinov2</span><span class="o">.</span><span class="n">set_datatype</span><span class="p">(</span><span class="n">aidge_core</span><span class="o">.</span><span class="n">dtype</span><span class="o">.</span><span class="n">float32</span><span class="p">)</span>
+<span class="n">clone_dinov2</span><span class="o">.</span><span class="n">forward_dims</span><span class="p">([[</span><span class="mi">1</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">224</span><span class="p">,</span><span class="mi">224</span><span class="p">]],</span> <span class="kc">True</span><span class="p">)</span>
+
+<span class="c1"># Generate scheduling</span>
+<span class="n">s</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">SequentialScheduler</span><span class="p">(</span><span class="n">clone_dinov2</span><span class="p">)</span>
+<span class="n">s</span><span class="o">.</span><span class="n">generate_scheduling</span><span class="p">()</span>
+
+<span class="c1"># Visualize memory usage</span>
+<span class="n">_</span> <span class="o">=</span> <span class="n">aidge_core</span><span class="o">.</span><span class="n">generate_optimized_memory_info</span><span class="p">(</span><span class="n">s</span><span class="p">,</span> <span class="s2">&quot;mem_strategy_og_dino&quot;</span><span class="p">,</span> <span class="n">wrapping</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">display_names</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+<span class="n">Image</span><span class="p">(</span><span class="n">filename</span><span class="o">=</span><span class="s2">&quot;./mem_strategy_og_dino/memory_info.png&quot;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="nboutput nblast docutils container">
+<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[11]:
+</pre></div>
+</div>
+<div class="output_area docutils container">
+<img alt="../../_images/source_Tutorial_static_analysis_22_0.png" src="../../_images/source_Tutorial_static_analysis_22_0.png" />
+</div>
+</div>
+<p>In this tutorial the following concepts were studied:</p>
+<ul class="simple">
+<li><p>Graph transformations, in particular the <code class="docutils literal notranslate"><span class="pre">fuse_to_metaops</span></code> recipe;</p></li>
+<li><p>Static analysis, to measure the graph’s complexity in terms of number of operations;</p></li>
+<li><p>Memory information generation, to visualize the graph’s memory usage over inference time.</p></li>
+</ul>
+</section>
+</section>
+
+
+                </article>
+              
+              
+              
+              
+              
+                <footer class="prev-next-footer d-print-none">
+                  
+<div class="prev-next-area">
+    <a class="left-prev"
+       href="ONNX.html"
+       title="previous page">
+      <i class="fa-solid fa-angle-left"></i>
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">previous</p>
+        <p class="prev-next-title">Aidge ONNX tutorial</p>
+      </div>
+    </a>
+    <a class="right-next"
+       href="backend_cuda.html"
+       title="next page">
+      <div class="prev-next-info">
+        <p class="prev-next-subtitle">next</p>
+        <p class="prev-next-title">Backend CUDA example</p>
+      </div>
+      <i class="fa-solid fa-angle-right"></i>
+    </a>
+</div>
+                </footer>
+              
+            </div>
+            
+            
+              
+                <dialog id="pst-secondary-sidebar-modal"></dialog>
+                <div id="pst-secondary-sidebar" class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
+
+
+  <div class="sidebar-secondary-item">
+<div
+    id="pst-page-navigation-heading-2"
+    class="page-toc tocsection onthispage">
+    <i class="fa-solid fa-list"></i> On this page
+  </div>
+  <nav class="bd-toc-nav page-toc" aria-labelledby="pst-page-navigation-heading-2">
+    <ul class="visible nav section-nav flex-column">
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Setting-up-the-notebook">Setting up the notebook</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#(if-needed)-Download-the-model">(if needed) Download the model</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Import-the-ONNX-model-into-Aidge">Import the ONNX model into Aidge</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Explore-a-handful-of-graph-transformations">Explore a handful of graph transformations</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Run-static-analysis">Run static analysis</a></li>
+<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#Configure-the-model-for-inference">Configure the model for inference</a></li>
+</ul>
+  </nav></div>
+
+  <div class="sidebar-secondary-item">
+  <div role="note" aria-label="source link">
+    <h3>This Page</h3>
+    <ul class="this-page-menu">
+      <li><a href="../../_sources/source/Tutorial/static_analysis.nblink.txt"
+            rel="nofollow">Show Source</a></li>
+    </ul>
+   </div></div>
+
+</div></div>
+              
+            
+          </div>
+          <footer class="bd-footer-content">
+            
+          </footer>
+        
+      </main>
+    </div>
+  </div>
+  
+  <!-- Scripts loaded after <body> so the DOM is not blocked -->
+  <script defer src="../../_static/scripts/bootstrap.js?digest=8878045cc6db502f8baf"></script>
+<script defer src="../../_static/scripts/pydata-sphinx-theme.js?digest=8878045cc6db502f8baf"></script>
+
+  <footer class="bd-footer">
+<div class="bd-footer__inner bd-page-width">
+  
+    <div class="footer-items__start">
+      
+        <div class="footer-item">
+
+  <p class="copyright">
+    
+      © Copyright 2023, CEA LIST.
+      <br/>
+    
+  </p>
+</div>
+      
+        <div class="footer-item">
+
+  <p class="sphinx-version">
+    Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.1.3.
+    <br/>
+  </p>
+</div>
+      
+    </div>
+  
+  
+  
+    <div class="footer-items__end">
+      
+        <div class="footer-item">
+<p class="theme-version">
+  <!-- # L10n: Setting the PST URL as an argument as this does not need to be localized -->
+  Built with the <a href="https://pydata-sphinx-theme.readthedocs.io/en/stable/index.html">PyData Sphinx Theme</a> 0.16.1.
+</p></div>
+      
+    </div>
+  
+</div>
+
+  </footer>
+  </body>
+</html>
\ No newline at end of file
diff --git a/source/Tutorial/static_analysis.ipynb b/source/Tutorial/static_analysis.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..90a90afa7fb48d3befddcb3b864c66e1aaff1977
--- /dev/null
+++ b/source/Tutorial/static_analysis.ipynb
@@ -0,0 +1,717 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Perform static analysis on a neural network model\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "In this tutorial, we employ Aidge's ``static analysis`` module to evaluate the DINOv2 model."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Setting up the notebook"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:07.614394Z",
+     "iopub.status.busy": "2025-05-19T10:06:07.614173Z",
+     "iopub.status.idle": "2025-05-19T10:06:07.942795Z",
+     "shell.execute_reply": "2025-05-19T10:06:07.942431Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# Import Aidge modules\n",
+    "import aidge_core\n",
+    "import aidge_onnx\n",
+    "\n",
+    "# Select low verbose mode\n",
+    "aidge_core.Log.set_console_level(aidge_core.Level.Error)\n",
+    "\n",
+    "# Import module to show images in the notebook\n",
+    "from IPython.display import Image\n",
+    "\n",
+    "# Import some utility modules\n",
+    "import os\n",
+    "import requests\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## (if needed) Download the model"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:07.944418Z",
+     "iopub.status.busy": "2025-05-19T10:06:07.944240Z",
+     "iopub.status.idle": "2025-05-19T10:06:09.140130Z",
+     "shell.execute_reply": "2025-05-19T10:06:09.139860Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:   0%|          | 0.00/82.7M [00:00<?, ?B/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:   8%|â–Š         | 6.38M/82.7M [00:00<00:01, 66.9MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:  18%|█▊        | 14.6M/82.7M [00:00<00:00, 77.9MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:  27%|██▋       | 22.0M/82.7M [00:00<00:00, 77.8MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:  38%|███▊      | 31.2M/82.7M [00:00<00:00, 85.0MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:  48%|████▊     | 39.3M/82.7M [00:00<00:00, 80.7MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:  57%|█████▋    | 47.1M/82.7M [00:00<00:00, 77.6MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:  67%|██████▋   | 55.4M/82.7M [00:00<00:00, 80.4MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:  77%|███████▋  | 63.3M/82.7M [00:00<00:00, 81.3MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx:  88%|████████▊ | 72.6M/82.7M [00:00<00:00, 86.2MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx: 100%|█████████▉| 82.5M/82.7M [00:01<00:00, 91.3MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\r",
+      "dinov2.onnx: 100%|██████████| 82.7M/82.7M [00:01<00:00, 84.0MB/s]"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Download the DINOv2 model ONNX file, if this has not been done yet\n",
+    "file_url = \"https://huggingface.co/EclipseAidge/dinov2/resolve/main/dinov2.onnx?download=true\"\n",
+    "file_path = \"dinov2.onnx\"\n",
+    "aidge_core.utils.download_file(file_path, file_url)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Import the ONNX model into Aidge"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:09.141307Z",
+     "iopub.status.busy": "2025-05-19T10:06:09.141090Z",
+     "iopub.status.idle": "2025-05-19T10:06:09.311995Z",
+     "shell.execute_reply": "2025-05-19T10:06:09.311701Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Native operators: 824 (17 types)\n",
+      "- Add: 159\n",
+      "- Concat: 1\n",
+      "- Conv2D: 1\n",
+      "- Div: 49\n",
+      "- Erf: 12\n",
+      "- Gather: 1\n",
+      "- MatMul: 72\n",
+      "- Mul: 73\n",
+      "- Pow: 25\n",
+      "- Producer: 209\n",
+      "- ReduceMean: 50\n",
+      "- Reshape: 49\n",
+      "- Softmax: 12\n",
+      "- Split: 12\n",
+      "- Sqrt: 25\n",
+      "- Sub: 25\n",
+      "- Transpose: 49\n",
+      "Generic operators: 0 (0 types)\n",
+      "Native types coverage: 100.0% (17/17)\n",
+      "Native operators coverage: 100.0% (824/824)\n"
+     ]
+    },
+    {
+     "data": {
+      "text/plain": [
+       "(defaultdict(int,\n",
+       "             {'Add': 159,\n",
+       "              'ReduceMean': 50,\n",
+       "              'Reshape': 49,\n",
+       "              'Pow': 25,\n",
+       "              'Sub': 25,\n",
+       "              'Split': 12,\n",
+       "              'MatMul': 72,\n",
+       "              'Mul': 73,\n",
+       "              'Div': 49,\n",
+       "              'Sqrt': 25,\n",
+       "              'Erf': 12,\n",
+       "              'Gather': 1,\n",
+       "              'Transpose': 49,\n",
+       "              'Softmax': 12,\n",
+       "              'Producer': 209,\n",
+       "              'Concat': 1,\n",
+       "              'Conv2D': 1}),\n",
+       " defaultdict(int, {}))"
+      ]
+     },
+     "execution_count": 3,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# We rely on the Aidge ONNX module, which provides an interface between ONNX operators and Aidge's internal representation\n",
+    "dinov2_model = aidge_onnx.load_onnx(\"dinov2.onnx\")\n",
+    "\n",
+    "# Verify Aidge's native operators coverage for this model\n",
+    "aidge_onnx.native_coverage_report(dinov2_model)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Explore a handful of graph transformations\n",
+    "In this section we use some of Aidge's recipes to simplify the model graph. "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:09.313100Z",
+     "iopub.status.busy": "2025-05-19T10:06:09.312974Z",
+     "iopub.status.idle": "2025-05-19T10:06:09.364354Z",
+     "shell.execute_reply": "2025-05-19T10:06:09.363976Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "# Create a clone of the original model to be used for comparison later\n",
+    "clone_dinov2 = dinov2_model.clone()\n",
+    "\n",
+    "# Simplify the model using meta-operators via the ``fuse_to_metaops`` recipe\n",
+    "# In this context we use Graph Regex to specify which sequence of operators must be replaced by a given meta operator\n",
+    "aidge_core.fuse_to_metaops(dinov2_model, \"MatMul-*>Add\", \"Linear\")\n",
+    "\n",
+    "aidge_core.fuse_to_metaops(dinov2_model, \"ReduceMean-*>Sub#1~>(Pow#1->ReduceMean-*>Add#1->Sqrt)-*>Div#1-*>Mul#1-*>Add#2;\"\n",
+    "                                        \"Sub#1~*>Div#1;\"\n",
+    "                                        \"Pow#1<1~Producer;\"\n",
+    "                                        \"Add#1<*~Producer;\"\n",
+    "                                        \"Mul#1<*~Producer;\"\n",
+    "                                        \"Add#2<*~Producer;\"\n",
+    "                                        \"Sub#1~>$\", \"LayerNorm\")\n",
+    "\n",
+    "aidge_core.fuse_to_metaops(dinov2_model, \"MatMul->Div#1->Softmax-*>MatMul;\"\n",
+    "                                        \"Div#1<1~Producer\", \"ScaledDotProductAttention\")\n",
+    "\n",
+    "aidge_core.fuse_to_metaops(dinov2_model, \"ScaledDotProductAttention#1->Transpose->Reshape#1->Linear;\"\n",
+    "                                        \"Reshape#1<1~Producer;\"\n",
+    "                                        \"ScaledDotProductAttention#1<0-(Transpose<-Reshape#2<-Add#1);\"\n",
+    "                                        \"ScaledDotProductAttention#1<1-(Transpose<-Reshape#3<-Add#2);\"\n",
+    "                                        \"ScaledDotProductAttention#1<2-(Transpose<-Reshape#4<-Add#3);\"\n",
+    "                                        \"Reshape#2<1~Producer;\"\n",
+    "                                        \"Add#1<*-0-Split#1;\"\n",
+    "                                        \"Add#2<*-1-Split#1;\"\n",
+    "                                        \"Add#3<*-2-Split#1;\"\n",
+    "                                        \"Split#1<-MatMul;\"\n",
+    "                                        \"Split#1<1~Producer\", \"MultiHeadAttention\")\n",
+    "\n",
+    "aidge_core.fuse_to_metaops(dinov2_model, \"Div#1->Erf->Add#1-*>Mul->Mul#2;\"\n",
+    "                                        \"Div#1<1~Producer;\"\n",
+    "                                        \"Add#1<*~Producer;\"\n",
+    "                                        \"Mul#2<*~Producer\", \"GeLU\")\n",
+    "\n",
+    "dinov2_model.set_ordered_outputs([dinov2_model.get_ordered_outputs()[0][0].inputs()[0], dinov2_model.get_ordered_outputs()[0]])"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:09.365608Z",
+     "iopub.status.busy": "2025-05-19T10:06:09.365393Z",
+     "iopub.status.idle": "2025-05-19T10:06:09.367647Z",
+     "shell.execute_reply": "2025-05-19T10:06:09.367431Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Native operators: 277 (12 types)\n",
+      "- Add: 25\n",
+      "- Concat: 1\n",
+      "- Conv2D: 1\n",
+      "- Gather: 1\n",
+      "- GeLU: 12\n",
+      "- LayerNorm: 25\n",
+      "- Linear: 24\n",
+      "- Mul: 24\n",
+      "- MultiHeadAttention: 12\n",
+      "- Producer: 150\n",
+      "- Reshape: 1\n",
+      "- Transpose: 1\n",
+      "Generic operators: 0 (0 types)\n",
+      "Native types coverage: 100.0% (12/12)\n",
+      "Native operators coverage: 100.0% (277/277)\n"
+     ]
+    }
+   ],
+   "source": [
+    "# After creating meta-operators, we can verify the updated total number of operators in the graph\n",
+    "_ = aidge_onnx.native_coverage_report(dinov2_model)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "The number of operators is reduced from 824 (17 unique) to 277 (12 unique), as depicted in the following image.\n",
+    "\n",
+    "![./static/dino_sim.png](./static/dino_sim.png)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Run static analysis"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:09.368587Z",
+     "iopub.status.busy": "2025-05-19T10:06:09.368440Z",
+     "iopub.status.idle": "2025-05-19T10:06:09.374532Z",
+     "shell.execute_reply": "2025-05-19T10:06:09.374153Z"
+    }
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "--------------------------------------------------------------------------------\n",
+      "                        Layer (type)               Output Shape         Param #\n",
+      "================================================================================\n",
+      "embeddings_patch_embeddings_projection_Conv (Conv2D#0)           [1, 384, 16, 16]          226176\n",
+      "embeddings_patch_embeddings_Reshape (Reshape#0)              [1, 384, 256]               3\n",
+      "embeddings_patch_embeddings_Transpose (Transpose#0)              [1, 256, 384]               0\n",
+      "        embeddings_Concat (Concat#0)              [1, 257, 384]             384\n",
+      "              embeddings_Add (Add#0)              [1, 257, 384]           98688\n",
+      "                       (LayerNorm#0)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#0)              [1, 257, 384]          591370\n",
+      "encoder_layer_0_layer_scale1_Mul (Mul#0)              [1, 257, 384]             384\n",
+      "         encoder_layer_0_Add (Add#1)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#1)              [1, 257, 384]             770\n",
+      "                          (Linear#0)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#0)             [1, 257, 1536]               3\n",
+      "                          (Linear#1)              [1, 257, 384]          590208\n",
+      "encoder_layer_0_layer_scale2_Mul (Mul#1)              [1, 257, 384]             384\n",
+      "       encoder_layer_0_Add_1 (Add#2)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#2)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#1)              [1, 257, 384]          591370\n",
+      "encoder_layer_1_layer_scale1_Mul (Mul#2)              [1, 257, 384]             384\n",
+      "         encoder_layer_1_Add (Add#3)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#3)              [1, 257, 384]             770\n",
+      "                          (Linear#2)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#1)             [1, 257, 1536]               3\n",
+      "                          (Linear#3)              [1, 257, 384]          590208\n",
+      "encoder_layer_1_layer_scale2_Mul (Mul#3)              [1, 257, 384]             384\n",
+      "       encoder_layer_1_Add_1 (Add#4)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#4)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#2)              [1, 257, 384]          591370\n",
+      "encoder_layer_2_layer_scale1_Mul (Mul#4)              [1, 257, 384]             384\n",
+      "         encoder_layer_2_Add (Add#5)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#5)              [1, 257, 384]             770\n",
+      "                          (Linear#4)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#2)             [1, 257, 1536]               3\n",
+      "                          (Linear#5)              [1, 257, 384]          590208\n",
+      "encoder_layer_2_layer_scale2_Mul (Mul#5)              [1, 257, 384]             384\n",
+      "       encoder_layer_2_Add_1 (Add#6)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#6)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#3)              [1, 257, 384]          591370\n",
+      "encoder_layer_3_layer_scale1_Mul (Mul#6)              [1, 257, 384]             384\n",
+      "         encoder_layer_3_Add (Add#7)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#7)              [1, 257, 384]             770\n",
+      "                          (Linear#6)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#3)             [1, 257, 1536]               3\n",
+      "                          (Linear#7)              [1, 257, 384]          590208\n",
+      "encoder_layer_3_layer_scale2_Mul (Mul#7)              [1, 257, 384]             384\n",
+      "       encoder_layer_3_Add_1 (Add#8)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#8)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#4)              [1, 257, 384]          591370\n",
+      "encoder_layer_4_layer_scale1_Mul (Mul#8)              [1, 257, 384]             384\n",
+      "         encoder_layer_4_Add (Add#9)              [1, 257, 384]               0\n",
+      "                       (LayerNorm#9)              [1, 257, 384]             770\n",
+      "                          (Linear#8)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#4)             [1, 257, 1536]               3\n",
+      "                          (Linear#9)              [1, 257, 384]          590208\n",
+      "encoder_layer_4_layer_scale2_Mul (Mul#9)              [1, 257, 384]             384\n",
+      "      encoder_layer_4_Add_1 (Add#10)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#10)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#5)              [1, 257, 384]          591370\n",
+      "encoder_layer_5_layer_scale1_Mul (Mul#10)              [1, 257, 384]             384\n",
+      "        encoder_layer_5_Add (Add#11)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#11)              [1, 257, 384]             770\n",
+      "                         (Linear#10)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#5)             [1, 257, 1536]               3\n",
+      "                         (Linear#11)              [1, 257, 384]          590208\n",
+      "encoder_layer_5_layer_scale2_Mul (Mul#11)              [1, 257, 384]             384\n",
+      "      encoder_layer_5_Add_1 (Add#12)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#12)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#6)              [1, 257, 384]          591370\n",
+      "encoder_layer_6_layer_scale1_Mul (Mul#12)              [1, 257, 384]             384\n",
+      "        encoder_layer_6_Add (Add#13)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#13)              [1, 257, 384]             770\n",
+      "                         (Linear#12)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#6)             [1, 257, 1536]               3\n",
+      "                         (Linear#13)              [1, 257, 384]          590208\n",
+      "encoder_layer_6_layer_scale2_Mul (Mul#13)              [1, 257, 384]             384\n",
+      "      encoder_layer_6_Add_1 (Add#14)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#14)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#7)              [1, 257, 384]          591370\n",
+      "encoder_layer_7_layer_scale1_Mul (Mul#14)              [1, 257, 384]             384\n",
+      "        encoder_layer_7_Add (Add#15)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#15)              [1, 257, 384]             770\n",
+      "                         (Linear#14)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#7)             [1, 257, 1536]               3\n",
+      "                         (Linear#15)              [1, 257, 384]          590208\n",
+      "encoder_layer_7_layer_scale2_Mul (Mul#15)              [1, 257, 384]             384\n",
+      "      encoder_layer_7_Add_1 (Add#16)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#16)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#8)              [1, 257, 384]          591370\n",
+      "encoder_layer_8_layer_scale1_Mul (Mul#16)              [1, 257, 384]             384\n",
+      "        encoder_layer_8_Add (Add#17)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#17)              [1, 257, 384]             770\n",
+      "                         (Linear#16)             [1, 257, 1536]          591360\n",
+      "                            (GeLU#8)             [1, 257, 1536]               3\n",
+      "                         (Linear#17)              [1, 257, 384]          590208\n",
+      "encoder_layer_8_layer_scale2_Mul (Mul#17)              [1, 257, 384]             384\n",
+      "      encoder_layer_8_Add_1 (Add#18)              [1, 257, 384]               0\n",
+      "                      (LayerNorm#18)              [1, 257, 384]             770\n",
+      "              (MultiHeadAttention#9)              [1, 257, 384]          591370\n",
+      "encoder_layer_9_layer_scale1_Mul (Mul#18)              [1, 257, 38"
+     ]
+    }
+   ],
+   "source": [
+    "import aidge_core.static_analysis\n",
+    "\n",
+    "# Input dimensions must be forwarded for static analysis\n",
+    "dinov2_model.forward_dims(dims=[[1,3,224,224]], allow_data_dependency=True)\n",
+    "\n",
+    "dinov2_stats = aidge_core.static_analysis.StaticAnalysis(dinov2_model)\n",
+    "dinov2_stats.summary()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:09.375638Z",
+     "iopub.status.busy": "2025-05-19T10:06:09.375493Z",
+     "iopub.status.idle": "2025-05-19T10:06:11.044850Z",
+     "shell.execute_reply": "2025-05-19T10:06:11.044455Z"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAACdMAAANnCAYAAADQ+VOiAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xl8FdX9//H3TSAhBJKwLy6AoFRcQCmiWAUrrrhg3b/aCloVd6popVYIUJWWolhFrLUF1yraalutewXrUqWIe4xRghEJIZKNQAgkd35/8Lu3Cdnm3jPnZu7k9Xw8eDiZ3Mw97/mcOTOTHOeGHMdxBAAAAAAAAAAAAAAAAABAB5bS3g0AAAAAAAAAAAAAAAAAAKC9MZkOAAAAAAAAAAAAAAAAANDhMZkOAAAAAAAAAAAAAAAAANDhMZkOAAAAAAAAAAAAAAAAANDhMZkOAAAAAAAAAAAAAAAAANDhMZkOAAAAAAAAAAAAAAAAANDhMZkOAAAAAAAAAAAAAAAAANDhMZkOAAAAAAAAAAAAAAAAANDhMZkOAAAAAAAAAAAAAAAAANDhMZkOAAAAQIc1ZcoUhUIhhUIhHXjgge3dHCtWrFihUCikp59+ur2bIul/7VmxYoXr1/ql7aFQSLm5ue3dDCTQhAkTfDU2TJgwQRMmTHD9Wj+1/cUXX9SoUaPUpUsXhUIhVVRUtHeT4JHc3FyFQiF99913nm3LpljOQ0gegwcP1imnnNLezQCa1V7XtLFcN/jNqFGjovdpHNsAAAAAEo3JdAAAAAA6tN69e+uRRx7R/PnzG60fPHiw9YlT//znP5mcJenxxx/XokWL2rsZVt1+++169tln27sZrk2ZMiXuP74uW7bM+mSYbdu2KTc3t8NPhtmwYYNyc3P1wQcftHdTWrV582adc845ysjI0OLFi/XII48oMzOzvZtlzKSvr1u3LiETuu677z4tW7bM6nugfU2YMEFTpkyJ62dzc3M1ePBgT9uzu2QZp2CH6VjH9XjH0Nz59Pbbb9cjjzyi3r17t1OrAAAAAHRkndq7AQAAAADQnjIzM3XhhRe2y3v/85//1OLFizvUH/COPvpo1dTUKC0tLbru8ccf1yeffKLp06e3X8NcqKmpUadO8d1G33777TrrrLM0efJkbxvVQW3btk1z5syRpKR94ko8Xn755UZfb9iwQXPmzNHgwYM1atSo9mmUC6tWrdKWLVs0b948TZw4sb2b06Hcd9996t27d9yTrYKoufMQ7EmWcQodV0e8Hk8GJ598siTpl7/8ZTu3BAAAAEBHxJPpAAAAAADWbd++XeFwWCkpKerSpYtSUpLvdrRLly5xT6YDTGzbtk2SlJaWlpQTgDZt2iRJysnJad+GAFJSn4cAAAAAAABgH781AgAAAACXPvroI40fP14ZGRnac8899atf/UpLly5VKBTSunXrGr32hRde0FFHHaXMzEx1795dkyZN0qeffhr9/pQpU7R48WJJUigUiv5za8KECTrwwAP12Wef6ZhjjlHXrl21xx576De/+U2zr6+vr9cvfvEL9e/fX5mZmTrttNP0zTffxJS/rKxMM2bM0EEHHaRu3bopKytLJ510kj788MNGr1uxYoVCoZCeeOIJ/fKXv9Qee+yhrl27qqqqKvq9yMd9TZgwQc8//7y+/vrr6D7Y/SPnwuGwbrvtNu25557q0qWLjj32WH355ZfN7o9Ijbp27aphw4bp6aefliStXLlSY8eOVUZGhoYPH65XX301puzSrjo1fGpJbm6uQqGQvvzyS02ZMkU5OTnKzs7W1KlTo5OfIj+3detWPfTQQ9GMsTwlauvWrbrhhhu01157KT09XcOHD9dvf/tbOY7TpH1XX321HnvsMQ0fPlxdunTR6NGj9cYbbzR63ZYtWzR9+nQNHjxY6enp6tu3r4477ji9//77Me8Tt8LhsHJzczVw4EB17dpVxxxzjD777DMNHjy4yb6oqKjQ9OnTo3mHDRumX//61wqHw5J2fWRcnz59JElz5syJ7lO3T5SJ9MHly5e32a8iVq9erXHjxikjI0NDhgzR/fffH/M++Nvf/qZJkyZp4MCBSk9P19ChQzVv3jzV19c3el2kL69evVpHH320unbtql/84hfR70WexLdixQqNGTNGkjR16tToftj9Iz3bGiMa7o85c+Zojz32UPfu3XXWWWepsrJStbW1mj59uvr27atu3bpp6tSpqq2tdZ17woQJuuiiiyRJY8aMadT/G2Y13b/SrqewHXDAAUpPT9fAgQN11VVXqaKiokl73L7nPffcowMOOEBdu3ZVjx499P3vf1+PP/54XG1z66mnntKIESPUpUsXHXjggXrmmWc0ZcqUZsfFRYsW6YADDlCXLl3Ur18/XX755SovL4++ZvDgwfr000+1cuXKaP+I5UmOkTHl2Wef1YEHHqj09HQdcMABevHFF5t9/XfffadzzjlHWVlZ6tWrl6677jpt3749nt3QSF1dnebNm6ehQ4cqPT1dgwcP1i9+8Ysm/dDtOLP7eSji3Xff1cknn6wePXooMzNTBx98sO6+++6Y2rpp0yZdcskl6tevn7p06aKRI0fqoYceavSayMde/va3v9Vdd92lQYMGKSMjQ+PHj9cnn3zS6LUbN27U1KlTteeeeyo9PV0DBgzQ6aef3uSaw0s1NTW69tpr1bt3b3Xv3l2nnXaavv3222bH2W+//VYXX3yx+vXrF+0ff/rTn6LfdztOtSTy0Y9vvfWWrr/+evXp00eZmZk644wzVFpa2uzPvPzyyxo1apS6dOmiESNG6K9//Wtc++HRRx/VYYcdFj3+jz766CZPB41lzIn3+iRyrfH55597cnz961//il6f5uTk6PTTT1deXl7c7/nKK6/oBz/4gXJyctStWzcNHz48es6ypaNfj8dzXMQqCOdTAAAAADDB/1IPAAAAAC58++23OuaYYxQKhTRz5kxlZmbqwQcfVHp6epPXPvLII7rooot0wgkn6Ne//rW2bdumJUuW6Ac/+IHWrFmjwYMH6/LLL9eGDRv0yiuv6JFHHomrTeXl5TrxxBP1ox/9SOecc46efvpp/fznP9dBBx2kk046qdFrb7vtNoVCIf385z/Xpk2btGjRIk2cOFEffPCBMjIyXL3f2rVr9eyzz+rss8/WkCFDVFJSot///vcaP368PvvsMw0cOLDR6+fNm6e0tDTNmDFDtbW1zT5R65ZbblFlZaXWr1+vu+66S5LUrVu3Rq+ZP3++UlJSNGPGDFVWVuo3v/mNLrjgAr377rtN9scpp5yi8847T2effbaWLFmi8847T4899pimT5+uadOm6f/+7/+0YMECnXXWWfrmm2/UvXt3V9lbc84552jIkCG644479P777+vBBx9U37599etf/1rSrv7w05/+VIcddpguu+wySdLQoUNdbdtxHJ122ml6/fXXdckll2jUqFF66aWXdOONN+rbb7+N7rOIlStX6sknn9S1116r9PR03XfffTrxxBP13nvv6cADD5QkTZs2TU8//bSuvvpqjRgxQps3b9abb76pvLw8HXroocb7ozkzZ87Ub37zG5166qk64YQT9OGHH+qEE05o8kf5bdu2afz48fr22291+eWXa++999bbb7+tmTNnqri4WIsWLVKfPn20ZMkSXXHFFTrjjDP0ox/9SJJ08MEHx9SmWPrVySefrHPOOUfnn3++li9friuuuEJpaWm6+OKLXb/fsmXL1K1bN11//fXq1q2b/vWvf2nWrFmqqqrSggULGr128+bNOumkk3TeeefpwgsvVL9+/Zpsb//999fcuXM1a9YsXXbZZTrqqKMkSePGjWvUdrdjxB133KGMjAzdfPPN+vLLL3XPPfeoc+fOSklJUXl5uXJzc/Wf//xHy5Yt05AhQzRr1ixXuW+55RYNHz5cDzzwgObOnashQ4Y06v9e7d/c3FzNmTNHEydO1BVXXKH8/HwtWbJEq1at0ltvvaXOnTvH9J5/+MMfdO211+qss86KTiD56KOP9O677+r//u//XLcrFs8//7zOPfdcHXTQQbrjjjtUXl6uSy65RHvssUeT115++eVatmyZpk6dqmuvvVaFhYW69957tWbNmmjeRYsW6ZprrlG3bt10yy23SFKzfak1b775pv7617/qyiuvVPfu3fW73/1OZ555poqKitSrV69Grz3nnHM0ePBg3XHHHfrPf/6j3/3udyovL9fDDz8c/06R9NOf/lQPPfSQzjrrLN1www169913dccddygvL0/PPPNM9HVux5nmvPLKKzrllFM0YMAAXXfdderfv7/y8vL03HPP6brrrnPVzpqaGk2YMEFffvmlrr76ag0ZMkRPPfWUpkyZooqKiibbefjhh7VlyxZdddVV2r59u+6++2798Ic/1Mcffxyt05lnnqlPP/1U11xzjQYPHqxNmzbplVdeUVFRUZMJll6ZMmWKli9frh//+Mc6/PDDtXLlSk2aNKnJ60pKSnT44YdHJ1326dNHL7zwgi655BJVVVVp+vTprsYpN6655hr16NFDs2fP1rp167Ro0SJdffXVevLJJxu9rqCgQOeee66mTZumiy66SEuXLtXZZ5+tF198Uccdd5zr95szZ45yc3M1btw4zZ07V2lpaXr33Xf1r3/9S8cff7yk2Mcc0+sTL46vV199VSeddJL22Wcf5ebmqqamRvfcc4+OPPJIvf/++036VFvv+emnn+qUU07RwQcfrLlz5yo9PV1ffvml3nrrLddtihXX4//j9riIVRDOpwAAAABgzAEAAACADuqiiy5yBg0a5Oq111xzjRMKhZw1a9ZE123evNnp2bOnI8kpLCx0HMdxtmzZ4uTk5DiXXnppo5/fuHGjk52d3Wj9VVdd5cR7WzZ+/HhHkvPwww9H19XW1jr9+/d3zjzzzOi6119/3ZHk7LHHHk5VVVV0/fLlyx1Jzt133+36Pbdv3+7U19c3WldYWOikp6c7c+fObfKe++yzj7Nt27ZGr4987/XXX4+umzRpUrN1iLx2//33d2pra6Pr7777bkeS8/HHHzfZH48//nh03eeff+5IclJSUpz//Oc/0fUvvfSSI8lZunSp6+yO4ziSnNmzZ0e/nj17tiPJufjiixu97owzznB69erVaF1mZqZz0UUXxfR+juM4zz77rCPJ+dWvftVo/VlnneWEQiHnyy+/bNQ+Sc5///vf6Lqvv/7a6dKli3PGGWdE12VnZztXXXVVzG2J18aNG51OnTo5kydPbrQ+NzfXkdRov8ybN8/JzMx0vvjii0avvfnmm53U1FSnqKjIcRzHKS0tbVIPt+LpVwsXLoyuq62tdUaNGuX07dvX2bFjh+v33f1YcBzHufzyy52uXbs627dvb/Ke999/f5PXjx8/3hk/fnz061WrVrXYl2MdIw488MBGec4//3wnFAo5J510UqPtHnHEEa7HzYilS5c6kpxVq1Y120bT/btp0yYnLS3NOf744xuNUffee68jyfnTn/4U83uefvrpzgEHHBBTTlMHHXSQs+eeezpbtmyJrluxYoUjqdE+//e//+1Ich577LFGP//iiy82WX/AAQc06jOxkOSkpaU1Gmc+/PBDR5Jzzz33RNdFxsLTTjut0c9feeWVjiTnww8/dP2ekW1FfPDBB44k56c//Wmj182YMcOR5PzrX/9yHCe2cWb381BdXZ0zZMgQZ9CgQU55eXmjnw+Hw67bvmjRIkeS8+ijj0bX7dixwzniiCOcbt26Rc/BhYWFjiQnIyPDWb9+ffS17777riPJ+dnPfuY4juOUl5c7kpwFCxa4boOp1atXO5Kc6dOnN1o/ZcqUJmPuJZdc4gwYMMD57rvvGr32vPPOc7Kzs6NjXmvjVFsiY8fEiRMb1eJnP/uZk5qa6lRUVETXDRo0yJHk/OUvf4muq6ysdAYMGOAccsghrt+zoKDASUlJcc4444wm1zyRNsQz5sR7feLl8RUZ5zZv3hxd9+GHHzopKSnOT37yk5jf86677nIkOaWlpa7bYIrr8diOi92vG9rix/PpoEGDnEmTJsX98wAAAAAQDz7mFQAAAABcePHFF3XEEUdo1KhR0XU9e/bUBRdc0Oh1r7zyiioqKnT++efru+++i/5LTU3V2LFj9frrr3vWpm7duunCCy+Mfp2WlqbDDjtMa9eubfLan/zkJ42ecnLWWWdpwIAB+uc//+n6/dLT05WSsus2sr6+Xps3b45+pFdzHxF60UUXxfyUjeZMnTq10VPtIk+22T1nt27ddN5550W/Hj58uHJycrT//vtr7Nix0fWR5eb2UzymTZvW6OujjjpKmzdvVlVVlfG2//nPfyo1NVXXXntto/U33HCDHMfRCy+80Gj9EUccodGjR0e/3nvvvXX66afrpZdein6caE5Ojt59911t2LDBuH1uvPbaa6qrq9OVV17ZaP0111zT5LVPPfWUjjrqKPXo0aPR8TNx4kTV19c3+chaE277VadOnXT55ZdHv05LS9Pll1+uTZs2afXq1a7fr+GxsGXLFn333Xc66qijtG3bNn3++eeNXpuenq6pU6fGlKc5sY4RDZ82M3bsWDmO0+TpcGPHjtU333yjuro64/ZJ3uzfV199VTt27ND06dOjY5QkXXrppcrKytLzzz8f83vm5ORo/fr1WrVqlUk81zZs2KCPP/5YP/nJTxo9nXP8+PE66KCDGr32qaeeUnZ2to477rhGx8no0aPVrVs3T88zEydObPQkwYMPPlhZWVnN9qGrrrqq0deRYzyW88zuIj97/fXXN1p/ww03SFK0trGMM7tbs2aNCgsLNX36dOXk5DT6Xiwf9/jPf/5T/fv31/nnnx9d17lzZ1177bWqrq7WypUrG71+8uTJjZ46eNhhh2ns2LHRzBkZGUpLS9OKFSsafXyvTZGP8G1rPzqOo7/85S869dRT5ThOo354wgknqLKy0tOPDr/ssssa1eKoo45SfX29vv7660avGzhwoM4444zo11lZWfrJT36iNWvWaOPGja7e69lnn1U4HNasWbMajSfS//pDrGOOF9cnpsdXcXGxPvjgA02ZMkU9e/aMrj/44IN13HHHNbudtt4zcrz87W9/i34Uu21cj/+P2+MiFkE4nwIAAACAF5hMBwAAAAAufP311xo2bFiT9buvKygokCT98Ic/VJ8+fRr9e/nll7Vp0ybP2rTnnns2+UN/jx49mv2j+7777tvo61AopGHDhmndunWu3y8cDuuuu+7Svvvuq/T0dPXu3Vt9+vTRRx99pMrKyiavHzJkiOttt2bvvfdu9HWPHj0kqUnO5vZHdna29tprrybrmvt52+2Lx9dff62BAwc2+bi3/fffP/r9hnavsyTtt99+2rZtm0pLSyVJv/nNb/TJJ59or7320mGHHabc3FzPJhY2J9LG3Y+Vnj17RvdVREFBgV588cUmx87EiRMlydPjx23dBg4cqMzMzEbr9ttvP0mK6fj59NNPdcYZZyg7O1tZWVnq06dP9I/vux8/e+yxR7MfixyrWMaI3fdH5Dhp7vgJh8PNHvPx8GL/RvrY8OHDG61PS0vTPvvs0+yEm7be8+c//7m6deumww47TPvuu6+uuuoqqx9d2NJx0ty6goICVVZWqm/fvk2OlerqaqvHieT+PDN06FClpKTEdJzs7uuvv1ZKSkqTfdC/f3/l5ORE91ss48zuvvrqK0mKfhS2SVv33XffJhOwYh2vI/srPT1dv/71r/XCCy+oX79+Ovroo/Wb3/zG9aSweET29+7n7933a2lpqSoqKvTAAw806YORicDtMV4PGzasyZgX63jy1VdfKSUlRSNGjGjxNbGOOV5cn5geXy21WdrVR7/77jtt3bo1pvc899xzdeSRR+qnP/2p+vXrp/POO0/Lly+3OrGO6/H/sXH9GYTzKQAAAAB4oVN7NwAAAAAAgiTyB8RHHnlE/fv3b/L9Tp28uw1LTU1tdr3jOJ69R0O33367br31Vl188cWaN2+eevbsqZSUFE2fPr3ZP5x68VQ6yX3Oll5nez8lug6mzjnnHB111FF65pln9PLLL2vBggX69a9/rb/+9a866aST2rVt4XBYxx13nG666aZmvx/5A60XElm3iooKjR8/XllZWZo7d66GDh2qLl266P3339fPf/7zJsdPoo+d1l6bbP3bK/vvv7/y8/P13HPP6cUXX9Rf/vIX3XfffZo1a5bmzJnTrm0Lh8Pq27evHnvssWa/36dPH8/ey6T+sTzVLZHbSibTp0/XqaeeqmeffVYvvfSSbr31Vt1xxx3617/+pUMOOaTd2hUZsy688EJddNFFzb7m4IMP9uz9kn0csjG+tscxsft7ZmRk6I033tDrr7+u559/Xi+++KKefPJJ/fCHP9TLL7/cYr5ECPL1eHu/b6z8fD4FAAAAgJYwmQ4AAAAAXBg0aJC+/PLLJut3Xxf5OLy+fftGn6bVkkT+ITTyhI4Ix3H05ZdfxvTH7qefflrHHHOM/vjHPzZaX1FRod69e8fdto4wSSLejIMGDdKrr76qLVu2NHo6XeRjQQcNGtTo9bvXWZK++OILde3atdEEmwEDBujKK6/UlVdeqU2bNunQQw/VbbfdZmUyXaSNX375ZaOnHW3evLnJ01OGDh2q6upqXx07GzZs0NatWxs9eeWLL76QJA0ePNjVNlasWKHNmzfrr3/9q44++ujo+sLCQqO2BeHY8WL/RvpYfn6+9tlnn+j6HTt2qLCwsEl/cvuemZmZOvfcc3Xuuedqx44d+tGPfqTbbrtNM2fOVJcuXWLK6TaD2/PMq6++qiOPPLLNiZeJPs80PMa//PJLhcNh13VszqBBgxQOh1VQUBB9wpsklZSUqKKiIrrfYhlndhc5b3/yySdtjj1ttfWjjz5SOBxu9HS6WMfr3ffX0KFDdcMNN+iGG25QQUGBRo0apYULF+rRRx+Nu62tZQiHwyosLGz0BK3d+2CfPn3UvXt31dfX+2q8/vLLL+U4TqP3jHU8GTp0qMLhsD777LNGHyXaUKxjjhdMj6+Gbd7d559/rt69ezd5wpib90xJSdGxxx6rY489Vnfeeaduv/123XLLLXr99det7Aeux+0KwvkUAAAAALzAx7wCAAAAgAsnnHCC3nnnHX3wwQfRdWVlZU2eDHTCCScoKytLt99+u3bu3NlkO5GP2pQU/cNTRUWFlTY39PDDD2vLli3Rr59++mkVFxfHNHkqNTW1ydMunnrqKX377bdGbcvMzPTsIyP9KjMzM646n3zyyaqvr9e9997baP1dd92lUCjUpH7vvPOO3n///ejX33zzjf72t7/p+OOPV2pqqurr65vs6759+2rgwIGqra2NuX1uHHvsserUqZOWLFnSaP3umaRdT81755139NJLLzX5XkVFherq6iRJXbt2ja6zra6uTr///e+jX+/YsUO///3v1adPH40ePdrVNiJPj2l4/OzYsUP33XefUdsSOYbY4sX+nThxotLS0vS73/2u0T7+4x//qMrKSk2aNCnm99y8eXOjn0lLS9OIESPkOE6zY7upgQMH6sADD9TDDz+s6urq6PqVK1fq448/bvTac845R/X19Zo3b16T7dTV1TXqD/GOPfFYvHhxo6/vueceSTKapHvyySdLkhYtWtRo/Z133ilJ0drGMs7s7tBDD9WQIUO0aNGiJvsqlic8nXzyydq4caOefPLJ6Lq6ujrdc8896tatm8aPH9/o9c8++2yj8+d7772nd999N7q/tm3bpu3btzf6maFDh6p79+7WxusTTjhBkpqMTZFaRqSmpurMM8/UX/7yF33yySdNttNe1zobNmzQM888E/26qqpKDz/8sEaNGtXs08maM3nyZKWkpGju3LlNnhoa6Q+xjjleMD2+BgwYoFGjRumhhx5qVItPPvlEL7/8cvRYi+U9y8rKmvxMZAKizT7a0a/HbQrC+RQAAAAAvMCT6QAAAADAhZtuukmPPvqojjvuOF1zzTXKzMzUgw8+qL333ltlZWXRp1pkZWVpyZIl+vGPf6xDDz1U5513nvr06aOioiI9//zzOvLII6N/3I/8kenaa6/VCSecoNTUVJ133nlW2t+zZ0/94Ac/0NSpU1VSUqJFixZp2LBhuvTSS11v45RTTtHcuXM1depUjRs3Th9//LEee+yxRk+uiMfo0aP15JNP6vrrr9eYMWPUrVs3nXrqqUbb9JvRo0fr1Vdf1Z133qmBAwdqyJAhGjt2bJs/d+qpp+qYY47RLbfconXr1mnkyJF6+eWX9be//U3Tp0+PPnkl4sADD9QJJ5yga6+9Vunp6dEJEZGP0dqyZYv23HNPnXXWWRo5cqS6deumV199VatWrdLChQtbbcuUKVP00EMPqbCwMKYnTfXr10/XXXedFi5cqNNOO00nnniiPvzwQ73wwgvq3bt3oyfC3Hjjjfr73/+uU045RVOmTNHo0aO1detWffzxx3r66ae1bt069e7dWxkZGRoxYoSefPJJ7bfffurZs6cOPPBAHXjgga7b5dbAgQP161//WuvWrdN+++2nJ598Uh988IEeeOABde7c2dU2xo0bpx49euiiiy7Stddeq1AopEceecT4o9iGDh2qnJwc3X///erevbsyMzM1duzYRk8S8jsv9m+fPn00c+ZMzZkzRyeeeKJOO+005efn67777tOYMWN04YUXxvyexx9/vPr3768jjzxS/fr1U15enu69915NmjSp0VMid7ds2TJNnTpVS5cu1ZQpU2LaF7fffrtOP/10HXnkkZo6darKy8t177336sADD2w0wW78+PG6/PLLdccdd+iDDz7Q8ccfr86dO6ugoEBPPfWU7r77bp111lmSdo09S5Ys0a9+9SsNGzZMffv21Q9/+MOY2uVWYWFh9Bh/55139Oijj+r//u//NHLkyLi3OXLkSF100UV64IEHoh+X/N577+mhhx7S5MmTdcwxx0iKbZzZXUpKipYsWaJTTz1Vo0aN0tSpUzVgwAB9/vnn+vTTT5ud3Nucyy67TL///e81ZcoUrV69WoMHD9bTTz+tt956S4sWLWrSb4YNG6Yf/OAHuuKKK1RbW6tFixapV69e0Y+5/uKLL3TsscfqnHPO0YgRI9SpUyc988wzKikpafNaYcKECVq5cmXMY8zo0aN15plnatGiRdq8ebMOP/xwrVy5MvqkqYb7cf78+Xr99dc1duxYXXrppRoxYoTKysr0/vvv69VXX41OtErkOLXffvvpkksu0apVq9SvXz/96U9/UklJiZYuXep6G8OGDdMtt9yiefPm6aijjtKPfvQjpaena9WqVRo4cKDuuOOOmMccL3hxfC1YsEAnnXSSjjjiCF1yySWqqanRPffco+zsbOXm5sb8nnPnztUbb7yhSZMmadCgQdq0aZPuu+8+7bnnnvrBD37QYjvWrVunIUOG6KKLLtKyZcti2g9cj9vlp/MpAAAAALQrBwAAAAA6qIsuusgZNGiQ69evWbPGOeqoo5z09HRnzz33dO644w7nd7/7nSPJ2bhxY6PXvv76684JJ5zgZGdnO126dHGGDh3qTJkyxfnvf/8bfU1dXZ1zzTXXOH369HFCoZATyy3a+PHjnQMOOKDNTK+//rojyfnzn//szJw50+nbt6+TkZHhTJo0yfn6669dv5/jOM727dudG264wRkwYICTkZHhHHnkkc4777zjjB8/3hk/fnyT93zqqaeabCPyvddffz26rrq62vm///s/Jycnx5EUbX9L2yksLHQkOUuXLm1zfwwaNMiZNGlSk/WSnKuuuiqm/JKc2bNnR7+ePXu2I8kpLS1t9LqlS5c6kpzCwsLous8//9w5+uijnYyMDEeSc9FFF7l+3y1btjg/+9nPnIEDBzqdO3d29t13X2fBggVOOBxuNtOjjz7q7Lvvvk56erpzyCGHNNrXtbW1zo033uiMHDnS6d69u5OZmemMHDnSue+++9psx5lnnulkZGQ45eXlrtseUVdX59x6661O//79nYyMDOeHP/yhk5eX5/Tq1cuZNm1ak7wzZ850hg0b5qSlpTm9e/d2xo0b5/z2t791duzYEX3d22+/7YwePdpJS0trUpvWxNOv/vvf/zpHHHGE06VLF2fQoEHOvffeG/M+eOutt5zDDz/cycjIcAYOHOjcdNNNzksvvdTkeGipL0e+1/BYcxzH+dvf/uaMGDHC6dSpU6P2xzpG7L4/Iv141apVjda31O9b09K2vNy/juM49957r/O9733P6dy5s9OvXz/niiuuaNJf3b7n73//e+foo492evXq5aSnpztDhw51brzxRqeysrLVNtxzzz2OJOfFF1+MK8MTTzzhfO9733PS09OdAw880Pn73//unHnmmc73vve9Jq994IEHnNGjRzsZGRlO9+7dnYMOOsi56aabnA0bNkRfs3HjRmfSpElO9+7dHUlN+k9rWhonBw0a1GgMi/SJzz77zDnrrLOc7t27Oz169HCuvvpqp6amJqb8kW01tHPnTmfOnDnOkCFDnM6dOzt77bWXM3PmTGf79u2NXud2nGnuPOQ4jvPmm286xx13XHRsPPjgg5177rknpvaXlJQ4U6dOdXr37u2kpaU5Bx10UKMxxXH+N9YsWLDAWbhwobPXXns56enpzlFHHeV8+OGH0dd99913zlVXXeV873vfczIzM53s7Gxn7NixzvLly9tsx+jRo53+/fvH1PaIrVu3OldddZXTs2dPp1u3bs7kyZOd/Px8R5Izf/78JnmvuuoqZ6+99nI6d+7s9O/f3zn22GOdBx54oNHrWhqn2tLS2NFcDSPn+5deesk5+OCDnfT0dOd73/tes9cibvzpT39yDjnkECc9Pd3p0aOHM378eOeVV15p9JpYxpzdub0+8fL4chzHefXVV50jjzzSycjIcLKyspxTTz3V+eyzzxq9xu17vvbaa87pp5/uDBw40ElLS3MGDhzonH/++c4XX3zRahs+/vhjR5Jz8803x9x+x+F6PJbjornrBjf8cD6NaOlYAQAAAACbQo5j+L9BAwAAAECSmjJliv71r3/p/fffV6dOnZSTkxPzNqZPn67f//73qq6ujn6UI9AeQqGQrrrqKlcfaxiPfv366Sc/+YkWLFjgyfYqKirUo0cP/epXv9Itt9ziyTaRXCZMmKDvvvuu2Y+JTNb3POecc7Ru3Tq9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xcWSpNzcXD300EP629/+Fq1NpG6t+fjjj/XDH/5QGRkZ6tWrly677DJVV1c32W9z5sxRnz59lJWVpWnTpmnHjh3R1zz99NM66KCDotuYOHGitm7d2tzbeYLJdAAAAAAAAAAAAAAAAACMXX/99Xrrrbf097//Xa+88or+/e9/6/33349+/+qrr9Y777yjJ554Qh999JHOPvtsnXjiiSooKNC4ceO0aNEiZWVlqbi4WMXFxZoxY4ar9124cKG+//3va82aNbryyit1xcw7lP/lukavuXHeIt1w+Y+15qXHdcTog3XqlOnaXFbR5rbD4bD23HNPPfXUU/rss880a9Ys/eIXv9Dy5csbve61115Tfn6+XnnlFT333HNNtrNq1SpJ0tI7c1W85mWt+uej0e999fV6PfvSCj330N167qFFWvmf9zX/3qWNfv6hp55T79699d577+maa67RFVdcobPPPlvjxo3T+++/r+OPP14//vGPtW3bNlf7bHfbtm3Tb3/7Wz3yyCN64403VFRUFN3/M2bM0DnnnBOdYFdcXKxx48a1ur2tW7fqhBNOUI8ePbRq1So99dRTevXVV3X11Vc32W95eXlasWKF/vznP+uvf/2r5syZI0kqLi7W+eefr4svvjj6mh/96EdyHCeujG7wMa8AAAAAAAAAAAAAAAAAjGzZskUPPfSQHn/8cR177LGSpKVLl2rgwIGSpKKiIi1dulRFRUXRdTNmzNCLL76opUuX6vbbb1d2drZCoVDMH0F68skn68orr5Qk/fznP9ddCxfo9bf/q+HDBkdfc/XUc3XmpF3tWnLHTL34+tv64xPP6qYrp7S67c6dO0cnd0nSkCFD9M4772j58uU655xzouszMzP14IMPKi0trdntRD7yNSe7u/r37d3oe+FwWMvumqPu3TIlST8+82S99uZ7uq3Ba0aO2Fe//OUvJUkzZ87U/Pnz1bt3b1166aWSpFmzZmnJkiX66KOPdPjhh7eaqTk7d+7U/fffr6FDh0raNfFx7ty5kqRu3bopIyNDtbW1rmvz+OOPa/v27Xr44YeVmbkr17333qtTTz1Vv/71r9WvXz9Juz5y9k9/+pO6du2qAw44QHPnztWNN96oefPmqbi4WHV1dfrRj36kQYMGSZIOOuigmLPFImmfTBcOh423UV9fH52p2Nay4zhNliW5Xo60NxwO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VWVlpUKhkEKhkHJzc9t8z8GDB+v222/XxRdfrO7du2vvvffWA4/+pcnrPv9qncadNkVd9jlcB/7wbK18Z7WrTPX19brkkks0ZMgQZWRkaPjw4br77rsbvWbKlCmaPHmybrvtNg0cOFDDhw+Pti3yMa+DBw+WJJ1xyQ0K7XGoBo+d1Ggbjzz9nAaPnaTs7x2t8664WVuqt0a/N+GsS3XNL3+t6dOnq0ePHurXr5/+8Ic/aOvWrZo6daq6d++uYcOG6YUXXmgzz7p16xQKhbR582ZdfPHFCoVCWrZsmVasWKFQKKTnn39eBx98sLp06aLDDz9cn3zyiav9JEl/+ctfdMABByg9PV2DBw/WwoULG31/8ODBmjdvns4//3xlZmZqjz320OLFi6PfdxxHubm52nvvvZWenq6BAwfq2muvdf3+XmAyHQAAAAAAAAAAAAAAAABj119/vd566y39/e9/1yuvvKJ///vfev/996Pfv/rqq/XOO+/oiSee0EcffaSzzz5bJ554ogoKCjRu3DgtWrRIWVlZKi4uVnFxsWbMmOHqfRcuXKjvf//7WrNmja688kpdMfMO5X+5rtFrbpy3SDdc/mOteelxHTH6YJ06Zbo2l1W0ue1wOKw999xTTz31lD777DPNmjVLv/jFL7R8+fJGr3vttdeUn5+vV155Rc8991yT7axatUqStPTOXBWveVmr/vlo9Htffb1ez760Qs89dLeee2iRVv7nfc2/d2mjn3/oqefUu3dvvffee7rmmmt0xRVX6Oyzz9a4ceP0/vvv6/jjj9ePf/xjbdu2rdU8e+21l4qLi5WVlaVFixapuLhY55577v/20403auHChVq1apX69OmjU089VTt37mxzP61evVrnnHOOzjvvPH388cfKzc3VrbfeqmXLljV63YIFCzRy5EitWbNGN998s6677jq98sorknZNxrvrrrv0+9//XgUFBXr22Wd10EEHtfneXuqU0HcDAAAAAAAAAAAAAAAAEDhbtmzRQw89pMcff1zHHnusJGnp0qUaOHCgJKmoqEhLly5VUVFRdN2MGTP04osvaunSpbr99tuVnZ2tUCik/v37x/TeJ598sq688kpJ0s9//nPdtXCBXn/7vxo+bHD0NVdPPVdnTtrVriV3zNSLr7+tPz7xrG66ckqr2+7cubPmzJkT/XrIkCF65513tHz5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OjpQWlraIwbHoIx/YzinwEn4/X5x27IsV23LsnqMW0e7mGOScsZjUkz5ypOE7phy5cU8uYlJwtSYdOdJBd0xSXglT9nGkSuTY9KZJ6m+rqHZttPHLuHE6JU8mVQ7ir1GqK4dumOS8Fqe3M49FUyLyfS9kds4co1Jwot50lnTkvsxLaZi2BsN1LO7qetJwtSYdOdJBVP3Rl7KUzZzT8LUmHTnSSJfMeVC59m9GNZTrkyOSWeeJEw9uyePxyt5ykd9y6V2FGONUD3fTD27A97Mk5s4JHKtHcVWI1TPt/Q9qeqYJLyYp0wxJb9uoTivnzyOvtrJ39/bv925cyf8fj82b97co2aPGDEi479z0y4pKenx+s5Di9lKH8OwYcN6/bqbdnJM6WMEgMGD/vPolgX3Y871fXLzb5P/fPnll+Pkk0/Gn/70J/y///f/cOutt2L16tX4zne+k3FMprTT17zb9aSmWhERERERERERERERERERERER0YA1ZcoUDB48GK+++mriax0dHXjnnXcAADNnzkQsFsOOHTswderUlP/GjRsHoPuBM+dXdqr20uv/l2hHo1FsfjOAg6dV9PvvDjvsMGzatCnx60aTlZaWYsKECXjhhRdSvv7CCy9g+vTp4jFv/VcdOjt3Jf780ksvYcSIEYlPkstk//33R0lJScq4du/ejVdffbXHuF566aVEu62tDe+88w4OPvjgxNf2228/LFq0CE888QSuvfZa3HfffdKwjFa0n0xHRERERERERERERERERERERERmGDlyJBYuXIhly5Zh9OjR2HvvvVFVVQWfr/tXbR5wwAG48MILcdFFF2H16tWYOXMmWltbsWHDBhx22GE47bTTMHnyZITDYWzYsAGHH344hg8fjuHDhysZX836xzCtYiIOnlaBO37+ENo6Qrj0/DP7/XdXXXUVfvrTn+L888/HDTfcgLKyMrz00ks44ogjcOCBB2LZsmWoqqrC/vvvjxkzZmDdunXYsmULHnroIfGYu3bvxmVLV+GH3/smtn3wEaqqfoyrrrqq30973GOPPbB48eJELiZOnIj//u//xmeffYbLLrss5XtXrVqFPffcE2PHjsWNN96IMWPG4KyzzgIAXH311TjllFNwwAEHoK2tDc8991zKg3ZexIfpiIiIiIiIiIiIiIiIiIiIiIhI7Pbbb8eiRYtw+umno7S0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JsnYdJ7dDVtPkUgE9fX1qKiowLC2t3N/zwDY42fAsgr/SWFu2r3JtT+reUuO75ja96zXmARjw4SZnsqT6nZnZye2bduGiooKDB48OKUWhMNhlJeXo6OjI/GJg70p2l/z6hQ4Cb/fL25bluWqbVlWj3HraBdzTFLOeEyKKV95ktAdU668mCc3MUmYGpPuPKmgOyYJr+Qp2zhyZXJMOvMk1dc1NNt2+tglnBi9kieTakex1wjVtUN3TBJey5PbuaeCaTGZvjdyG0euMUl4MU86a1pyP6bFVAx7o4F6djd1PUmYGpPuPKlg6t7IS3nKZu5JmBqT7jxJ5CumXOg8uxfDesqVyTHpzJOEqWf35PF4JU/5qG+51I5irBGq55upZ3fAm3lyE4dErrWj2GqE6vmWvidVHZOEF/OUKabk15Vw+kjuy+R2XzGo6q8/qt8z1byYJx3t9DXvNidqqhURERERERERERERERERERERERFREePDdERERERERERERERERERERERERDTg8WE6IiIiIiIiIiIiIiIiIiIiIiIiGvD4MB0REREREREREREREREREREREXnStg8+grXP57Hln7XaXqO6uhozZszQ1j/lz6BCD4CIiIiIiIiIiIiIiIiIiIiIiPpWs6oth3/115xf78p7Tsj53+Zq/fr1uPrqq9He3p731yYC+Ml0RERERERERERERERERERERERERHyYjoiIiIiIiIiIiIiIiIiIiIiI5D799FNceOGF2GOPPTB+/HjccccdmDdvHq6++moAQCQSwdKlS7HPPvtgjz32wJFHHomNGzcCADZu3IhLLrkEHR0dsCwLlmWhurq639ecPHkybr75Zlx66aUYOXIkJk6ciJ//8vEe3/f2e9sw94yLMXTKUTj0hHPx/IubXcW0ceNGWJaFDRs2YPbs2Rg+fDjmzp2L2trcfm1sPB7Hqjt+jn1nnYwhFUdixhfPx5+feyHx986vpX3k989kHG9bWxsuvPBC7LXXXhg2bBimTZuGdevW5TQeSsWH6YiIiIiIiIiIiIiIiIiIiIiISGzJkiV44YUX8OSTT+LZZ5/Fpk2b8Prrryf+/qqrrsKLL76IRx55BG+++SbOPfdcnHzyyairq8PcuXOxZs0alJaWorm5Gc3NzVi6dKmr1129ejVmz56NN954A1dccQUW33ALat/dlvI9y25a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4cN0REREREREREREREREREREREQk9sYbb+Dtt9/GEUccgY6ODqxatQoAcOaZPX+dKpGJ+DAdEREREREREREREREREREREREpcdttt6G2thYlJSWYNWsWNm3alPj1pNnatGkTTjnllIx/Hw6Hcx1mwqLv/xi/fOKp/3zB8iWaX//613HPPfdk1d+IESMy/t3TTz+NY/bP/PdUeHyYjoiIiIiIiIiIiIiIiIiIiIiIxGbOnInNmzcr62/27NnYsmWLsv56s2rZYixd9I3/fGHsIYlmaWlp1v31Nd599tkHaHu7z3+f/GtpKf/4MB0RERERERERERERERERERERERln2LBhmDp1qtbX2HvMaOw9ZvR/vjBB9nr9jrdN1D1p5uv/W4iIiIiIiIiIiIiIiIiIiIiIiIi8jQ/TEREREREREREREREREREREREZxrbtQg+BqKjE43FxH/w1r0REREREREREREREREREREREhhg8eDAsy0Jrayv2sm1YlqCzXbuUjauoRAUPIup+z0weW5GybRtdXV1obW2Fz+dDSUlJzn3xYToiIiIiIiIiIiIiIiIiIiIiIkP4/X7su+++aGpqwra2VllnOxvUDKrYtAveN93vmcljK3LDhw/HxIkT4fPl/sta+TAdEREREREREREREREREREREZFBRowYgWnTpmH37edA9NF0V72mblDF5Gfn5v5vdb9nJo+tiPn9fgwaNAiW6KMc+TAdEREREREREREREREREREREZFx/H4//DubZJ0MHapmMMUm/EHu/1b3e2by2Ai5f6YdERERERERERERERERERERERERkUcU7cN08Xhc3EcsFoNt267atm33aANw3XbGG4/HtbTdxmFyTFImxpSvPEnoiknKi3lyE5OEqTHpzpMKumJSwSt5ymbuSZgak+48SemMScJreSpE7TAlpnzkSUJ3TBJey5PbtgqmxZSvPOVKd0wSXsyTzv2Q04+JMenOkwo6Y5KOyyt5KmTtMCEm3XlSQVdMUl7KUzZzT8LUmHTnSUJ3TBJey5PbuSdlYkz5yJOEzphUjK23MRZrnty2JUyNSXeepHTHJOGlPGUz9yRMjUl3nqR0xyThpTxlM/ckTI1Jd54k8hGTdHxeyZOJ66loHqarqanB9OnTUVlZCQDYvn27uM/6+nqEw2EAQF1dHTo7OwEAtbW1iEQiAIBAIIBoNIp4PI5AIIB4PI5oNIpAIAAAiEQiqK2tBQB0dnairq4OABAOh1FfXw8ACIVCaGhoAAC0t7ejsbERABAMBtHU1P1xnK2trWhubgYAtLS0oKWlBQDQ3NyM1tZWAEBTUxOCwSAAoLGxEe3t7QCAhoYGhEKhoo9JysSY8pUnCV0xSXkxT25ikjA1Jt15UkFXTCp4JU/ZzD0JU2PSnScpnTFJeC1PbueeCqbFlI88SeiOScJreXI791QwLSbT90a6Y5LwYp7cxCR9z0yMSXeeVBhoZ3fT15OEqTHpzpMKumKS8lKespl7EqbGpDtPErpjkvBantzOPSkTY8pHniRMPbsD8Fye3M49CVNj0p0nKVPP7gA8lads5p6EqTHpzpOUyT/X8FKespl7EqbGpDtPEgP95xoDfT1ZtorHWPMoFAqhrKwMbW1tKF8zKfeOqjsQi8Xg8/lgWVa/baD7gpHc9vv9iScm+2vbtg2fz5d4ElJ127IsV3GYHBOqy3LPJwC7qt24mPKSp5tG5/6mVXekjLFm0V9z7wvAFWuPT4xdNC5059NTeXI59yTrIL6izciYdOdJWjtQ3ZEydsk6WHz3vJQx+laNEo/NK3nKZu5ZK8tzfsvsqnYjY9KdJxXX0OTx3r34uZz7umLt8Sljl+QzvqLNU3ly21ZZO0yJKR95UnkNXXvFxpz7AoAr7zkhZeySscWWBz2VJ7dzT1I7APTY55oQU17yJLyGJo9Xci0AutdBYozCuhZbHvRWnlzOPVW1w6SYdOdJxTU0OSbJ2WBRzXHqzu7o+7znpm1SnrJpS9eBiTHpzpPqa6j0jJwck/Qelpfy5Hru5al2FGuN0Fk7nJjuufL5nPsC1N4rSj+7F3ue3M491feZTYgpH3ky6YycfK9Ieg9Lcq8ouW1Knty2ddWOQsakO0+qr6GSdbD47nmpMQn3a27uFRVLnrKZe/m8z1xsNSJTW3pGdq6hTkySe0XJ6wAQ3itKO7sXe56S233GpKl2eKVGZIpJMtfSa4d0T7So5jh116p+7n9n2y50nlTF4SamcDiM8vJydHR0oLS0NONbPCj37BSWkxAJv98vbluW5aptWVaPcetoF3NMUs54TIopX3mS0J0DSV9ey5ObmCRMjUl3nlTQsZ5UjdEreco2jlyZHJPOPEnprN8SToxeyVM+65upMenMk4TuHKjoxyt5cjv3VDAtJtP3RrpzIOHFPOmsacn9mBZTMeyNVM9b3WeNYs5TofdDye1irBE6akdvY1HVj46zRjHnKZu5J2FqTLrzJGHyWaOv+9/Ztk3IU772RibHpDNPEjrPGlIq7hWZlKd81Ldcakcx1giT63dv81bCi3lyE4dErrWj2GpEsdVvFf0B3smTm5gkTI3J5L2Rrvqd3s6VF/OUj5jcXlPUZJ2IiIiIiIiIiIiIiIiIiIiIiIioiPFhOiIiIiIiIiIiIiIiIiIiIiIiIhrw+DAdERERERERERERERERERERERERDXh8mI6IiIiIiIiIiIiIiIiIiIiIiIgGPD5MR0RERERERERERERERERERERERAMeH6YjIiIiIiIiIiIiIiIiIiIiIiKiAY8P0xEREREREREREREREREREREREdGAx4fpiIiIiIiIiIiIiIiIiIiIiIiIaMAbVOgBEJE5rhx3trCHDiXjICok2TrgGiBv4DqggY57IiKuAyKAeyIigOuAiHsiIq4DIoB7IiKA64CIe6KBhZ9MR0RERERERERERERERERERERERAMeH6YjIiIiIiIiIiIiIiIiIiIiIiKiAY8P0xEREREREREREREREREREREREdGAx4fpiIiIiIiIiIiIiIiIiIiIiIiIaMDjw3REREREREREREREREREREREREQ04PFhOiIiIiIiIiIiIiIiIiIiIiIiIhrw+DAdERERERERERERERERERERERERDXh8mI6IiIiIiIiIiIiIiIiIiIiIiIgGPD5MR0RERERERERERERERERERERERAMeH6YjIiIiIiIiIiIiIiIiIiIiIiKiAY8P0xEREREREREREREREREREREREdGAx4fpiIiIiIiIiIiIiIiIiIiIiIiIaMDjw3REREREREREREREREREREREREQ04BXkYbqGhgYcf/zxmD59Oj73uc9h586dhRgGEREREREREREREREREREREREREQBgUCFe9OKLL8aPfvQjHHPMMQgGgxgyZEghhkFEREREREREREREREREREREREQEoAAP07311lsYPHgwjjnmGADA6NGj8z0EIiIiIiIiIiIiIiIiIiIiIiIiohRZ/5rXv/3tb1iwYAEmTJgAy7Lwu9/9rsf31NTUYPLkyRg6dCiOPPJIvPLKK4m/q6urw4gRI7BgwQJ8/vOfx803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lfVb9X3mQteITHkyrX4nxyTdYyXnQOUZKHmM2bbzUfdMyUFftSPbmHRfc1X+nNCk+q3y7A64u1dkQt1TXb/zeZ+5kHsjU2oHoPas0SMHCvZ+Ruxh+2krvc+sqXaYuDdS+XNCVfUbUHePE1D/c0KT90am/ZwwHA6jvLwcHR0dKC0tzfjag3IedYE5CZHw+/3itmVZrtqWZfUYt452IWKSUJFHhzOeYsiTRG9jl9CdA0lfhc5TtmsoVzrWk0k1Qsc6UDlvAT3rSfWaz7adz7onpbp2mFojVNcOk3OQPMcknBgLnSc360mqt1glTKoRuuqIynmru36r6MeEPOneD6mqHQ6TakSmPEmprB26cyBR6DwV4rynqh/TaoTq2pE8BtPOGjrP7ibvjVQoRO0wYW+UK5V7UoeO9aT7XpFJdU+FQtWOQl9zJXTXjlzpPgOZujeS0H3WKHSN0Fk7dKwn065VKu4V5avuSRS6dhTqmitl6r0iXff9vL43MuE+cyGuuRLFVr9V9AcMrL2Rin5MqxE6aoeqs4au+p3ezpUJeXKzniRU7P3Sx+h2TOp2KERERERERERERERERERERERERERFig/TERERERERERERERERERERERER0YDHh+mIiIiIiIiIiIiIiIiIiIiIiIhowOPDdERERERERERERERERERERERERDTg8WE6IiIiIiIiIiIiIiIiIiIiIiIiGvD4MB0RERERERERERERERERERERERENeHyYjoiIiIiIiIiIiIiIiIiIiIiIiAY8PkxHREREREREREREREREREREREREAx4fpiMiIiIiIiIiIiIiIiIiIiIiIqIBr2gfpovH4+I+YrEYbNt21bZtu0cbgOu2M954PK6l7TYOHTFJJMchVUx5kuht7BKqcwBAybhMyJPb9aQiVtXryaQakWlc0lhVrCeHjvWkal0VOk9u2lK9xSfpy7Qa0VeeJEzOQfIckzAlT27aUrpqhwk1oq+2hK71pKN+S/sBimdvlCuVtcNhUo3IlCcVMabHlCvdOZAodJ7yuTfSUTtMqhG95UlKdf1WddbQeXY3eW+kgs7aYUKNUF070mNSQVUO0ueelAl5crOeVMh37fDC3kh17TDxrGFKnvK5H9JROwpdIzLlSQUd60lFf7run5i+N5LGmY/aYdreSMrU+t3b3JModJ7cricplWcNE2tE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O7UjEZPiHEjXe8Hz5LKtsn6rvs9c6BqRKU+m1e/kmKR7rOQcqDwDJY8x23Y+6p4pOeirdmQbk+5rrsqfE5pUv1We3QF394pMqHuq63c+7zMXcm9kSu0A1J41euRAwd7PiD1sP22l95k11Q4T90Yqf06oqn4D6u5xAup/Tmjy3si0nxOGw2GUl5ejo6MDpaWlGV97UM6jLjAnIRJ+v1/ctizLVduyrB7j1tEuREwSKvLocMZTDHmS6G3sErpzIOmr0HnKdg3lSsd6MqlG6FgHKuctoGc9qV7z2bbzWfekVNcOU2uE6tphcg6S55iEE2Oh8+RmPUn1FquESTVCVx1ROW91128V/ZiQJ937IVW1w2FSjciUJymVtUN3DiQKnadCnPdU9WNajVBdO5LHYNpZQ+fZ3eS9kQqFqB0m7I1ypXJP6tCxnnTfKzKp7qlQqNpR6GuuhO7akSvdZyBT90YSus8aha4ROmuHjvVk2rVKxb2ifNU9iULXjkJdc6VMvVek676f1/dGJtxnLsQ1V6LY6reK/oCBtTdS0Y9pNUJH7VB11tBVv9PbuTIhT27Wk4SKvV/6GN2OSd0OhYiIiIiIiIiIiIiIiIiIiIiIiKhI8WE6IiIiIiIiIiIiIiIiIiIiIiIiGvD4MB0RERERERERERERERERERERERENeHyYjoiIiIiIiIiIiIiIiIiIiIiIiAY8PkxHREREREREREREREREREREREREAx4fpiMiIiIiIiIiIiIiIiIiIiIiIqIBjw/TERERERERERERERERERERERER0YDHh+mIiIiIiIiIiIiIiIiIiIiIiIhowOPDdERERERERERERERERERERERERDTg8WE6IiIiIiIiIiIiIiIiIiIiIiIiGvD4MB0RERERERERERERERERERERERENeHyYjoiIiIiIiIiIiIiIiIiIiIiIiAY8PkxHREREREREREREREREREREREREAx4fpiMiIiIiIiIiIiIiIiIiIiIiIqIBjw/TERERERERERERERERERERERER0YDHh+mIiIiIiIiIiIiIiIiIiIiIiIhowOPDdERERERERERERERERERERERERDTg8WE6IiIiIiIiIiIiIiIiIiIiIiIiGvD4MB0RERERERERERERERERERERERENeHyYjoiIiIiIiIiIiIiIiIiIiIiIiAY8PkxH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7mq/C8GhQ4fMxIkTTZMmTUz58uVN586dzfz5801eXp7fo8ElOnWOzOxCn+6Qm13o0x1yswt9Okdm9qFTZ1JTU018fLx59dVXTUREhNm1a5cxxph58+aZa665xvF+BQUFZuzYsYU/kwkEAiY8PNyMGDHC69FxFl73eaHwMjfOgP84B+5wDuzCOXCO10T24Rw4xzmwC2egdEVGRhZm+mt++e8+JCQk6OuXNZw/itOnMcb8v//3/0yXLl1MIBAwFSpUMBUqVDAhISGmW7du5ujRo+dg0vML58AuxenzQj4D1lyme/31180NN9xgcnJyCtd27txp2rdvb+bNm2f27dtn2rZta3r27Pm7e1WuXNksXbq0yPq7775rKleu7OncTr311lsmIiLCDBo0yISFhRX+xz1lyhSTmJjo62xlxaZNm8zgwYNNeHi4ufjii80jjzxiduzY4fdYKIGSdnohXlDlHNjFiz45B5yDso5z4A7nwC68JnKOM2AfLzo9ffq02bdvn/n666+DvmxRt25ds2rVKmNM8A/Ntm3bZmJiYlzve/r0afP555+bzMxMc+LECU9mxe8rzT45B85wBvzDOXCHc2CX0uqTM+Ac58A/nAPnOAd24TWRc2fOnDGpqalm3759v/vcBx54wHz//fe/+Zy1a9f+5hdKl9d9/qedO3eat99+27z99ttm586dJRnzvMM5sEtpnQObz8CvseYyXXx8vNm8eXOR9aysLBMXF2eMMWbDhg2mRo0av7vXJZdcYr744osi61988YW5+OKLizXPsWPHiv3lRLNmzczs2bONMcEvhLKyskz16tUd7XUh+uabb8z48eNNgwYNTKVKlUz//v1Nhw4dTPny5c2zzz7r93hwoaSdXogXVDkHdvGiT84B56Cs4xy4wzmwC6+JnOMM2Kekne7YscNce+211v/L2fDwcPPVV18ZY4J/rvD555+bSpUq+TkaXPC6T84B56As4hy4wzmwi5d9cgY4A2UV58A5zoFdeE3kTmRkpNmzZ4/fY8Aj9OkOudmFPr0R4vfHzHrl4MGD+umnn4qs//TTT/r2228lSZdeeqlOnDjxu3sNHjxYY8aM0enTpwvXTp8+raefflqDBw8u1jwxMTGqUqVKsb6c2L59u9q1a1dkPTo6WkePHnW014XizJkzWrBggW677TbVqVNH8+fP1yOPPKJvvvlG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dfnll6tu3bpasWKFrrrqKn388ccKCwvzdba33377rOuBQEDh4eGqV6+e4uLizvFUAAAAAAAAAAAAAAAAAIBfWHOZrnv37lq9erVatWqlIUOGqG/fvpoxY4b27t2rRx999Hd/f/PmzQs/5vX3ZGVlOZqtW7duCgQC+u83AfxlLRAI6Nprr9WiRYtUpUoVR3sDAAAAAAAAAAAAAAAAAErOmo95/W8ZGRnKyMhQ/fr1dfvtt//u81NTUwt/ferUKf39739XQkKCWrduLUnauHGjPv/8cz300EMaN26co1lWr16t4cOH6+mnn1bLli0lSR999JGSk5M1YsQIRUdH6/7771erVq00Y8YMR3sDAAAAAAAAAAAAAAAAAErO2st0JTFo0CDVrFlTY8aMCVofOXKk9u3bp5kzZzra78orr9TLL7+sNm3aBK1v2LBBf/7zn/X5559r1apV+tOf/qS9e/eWeH4AAAAAAAAAAAAAAAAAgDNWXabbvn27pkyZom3btkmSGjVqpCFDhqhBgwaO9omOjtYnn3yi+vXrB63v3LlTLVq00LFjxxztFxERoY8//lhXXnll0PrWrVvVsmVL/fjjj/r666/VqFEjnTx50tHeAAAAAAAAAAAAAAAAAICSC/F7AK8sWLBAV155pTZt2qSmTZuqadOmysrK0pVXXqkFCxY42isiIkIbNmwosr5hwwaFh4c7nu3qq6/WE088oe+//75w7fvvv9eTTz6pP/zhD5J+vqhXu3Ztx3sDAAAAAAAAAAAAAAAAAEquvN8DeOXJJ5/UX//6V40ePTpofeTIkXryySfVs2fPYu/1yCOP6MEHH1RWVpZatmwpScrMzNTMmTOVnJzseLYZM2aoa9euuuyyywovzO3bt0/x8fFavHixJCk3N1cjRoxwvDcAAAAAAAAAAAAAAAAAoOSs+ZjXihUr6tNPP1W9evWC1nfu3KmmTZs6/vjUN998U88//3zQR8YOHTpUd955p6v5CgoKtGLFCu3YsUOS1KBBA910000KCbHmzQEBAAAAAAAAAAAAAAAAoMyy5jLdLbfcojvuuEP33ntv0Porr7yiefPmafny5T5NBgAAAAAAAAAAAAAAAAA431nzMa9dunTRU089pU2bNumaa66RJG3cuFHz589Xamqq3n777aDnnmurV6/W6tWrdejQIRUUFAQ9NnPmzHM+DwAA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",
+      "text/plain": [
+       "<Figure size 3175x500 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "# Display certain statistics about the number of operations by node\n",
+    "_ = dinov2_stats.log_nb_ops_by_type(\"stats_ops.png\", log_scale=True)\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Configure the model for inference\n",
+    "Currently, the model has no implementation and exists only as a data structure. To set an implementation, we will specify a backend and a data type."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:11.046810Z",
+     "iopub.status.busy": "2025-05-19T10:06:11.046666Z",
+     "iopub.status.idle": "2025-05-19T10:06:11.053580Z",
+     "shell.execute_reply": "2025-05-19T10:06:11.053327Z"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "True"
+      ]
+     },
+     "execution_count": 8,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "import aidge_backend_cpu\n",
+    "\n",
+    "dinov2_model.set_backend(\"cpu\")\n",
+    "dinov2_model.set_datatype(aidge_core.dtype.float32)\n",
+    "dinov2_model.forward_dims([[1,3,224,224]], True)\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Finally, to run inference, we need to schedule the execution. To do so we create a ``Scheduler`` object, which takes the graph and generates an optimized scheduling using a consummer-producer (C-P) heuristic."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:11.054502Z",
+     "iopub.status.busy": "2025-05-19T10:06:11.054406Z",
+     "iopub.status.idle": "2025-05-19T10:06:11.063533Z",
+     "shell.execute_reply": "2025-05-19T10:06:11.063196Z"
+    }
+   },
+   "outputs": [],
+   "source": [
+    "s = aidge_core.SequentialScheduler(dinov2_model)\n",
+    "s.generate_scheduling()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "In addition, it is possible to verify the memory usage of the different nodes composing the graph."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:11.064622Z",
+     "iopub.status.busy": "2025-05-19T10:06:11.064369Z",
+     "iopub.status.idle": "2025-05-19T10:06:11.291630Z",
+     "shell.execute_reply": "2025-05-19T10:06:11.291317Z"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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yp/+9Kfss88+C3xNfX19Ro4cmXXXXTdt27ZNt27dcuihh+a9995r1G7NNdfMTjvtlPvuuy8DBgxIu3btst566zXck/Wmm27Keuutl7Zt22ajjTbKv/71r/n6uueee7L55punQ4cO6dy5c3bZZZc888wzjdrMvVTz008/nX322ScrrbRSNttss4waNSo1NTULXO7pp5+e2travPXWW019yxbpoosuyrrrrpv27dtnpZVWyoABAzJmzJiG+a+99lp+8IMfZO211067du2y8sorZ4899sirr74637KeeOKJbLHFFmnXrl2+8IUv5NRTT21Yp0+2/8tf/tLwPnXs2DE77rhjnnrqqcXWe9lll2X8+PE555xzGoW/SdKuXbtcddVVqampyYgRI5KUA9eamppcddVV8y3rzjvvTE1NTW677baGaW+99VYOOuigdOvWLW3atMm6666b3//+941eN/devdddd11++ctfZrXVVkv79u0zderUxda/KAu6B/CWW26ZL3/5yw3vbfv27dO3b9/86U9/SlIe+T5w4MC0a9cua6+9du6+++75lrsk6wQAAFBEAmAAAIDlwJprrplNNtkk1157bcO0v/zlL3n//fczdOjQBb7m0EMPzXHHHZdBgwblggsuyIEHHpjRo0dnyJAhmT17dqO2L774YvbZZ5/svPPOOeOMM/Lee+9l5513zujRo3P00Udnv/32yymnnJKXXnope+65Z+rr6xtee/fdd2fIkCGZOHFiTj755BxzzDF54IEHMmjQoAUGpnvssUemTZuW008/PQcffHDDyNbRo0fP13b06NHZcssts9pqq33Kd25+V1xxRY488sj0798/I0eOzCmnnJINN9ww48aNa2jz8MMP54EHHsjQoUNz4YUX5rDDDstf//rXbLnllpk2bVpDu7feeitbbbVVnnrqqZxwwgk5+uijM3r06FxwwQXz9XvNNddkxx13zAorrJCzzjorJ554Yp5++ulsttlmC3yfPu7WW29N27Zts+eeey5wfu/evbPZZpvlnnvuyfTp0zNgwICstdZa+eMf/zhf2+uvvz4rrbRShgwZkiSZMGFCvv71r+fuu+/OEUcckQsuuCB9+/bNsGHDMnLkyPle/6tf/Sr/+7//m2OPPTann356s126+b333stOO+2UgQMH5uyzz06bNm0ydOjQXH/99Rk6dGh22GGHnHnmmfnoo4+y++6754MPPmh4bVPXCQAAoFBKAAAAfGaNGjWqlKT08MMPly6++OJSx44dS9OmTSuVSqXSHnvsUdpqq61KpVKp1KtXr9KOO+7Y8Lq///3vpSSl0aNHN1reHXfcMd/0Xr16lZKUHnjggYZpd955ZylJqV27dqXXXnutYfpll11WSlK69957G6ZtuOGGpa5du5YmTZrUMO3f//53qUWLFqX999+/YdpJJ51USlLae++951vPvffeu9SzZ89SXV1dw7THHnuslKQ0atSoRb5Hc5f73//+d4Hz11133dIWW2zR8HyXXXYprbvuuotc5tz3+OMefPDBUpLS1Vdf3TDtRz/6Uammpqb0r3/9q2HapEmTSl26dCklKb3yyiulUqlU+uCDD0qdO3cuHXzwwY2WOX78+FKnTp3mm/5JnTt3Lm2wwQaLbHPkkUeWkpSeeOKJUqlUKp1wwgmlVq1alSZPntzQZubMmaXOnTuXDjrooIZpw4YNK/Xo0aP07rvvNlre0KFDS506dWp4L+69995SktJaa621wPdnUR5++OGFbsu5y/34Z2qLLbYoJSmNGTOmYdqzzz5bSlJq0aJF6Z///GfD9Lmf1Y8ve0nXCQAAoIiMAAYAAFhO7Lnnnpk+fXpuu+22fPDBB7ntttsWevnnG264IZ06dco222yTd999t+Gx0UYbZYUVVsi9997bqH3//v0b3bN14MCBSZJvfvObWWONNeab/vLLLydJ3nnnnTz++OP53ve+ly5dujS0W3/99bPNNtvk9ttvn6+2ww47bL5p+++/f95+++1GdY0ePTrt2rXLbrvtttj3pik6d+6cN998Mw8//PBC27Rr167h59mzZ2fSpEnp27dvOnfunMcee6xh3h133JFNNtkkG264YcO0Ll26ZN999220vLFjx2bKlCnZe++9G22P2traDBw4cL7t8UkffPBBOnbsuMg2c+fPvSTzXnvtldmzZ+emm25qaHPXXXdlypQp2WuvvZIkpVIpN954Y3beeeeUSqVGtQ0ZMiTvv/9+o/VNkgMOOKDR+9NcVlhhhUaj29dee+107tw5/fr1a/gcJvN/Jj/NOgEAABRJy2oXAAAAwJJZddVVM3jw4IwZMybTpk1LXV1ddt999wW2feGFF/L++++na9euC5w/ceLERs8/HvImSadOnZIkq6+++gKnz72P8GuvvZakHM59Ur9+/XLnnXfmo48+SocOHRqm9+7de76222yzTXr06JHRo0dn6623Tn19fa699trssssuiw0+l0RNTU3Dzz/72c9y9913Z+ONN07fvn2z7bbbZp999smgQYMa2kyfPj1nnHFGRo0albfeeiulUqlh3vvvv9/w82uvvdYoOJ+rb9++jZ6/8MILScqB+oKsuOKKi6y/Y8eOjS5xvCBz5899vzbYYIOss846uf766zNs2LAk5cs/r7LKKg11/Pe//82UKVNy+eWX5/LLL1/gcj/5WVnQ9msOX/jCFxptt6T8+VvcZ/LTrBMAAECRCIABAACWI/vss08OPvjgjB8/Pttvv306d+68wHb19fXp2rXrAu+rm5TD5I+rra1dYLuFTf94INpUCxo9Wltbm3322SdXXHFF/ud//if3339/3n777ey3336LXV7btm2TlEPbBZk2bVpDm6QcTD/33HO57bbbcscdd+TGG2/M//zP/2T48OE55ZRTkiQ/+tGPMmrUqBx11FHZZJNN0qlTp9TU1GTo0KGN7n+8pOa+5pprrkn37t3nm9+y5aL/e96vX7/861//ysyZM9OmTZsFtnniiSfSqlWrfPGLX2yYttdee+W0007Lu+++m44dO+aWW27J3nvv3dDf3Lr222+/HHDAAQtc7vrrr9/oeSVG/yaf/jP5adYJAACgSATAAAAAy5Fvf/vbOfTQQ/PPf/4z119//ULb9enTJ3fffXcGDRrUrIFdr169kiTPPffcfPOeffbZrLLKKo1G/y7K/vvvn/POOy+33npr/vKXv2TVVVfNkCFDmlTDJ0eHTps2LW+88Ua23XbbRtM7dOiQvfbaK3vttVdmzZqV73znOznttNNywgknpG3btvnTn/6UAw44IOedd17Da2bMmJEpU6bM1/eLL744X02fnNanT58kSdeuXTN48ODFrtMn7bTTTnnwwQdzww03LDAUf/XVV/P3v/89gwcPbrS999prr5xyyim58cYb061bt0ydOrXRZZVXXXXVdOzYMXV1dZ+qrs+iIq4TAABAU7gHMAAAwHJkhRVWyCWXXJKTTz45O++880Lb7bnnnqmrq8uvfvWr+ebNmTNnviDz0+rRo0c23HDDXHXVVY2W+eSTT+auu+7KDjvssMTLWn/99bP++uvnt7/9bW688cYMHTp0sSNjk2TrrbdO69atc8kll8w3Ovfyyy/PnDlzsv322zdMmzRpUqM2rVu3Tv/+/VMqlTJ79uwk5VGmnxzlfNFFF6Wurq7RtCFDhuTBBx/M448/3jBt8uTJ8428HjJkSFZcccWcfvrpDX183H//+99FruOhhx6arl275rjjjmu41+1cM2bMyIEHHphSqZThw4c3mtevX7+st956uf7663P99denR48e+cY3vtEwv7a2NrvttltuvPHGPPnkk02u67OoiOsEAADQFEYAA4u35ZbJhhsmI0dWuRBoRjU1yZ//nOy6a7UrAYDFWthlbT9uiy22yKGHHpozzjgjjz/+eLbddtu0atUqL7zwQm644YZccMEFC71/cFOdc8452X777bPJJptk2LBhmT59ei666KJ06tQpJ598cpOWtf/+++fYY49NkiW6/HNSHlU7fPjw/PKXv8w3vvGNfOtb30r79u3zwAMP5Nprr822227bKCzfdttt07179wwaNCjdunXLM888k4svvjg77rhjw/1zd9ppp1xzzTXp1KlT+vfvnwcffDB33313Vl555UZ9//SnP80f/vCHbLPNNvnRj36UDh065Le//W3WWGONTJ48ueEetiuuuGIuueSSfPe7381Xv/rVDB06NKuuumpef/31/O///m8GDRqUiy++eKHruPLKK+dPf/pTdtxxx3z1q1/N97///fTv3z/jx4/PlVdemRdffDEXXHBBNt100/leu9dee2X48OFp27Zthg0blhYtGv8t+Jlnnpl77703AwcOzMEHH5z+/ftn8uTJeeyxx3L33Xdn8uTJS7QdPkuKuE4AAABLyghgWN5973vl4KqmJmndOunbNxkxIpkzp9qVfT5dfnk5MF9xxfI2WdDImtNOSzbdNGnfPlnIPfsatunHH9dd17jNzJnJL36R9OqVtGmTrLlm8vvfL7q+I49MNtqo3H7DDeeff999yS67JD16JB06lNt88r6BV145f20fu6feAl155fzr+swzyeqrJ3vskXznO8l22zWef8cd5WV/8pfGJ5+crLHGovsDAJIkl156aS6//PJMnDgxP//5z3PCCSfknnvuyX777ZdBgwYts34GDx6cO+64IyuvvHKGDx+ec889N1//+tdz//33p3fv3k1a1r777pva2tp86UtfysYbb7zEr/vFL36RP/zhD6mrq8uIESNy7LHH5l//+ldOOeWU3HLLLY1Cz0MPPTQffvhhzj///Pzwhz/MzTffnCOPPDJ/+MMfGtpccMEF2X///TN69Oj85Cc/yTvvvJO77747K6ywQqN+V1999dx7773p169fTj/99IwcOTIHHHBADjrooCRpdO/hffbZJ3/961+z2mqr5ZxzzsmPf/zjXHfdddlwww1z4IEHLnYdN9988zzxxBPZc889c8MNN+Swww7Lr3/96/Tr1y9/+9vf8qMf/WiBr9trr71SX1+fadOmZa+99ppvfrdu3fLQQw/lwAMPzE033ZQjjjgiF1xwQSZPnpyzzjprsXV9FhVxnQAAAJZUTemT17QCli/f+14yYUIyalQ5ELz99uSHPyyHjCecsGz6MAJ4yY0cmcyYUf75hBOS996bP/g86aTytDffTH73uwWHxDU15W368VC0c+fGQesuu5S3/amnloP/d95J6uuTRf0y98gjk7XXTsaNS554IvnYpQqTJKefnkyfnmy/fdKtW3LbbckxxyT/3/+X7LRTuc2VVyY//nHy8fv81dSU2y/MlVcmRx01b10ffrjcx7e/nVx2WXLFFcmxx5bfr7mXefzZz5Jrr03WWqscTM+1xRblsPuqqxbe38LMmlX+Q4kFMQIYAD4T3n333fTo0SPDhw/PiSeeWO1yPrWjjjoql112WT788MPU1tZWuxwAAAA+R4wAhiJo0ybp3r08EvTww5PBg5NbbinPmzmzHKyttlp5ROfAgY3DtEmTkr33Ls9v3z5Zb71y6LYo//u/SadO848MnWtBoz1vvrkcsM31738nW22VdOxYHi270UbJI48seU0ffJDsu295nXr0SH7963JQfdRR89osbt2bw1FHJccfn3z96wtvc8opydFHl9drUTp3Lm/XuY+Ph7933JH83/+VA//Bg8uB6CabLDr8TZILLyz/gcBaay14/s9/nvzqV+URyn36lIPe7bZLbrqpcbuamsa1LSr8/aR77km++c1k2LBy8NuiRfmz8OGH8z4DSXlbHX98OayeG6rPmFF+vtVW5eevv14OwldYofw52nPPcig+18knl/944be/TXr3nvcevvBC8o1vlJ/375+MHdu4xlmzkiOOKH+22rYt71tnnLHk6wgAfGpXXnll6urq8t3vfrfapSyx6dOnN3o+adKkXHPNNdlss82EvwAAAFScABiKqF27coCVlEOsBx8sXz74iSfKl9vdbrtyAJaUA7WNNiqHuk8+mRxySPLd7yYPPbTgZY8ZUw5nR48uB7Cf1r77Jl/4Qnkk6KOPloO+Vq2WvKZjjknuv78cdI8dm/z978ljjzXuY3HrviDbb18OExf2WHfdT7/OTfXDHyarrJJsvHH50s4fv2DDLbckAwYkZ59dDri/9KVy2P2JXz4uE++/n3Tp0njahx+WQ9HVVy8HsE89tWTL+vOfkx13TH75y+Tjl9770peSnj2Te+8tP//gg/L23GOPcrj94IPl6Q88UA72t9qqPNp5l12SyZPLYfjYscnLLyefvKzhiy8mN95YDrEff7z8uu98pzwSeNy45NJLy6ONP+7CC8vv8R//WB7pPHp0uQ4AoNncc889ufjii3Paaadl1113zZrL0XfvJpts0jDid8SIEfnqV7+aqVOnLtcjmAEAAFh+tax2AcAyVColf/1rcuedyY9+VB4dOWpU+d+ePcttjj22PHp01Kjy5X5XW608ba4f/aj8+j/+sRw8ftxvflO+5+ytt5Yvw7s0Xn89Oe64ZJ11ys+/+MV58xZX0wcflC//O2ZMsvXW5TajRs1bx7nLX9y6L8hvf7voEHVuSN3cRowoj5Jt3z65667kBz8oh65HHlme//LLyT/+UR6d+uc/J+++W24zaVJ5/ZaVP/6xHNJfdtm8aWuvXQ6k11+/HA6fe255xPBTT5VD/YX58MNyoPvzn88fuCblUPe++8qXzv7738uh8Kqrlkfq3nffvPm9e5fD57Fjk//8J3nllXIQnSRXX10O6R9+OPna18rTZs0qT1911fLzu+5Knn22/Jma+9k4/fRy+D/X66+XP5ObbVYe7dyr16d8AwGAJTVixIg88MADGTRoUC666KJql9MkO+ywQ/70pz/l8ssvT01NTb761a/md7/7Xb7xjW9UuzQAAAA+hwTAUAS33VYenTp7dnl04z77lC99e999SV1dOUj7uJkzk5VXLv9cV1cOv/74x+Stt8ph2cyZ5eDx4/70p2TixPKo27nB2tI45pjk+99PrrmmfAnjPfYoX3J4SWp6+eXyun48oO7UqRxMzvWf/yx+3RdktdWWft2WhY+PFvnKV5KPPkrOOWdeAFxfXw4mR48ur3uSnH9+svvuyf/8T3kU+NK6997kwAPLl2n++MjnTTYpP+badNOkX79ySPyrXy18ee3alQPVK64ojyLv16/x/LmX8J49u/zZ3XLL8vQttpgXQM8NgpPkmWfKwe/c8DcpX865c+fyvLmf01695oW/H3/dx/9g4OPrk5Tvrb3NNuXP1Hbble9/vO22C183AGCp3dfct+poRqeffnpOX9gfGAIAAECFuQQ0FMFWW5UvbfvCC+XRq1ddVb7n7YcfJrW15UssP/74vMczzyQXXFB+7TnnlH/+2c/Kgd/jjydDhsy7hPRcX/lKOUT75KWIF6RFi/nbzJ7d+PnJJ5dHjO64Y/mesP37l0eyNqWmRVmSdV+Qz9IloD9u4MDkzTfLAXZSvjftaqvNC3+TcqBaKpXbLa3/+79k553L91bef/9Ft23Vqvz5ePHFRberrS3fC/qrXy1/Zp95pvH8rbYqB90PP1ze7nNHmW+xRflSzZMnl//95jebti4dOjStfVKu8ZVXyoH29OnlewvvvnvTlwMAAAAAABVmBDAUQYcOSd++80//ylfKo2AnTkw233zBr73//vJ9VPfbr/y8vj55/vlyIPtxffok551XHpVZW5tcfPHC61l11fJlmj/6aF749vjj87f70pfKj6OPLo8IHTUq+fa3F1/TWmuVQ8eHH07WWKM87f33y23mXmZvSdZ9QT4rl4D+pMcfT1ZaKWnTpvx80KDkhhvKQfcKK5SnPf98OXxf1GWYl8R995VHvJ51Vvn+y4tTV1cecb3DDotv26ZN+V68u+9eDnznhv9J+TO2+urle+8+/vi8AHi11cqP884r/xHA3BHA/folb7xRfswdBfz008mUKfN/fj9u7uveeaccpCfJP/85f7sVVyzfT3ivvcr1brddOYT+5P2QAQAAAADgM0QADEX2pS8l++5bHsF53nnlUPS//y3fJ3j99cujb7/4xfLlnR94oBwwnn9+MmHCggO0L32pPDJzyy2Tli2TkSMX3O/AgeXLNf/85+VLFo8bl1x55bz506eX7/+7++7l+7m++WY5zN1tt/L8xdXUsWNywAHlZXTpknTtmpx0Ujn8rKlZ8nVfkKW9BPT48eXH3NGw//lPud411pgXHL7+ejlIfP31cng6Nxzv27cc5t56a3l9v/718j1+x44tXxL74/dF3mef8ujUAw9MTjmlfA/g445LDjpo3uWf//zn8v10n3123utefLEcGo8fX94Oc/vu3z9p3bq8fXfaKfnxj8vbY/z48vzWrefVP2JEuba+fcth6znnJK+9Vr6k95Jo0ya58cbyZb/nhsBzR1ZvtVX5EtZ9+ybdus17zRZbJBddVN6ucy/dPHhwst565e08cmQyZ075PshbbJEMGLDw/gcPLi/ngAPKtU+dWr639cedf345HP7KV8qfqxtuSLp3L19eGgAAAAAAPsNcAhqWU6VSKVOnTs1iLsZcHlW7//7JT35Svp/prrs2Hjn7y1+WL3c7ZEg52O3evdxmYdZeuxzYXXtteZkL0qVL8oc/JLffXg7orr22fMnnuWprk0mTynV96Uvly+tuv305yFzSms4/v3zf1p12Kgd6gwaVR3a2bbvk694cLr20HBoefHD5+Te+UX5+yy3z2gwfXp520knlMPYrXyk/HnmkPL9Vq+Q3vymv34Yblu9/e/755fZzrbBCORieMqUcdu67b/mSzRdeOK/N++8nzz3XuL7vf7/c12WXlUcMz+377bfL86+6Kpk2LTnjjHIAOvfxne/MW8Z775XXr1+/8qjfqVPLYf2iRt1+UuvW5ZB/003Loe+TT5anb7VVefT43Pv/zrXFFuXpc0f/JuWw///7/8p/JPCNb5Q/B2utlVx//aL7btGiHI5Pn16+j/T3v5+cdlrjNh07JmefXX5vv/a15NVXy5/nFr42AQAAAAD4jCsBy6X333+/lKT0fvmur/M/dtih8Qvat19wu6RU2mKLxm1XWWXhbQcMaNy2V6+Ft+3fv3Hb/v0X3rZXr8ZtBwxYeNtVVmncdostFt62ffvGbXfYYeFtP3lI3H33Rbf98MN5bQ84YNFtJ06c1/YHP1h021demdf22GMX2XbwSceUel12dqnXZWeXfr3T4EW23fmEHzW0Pe07i34f9jrm0FKvy84uvTxlcql08cWLrve22+bVO2rUotv+8Y/z2v7xj4tuO2rUvLa33bbothdfPK/tvfcuuu3ZZ89r+9BDi2570knz2j755KLbHnvsvLavvLLotj/4wby2Eycuuu0BB8xr++GHi267++6NP8OLausYUX4U/BhRevLJeW1POmnRbR96aF7bs89edNt7753X1jGizDFiHseIMseIsmV4jHjouONKs2bNKrd1jChzjJjHMaKsiseIWbNmlW6++ebSnDPOWHRb5xHlh2NE+eEYMe/xcQU8RjTwf40yx4h5HCPKHCPKmusYAZ9DNaVS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KAgBMAAAAAAAAEBBCIABAAAAAAAACkIADAAAAAAAAFAQAmAAAAAAAACAghAAAwAAAAAAABSEABgAAAAAAACgIATAAAAAAAAAAAUhAAYAAAAAAAAoCAEwAAAAAAAAQEEIgAEAAAAAAAAKQgAMAAAAAAAAUBACYAAAAAAAAICCEAADAAAAAAAAFIQAGAAAAAAAAKAgBMAAAAAAAAAABSEABgAAAAAAACgIATAAAAAAAABAQQiAAQAAAAAAAApCAAwAAAAAAABQEAJgAAAAAAAAgIIQAAMAAAAAAAAUhAAYAAAAAAAAoCAEwAAAAAAAAAAFIQAGAAAAAAAAKAgBMAAAAAAAAEBBCIABAAAAAAAACkIADAAAAAAAAFAQAmAAAAAAAACAghAAAwAAAAAAABSEABgAAAAAAACgIATAAAAAAAAAAAUhAAYAAAAAAAAoCAEwAAAAAAAAQEEIgAEAAAAAAAAKQgAMAAAAAAAAUBACYAAAAAAAAICCEAADAAAAAAAAFIQAGAAAAAAAAKAgBMAAAAAAAAAABSEABgAAAAAAACgIATAAAAAAAABAQQiAAQAAAAAAAApCAAwAAAAAAABQEAJgAAAAAAAAgIIQAAMAAAAAAAAUhAAYAAAAAAAAoCAEwAAAAAAAAAAFIQAGAAAAAAAAKAgBMAAAAAAAAEBBCIABAAAAAAAACkIADAAAAAAAAFAQAmAAAAAAAACAghAAAwAAAAAAABSEABgAAAAAAACgIATAAAAAAAAAAAUhAAYAAAAAAAAoCAEwAAAAAAAAQEEIgAEAAAAAAAAKQgAMAAAAAAAAUBACYAAAAAAAAICCEAADAAAAAAAAFIQAGAAAAAAAAKAgBMAAAAAAAAAABSEABgAAAAAAACgIATAAAAAAAABAQQiAAQAAAAAAAApCAAwAAAAAAABQEAJgAAAAAAAAgIIQAAMAAAAAAAAUhAAYAAAAAAAAoCAEwAAAAAAAAAAFIQAGAAAAAAAAKAgBMAAAAAAAAEBBCIABAAAAAAAACkIADAAAAAAAAFAQAmAAAAAAAACAghAAAwAAAAAAABSEABgAAAAAAACgIATAAAAAAAAAAAUhAAYAAAAAAAAoCAEwAAAAAAAAQEEIgAEAAAAAAAAKQgAMAAAAAAAAUBACYAAAAAAAAICCEAADAAAAAAAAFIQAGAAAAAAAAKAgBMDQRHV1dTnxxBPTu3fvtGvXLn369MmvfvWrlEqlhjalUinDhw9Pjx490q5duwwePDgvvPBCo+VMnjw5++67b1ZcccV07tw5w4YNy4cffljp1QEAAAAAAKBABMDQRGeddVYuueSSXHzxxXnmmWdy1lln5eyzz85FF13U0Obss8/OhRdemEsvvTTjxo1Lhw4dMmTIkMyYMaOhzb777punnnoqY8eOzW233Za//e1vOeSQQ6qxSgAAAAAAABREy2oXAMubBx54ILvsskt23HHHJMmaa66Za6+9Ng899FCS8ujfkSNH5pe//GV22WWXJMnVV1+dbt265eabb87QoUPzzDPP5I477sjDDz+cAQMGJEkuuuii7LDDDjn33HPTs2fP6qwcAAAAAAAAyzUjgKGJNt100/z1r3/N888/nyT597//nX/84x/ZfvvtkySvvPJKxo8fn8GDBze8plOnThk4cGAefPDBJMmDDz6Yzp07N4S/STJ48OC0aNEi48aNq+DaAAAAAAAAUCRGAEMTHX/88Zk6dWrWWWed1NbWpq6uLqeddlr23XffJMn48eOTJN26dWv0um7dujXMGz9+fLp27dpofsuWLdOlS5eGNp80c+bMzJw5s+H51KlTkySzZ8/O7Nmzl83KsVypnzMnbWqa9+946ufM8flaCnPfuyV9D+vq69KqbfN+NdfV19mmFVRXV5dWrZv/7+3q6mzXpdGUfbUS++ncfmzTyqmvm5M2LWqavQ/b9NNr6ndq/Zw5adPMf+/sPKmy6ufUVWCbOvYujSaf+9bNSetWzbtN6xx7K6oS++ncfmzXT69J574VOEea249tWjl1dXVp1aa5j7/206Xxab5T29Q27766vO6nrVq1qnYJUDU1pVKpVO0iYHly3XXX5bjjjss555yTddddN48//niOOuqonH/++TnggAPywAMPZNCgQXn77bfTo0ePhtftueeeqampyfXXX5/TTz89V111VZ577rlGy+7atWtOOeWUHH744fP1e/LJJ+eUU06Zb/qYMWPSvn37Zb+iAAAAAACwnJp7i0b4PDICGJrouOOOy/HHH5+hQ4cmSdZbb7289tprOeOMM3LAAQeke/fuSZIJEyY0CoAnTJiQDTfcMEnSvXv3TJw4sdFy58yZk8mTJze8/pNOOOGEHHPMMQ3Pp06dmtVXXz1bbbVVVl555WW5iiwnnpk0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o3To0KHR/PXXX79KlQEAAAAAAEDlCIAphKFDhyZJjjzyyIZpNTU1KZVKqampSV1dXbVKAwAAAAAAgIoRAFMIr7zySrVLAAAAAAAAgKoTAFMIvXr1qnYJAAAAAAAAUHUCYArjpZdeysiRI/PMM88kSfr3758f//jH6dOnT5UrAwAAAAAAgMpoUe0CYFm48847079//zz00ENZf/31s/7662fcuHFZd911M3bs2GqXBwAAAAAAABVhBDCFcPzxx+foo4/OmWeeOd/0n/3sZ9lmm22qVBkAAAAAAABUjhHAFMIzzzyTYcOGzTf9oIMOytNPP12FigAAAAAAAKDyBMAUwqqrrprHH398vumPP/54unbtWvmCAAAAAAAAoApcAppCOPjgg3PIIYfk5Zdfzqabbpokuf/++3PWWWflmGOOqXJ1AAAAAAAAUBkCYArhxBNPTMeOHXPeeeflhBNOSJL07NkzJ598co488sgqVwcAAAAAAACVIQBmuXbvvfdm0KBBad26dY4++ugcffTR+eCDD5IkHTt2rHJ1AAAAAAAAUFkCYJZrW2+9ddq2bZuvf/3r2WqrrfLNb34zAwcOTMuWPtoAAAAAAAB8/rSodgGwNF555ZX85je/yRprrJHf/e532XzzzdO5c+cMGTIkZ555ZsaNG5f6+vpqlwkAAAAAAAAVIQBmudarV68ceOCBufLKK/Pqq6/mxRdfzIUXXphu3brlkksuyaabbpouXbpUu0wAAAAAAACoCNfJpVDWWmut1NbWpqamJjU1Nbn55psza9asapcFAAAAAAAAFSEAZrn3+uuv57777su9996b++67L++++2423XTTbL755rntttsycODAapcIAAAAAAAAFSEAZrm21lpr5b333sugQYPyjW98I4ceemgGDBiQli19tAEAAAAAAPj8cQ9glmvTp09PkrRo0SItW7ZMq1atUltbW+WqAAAAAAAAoDoEwCzX3nnnnTz44IPZYYcdMm7cuOy4445ZaaWVstNOO+Xcc8/Nww8/nPr6+mqXCQAAAAAAABXhOrks99ZZZ52ss846Oeyww5IkzzzzTMP9gE899dQkyZQpU6pYIQAAAAAAAFSGEcAUyoQJE/LEE0/kiSeeyL///e9MnTo1M2fOrHZZAAAAAAAAUBFGALNcmzhxYu67777cd999uffee/P888+nVatW2XjjjTN06NBstdVW2WSTTapdJgAAAAAAAFSEAJjlWvfu3dOqVasMGDAgu+22W7baaqtsuummadeuXbVLAwAAAAAAgIoTALNcu+iii/K9730vHTp0WGibc845J8cdd1wFqwIAAAAAAIDqcA9glmtnnnlmJk2atND55557bn7xi19UsCIAAAAAAACoHgEwy7XNNtssgwcPzn//+9/55p133nn5+c9/nquvvroKlQEAAAAAAEDlCYBZrl1zzTXp06dPhgwZkqlTpzZM//Wvf53jjz8+V155ZYYOHVrFCgEAAAAAAKByBMAs11q2bJmbbrop7dq1y0477ZQZM2Zk5MiROe644zJq1Kjss88+1S4RAAAAAAAAKqZltQuApdWuXbvcfvvt2WKLLbLRRhvl+eefz6hRo7LffvtVuzQAAAAAAACoKAEwy7Vbbrml4efDDz88P/7xj7PrrrumU6dOjeZ961vfqkZ5AAAAAAAAUFECYJZru+6663zTbrzxxtx4440Nz2tqalJXV1fBqgAAAAAAAKA6BMAs1+rr66tdAgAAAAAAAHxmtKh2AQAAAAAAAAAsGwJgllv//Oc/l7jttGnT8tRTTzVjNQAAAAAAAFB9AmCWW9/97nczZMiQ3HDDDfnoo48W2Obpp5/Oz3/+8/Tp0yePPvpohSsEAAAAAACAynIPYJZbTz/9dC655JL88pe/zD777JMvfelL6dmzZ9q2bZv33nsvzz77bD788MN8+9vfzl133ZX11luv2iUDAAAAAABAsxIAs9xq1apVjjzyyBx55JF55JFH8o9//COvvfZapk+fng022CBHH310ttpqq3Tp0qXapQIAAAAAAEBFCIAphAEDBmTAgAHVLgMAAAAAAACqyj2AAQAAAAAAAApCAAyfwltvvZX99tsvK6+8ctq1a5f11lsvjzzySMP8UqmU4cOHp0ePHmnXrl0GDx6cF154odEyJk+enH333TcrrrhiOnfunGHDhuXDDz+s9KoAAAAAAABQIAJgaKL33nsvgwYNSqtWrfKXv/wlTz/9dM4777ystNJKDW3OPvvsXHjhhbn00kszbty4dOjQIUOGDMmMGTMa2uy777556qmnMnbs2Nx2223529/+lkMOOaQaqwQAAAAAAEBBuAcwNNFZZ52V1VdfPaNGjWqY1rt374afS6VSRo4cmV/+8pfZZZddkiRXX311unXrlptvvjlDhw7NM888kzvuuCMPP/xww72LL7roouywww4599xz07Nnz8quFAAAAAAAAIVgBDCF8/FRts3hlltuyYABA7LHHnuka9eu+cpXvpIrrriiYf4rr7yS8ePHZ/DgwQ3TOnXqlIEDB+bBBx9Mkjz44IPp3LlzQ/ibJIMHD06LFi0ybty4Zq0fAAAAAACA4jICmEKor6/PaaedlksvvTQTJkzI888/n7XWWisnnnhi1lxzzQwbNmyZ9fXyyy/nkksuyTHHHJOf//znefjhh3PkkUemdevWOeCAAzJ+/PgkSbdu3Rq9rlu3bg3zxo8fn65duzaa37Jly3Tp0qWhzSfNnDkzM2fObHg+derUJMns2bMze/bsZbZ+VE/9nLq0qcDf5dTPqfOZqZD6OXVJ0uzbtc42rZi6OXVpU2r+/dQ2ray5+2rrZty2tmll1c2pS+tSbbP3YZtWTiW+U+vnzLFNK6huTl1aNfN+Orcf27Uy6v7fftrc29U2rZy6OXVpVW8/LZq5+2rL+ub7tbBtWll1c+qadXvO7cM2rZy5+2mt/XSptWrVqtolQNXUlEqlUrWLgKU1YsSIXHXVVRkxYkQOPvjgPPnkk1lrrbVy/fXXZ+TIkQ0jb5eF1q1bZ8CAAXnggQcaph155JF5+OGH8+CDD+aBBx7IoEGD8vbbb6dHjx4Nbfbcc8/U1NTk+uuvz+mnn56rrroqzz33XKNld+3aNaecckoOP/zw+fo9+eSTc8opp8w3fcyYMWnfvv0yWz8AAAAAAFjezb1FI3weGQFMIVx99dW5/PLLs/XWW+ewww5rmL7BBhvk2WefXaZ99ejRI/379280rV+/frnxxhuTJN27d0+STJgwoVEAPGHChGy44YYNbSZOnNhoGXPmzMnkyZMbXv9JJ5xwQo455piG51OnTs3qq6+erbbaKiuvvPJSrxfV9+yUCdnnb1c1ez9jvnFA1uncbfENWWpPT3orr477d84o/SczU99s/Vy92YFZp9OCjx0sW89NHZ+DHvhts/fz+02/n7VXtE0r5dnJb+blfz6RkS0fy6ya5tlXLx94cL60Yo/FN2SZeOGDd/LDRy5t1j5+M+CwfLGjbVopT/337bz28OM5adpzzfadev3W+6XfSs6RKuWlD9/KMY9f3Oz9nL/hEemzwmrN3g/JC++/nhfufzJjOv8ts2vqmq2fM9Y/Kmt1sE0r4dWP3sxJT57X7P2c8uWfZM0OX2j2fih7ZeqreeYfT+e2VcZmTos5zdLHL/v/NGu0X71Zls383pj2es597vRm7ePYtX+e1duv0ax9MM/rH7ycJ//+bP7R8+bUNdN+euQXT8pq7Xo1y7KBzwYBMIXw1ltvpW/fvvNNr6+vX+aXshg0aNB8I3eff/759OpV/sLs3bt3unfvnr/+9a8Nge/UqVMzbty4hpG9m2yySaZMmZJHH300G220UZLknnvuSX19fQYOHLjAftu0aZM2bdrMN71Vq1YuZVEQLVrWNmtI+PF+fGYqo0XL8uXSZqa+WbdtrW1aMbUtazOzmQLCT/Zjm1bO3H11Vk19ZjXTL6xt08qqbVnbbNvy433YppVTie/UFi1b2qYVVNuytllDwo/3Y7tWRu3/209n19Q167a1TSuntmVtZrewnxbN3H11Tos5zRYA26aVVduyttm25cf7sE0rZ+5+WtdiTrMFwLYpFF/z38QOKqB///75+9//Pt/0P/3pT/nKV76yTPs6+uij889//jOnn356XnzxxYwZMyaXX355fvjDHyZJampqctRRR+XUU0/NLbfckv/85z/Zf//907Nnz+y6665JyiOGt9tuuxx88MF56KGHcv/99+eII47I0KFD07Nnz2VaLwAAAAAAAJ8fRgBTCMOHD88BBxyQt956K/X19bnpppvy3HPP5eqrr85tt922TPv62te+lj//+c854YQTMmLEiPTu3TsjR47Mvvvu29Dmpz/9aT766KMccsghmTJlSjbbbLPccccdadu2bUOb0aNH54gjjsjWW2+dFi1aZLfddsuFF164TGsFAAAAAADg80UATCHssssuufXWWzNixIh06NAhw4cPz1e/+tXceuut2WabbZZ5fzvttFN22mmnhc6vqanJiBEjMmLEiIW26dKlS8aMGbPMawMAAAAAAODzSwBMYWy++eYZO3ZstcsAAAAAAACAqnEPYAAAAAAAAICCMAKYQlhppZVSU1Mz3/Sampq0bds2ffv2zfe+970ceOCBVagOAAAAAAAAKkMATCEMHz48p512WrbffvtsvPHGSZKHHnood9xxR374wx/mlVdeyeGHH545c+bk4IMPrnK1AAAAAAAA0DwEwBTCP/7xj5x66qk57LDDGk2/7LLLctddd+XGG2/M+uuvnwsvvFAADAAAAAAAQGG5BzCFcOedd2bw4MHzTd96661z5513Jkl22GGHvPzyy5UuDQAAAAAAACpGAEwhdOnSJbfeeut802+99dZ06dIlSfLRRx+lY8eOlS4NAAAAAAAAKsYloCmEE088MYcffnjuvffehnsAP/zww7n99ttz6aWXJknGjh2bLbbYopplAgAAAAAAQLMSAFMIBx98cPr375+LL744N910U5Jk7bXXzv/93/9l0003TZL85Cc/qWaJAAAAAAAA0OwEwBTGoEGDMmjQoGqXAQAAAAAAAFUjAKZwZsyYkVmzZjWatuKKK1apGgAAAAAAAKicFtUuAJaFadOm5YgjjkjXrl3ToUOHrLTSSo0eAAAAAAAA8HkgAKYQjjvuuNxzzz255JJL0qZNm/z2t7/NKaeckp49e+bqq6+udnkAAAAAAABQES4BTSHceuutufrqq7PlllvmwAMPzOabb56+ffumV69eGT16dPbdd99qlwgAAAAAAADNzghgCmHy5MlZa621kpTv9zt58uQkyWabbZa//e1v1SwNAAAAAAAAKkYATCGstdZaeeWVV5Ik66yzTv74xz8mKY8M7ty5cxUrAwAAAAAAgMoRAFMIBx54YP79738nSY4//vj85je/Sdu2bXP00UfnuOOOq3J1AAAAAAAAUBnuAUwhHH300Q0/Dx48OM8++2weffTR9O3bN+uvv34VKwMAAAAAAIDKEQBTSL169UqnTp1c/hkAAAAAAIDPFZeAphDOOuusXH/99Q3P99xzz6y88spZbbXVGi4NDQAAAAAAAEUnAKYQLr300qy++upJkrFjx2bs2LH5y1/+ku233949gAEAAAAAAPjccAloCmH8+PENAfBtt92WPffcM9tuu23WXHPNDBw4sMrVAQAAAAAAQGUYAUwhrLTSSnnjjTeSJHfccUcGDx6cJCmVSqmrq6tmaQAAAAAAAFAxRgBTCN/5zneyzz775Itf/GImTZqU7bffPknyr3/9K3379q1ydQAAAAAAAFAZAmAK4de//nXWXHPNvPHGGzn77LOzwgorJEneeeed/OAHP6hydQAAAAAAAFAZAmAKoVWrVjn22GPnm3700UdXoRoAAAAAAACoDgEwhXD11Vcvcv7+++9foUoAAAAAAACgegTAFMKPf/zjRs9nz56dadOmpXXr1mnfvr0AGAAAAAAAgM+F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AAAAAABKQgAMAAAAAAAAUBICYAAAAAAAAICSEAADAAAAAAAAlIQAGAAAAAAAAKAkBMAAAAAAAAAAJSEABgAAAAAAACgJATAAAAAAAABASQiAAQAAAAAAAEpCAAwAAAAAAABQEgJgAAAAAAAAgJIQAAMAAAAAAACUhAAYhum8887L61//+kyePDkzZ87MUUcdlaVLl24xpru7O4sWLcqMGTMyadKkHH300Vm5cuUWY5YtW5YjjzwyEyZMyMyZM3PGGWekv79/NG8KAAAAAAAAJSMAhmFasmRJFi1alF/+8pe54YYb0tfXl8MOOyybNm0aHHP66afn2muvzXe+850sWbIky5cvzzvf+c7B66vVao488sj09vbmF7/4Rb75zW/myiuvzNlnn92ImwQAAAAAAEBJtDR6AbCt+dGPfrTFz1deeWVmzpyZO+64I29+85vT2dmZyy+/PFdddVXe+ta3JkmuuOKK7LvvvvnlL3+Zgw8+OD/+8Y9z77335l//9V8za9as7L///vnsZz+bT3ziEzn33HPT1tbWiJsGAAAAAADANk4ADFups7MzSTJ9+vQkyR133JG+vr4ceuihg2P22WefzJs3L7fccksOPvjg3HLLLdlvv/0ya9aswTGHH354Tj755PzmN7/JAQcc8Lzt9PT0pKenZ/Dn9evXJ0n6+vrS19dXyG0rSnWgmtb25kYvY9RUB6rbXI3GkupANa3ji3u6qo1rSa2tmA/EaP3dvK0FzT8WVav13d+r1f60tVQKXUtre3Nax20/jzVFqfcxrMjH9oH25gy0FtdHra2V5/y//P1arfbXX9OCHn+bxrUU/hiwPam3pgN9A+mvthe+npbm5hGv77PzbU/3m3rqWvTz6UBT0ty8/fzNi1ZPTQf6+9NeKf5v3t5cSfPACPfp7+4rbdvRfabu59S+gfRXxxW6ltZKc9qbtp+/fVEG6qxprW8gtf5in1OLqumzc24v95eB/jpfJ/X3p71S7HuBSiWpZPv4uxep3ppWq/1pK/B9ZK2llnEFlbP9d+9L29OU7eUuU29dh6u1tXXE54RtRaVWq9UavQjYVg0MDOQP//AP09HRkZtvvjlJctVVV2XhwoVbhLVJctBBB+Utb3lLzj///HzoQx/KY489luuvv37w+q6urkycODE/+MEPcsQRRzxvW+eee24+/elPP+/yq666KhMm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XXRRLrvsstx6662ZOHFiDj/88HR3dzdw5bB9Of/88/OVr3wlF198ce67776cf/75+dKXvpS/+Zu/GRyjV2F0bdq0Ka95zWtyySWXvOD19fTkcccdl9/85je54YYbct111+VnP/tZPvShD43WTYDSe7E+7erqyp133plPfepTufPOO/PP//zPWbp0af7wD/9wi3H6FBiOSu25h2gCY94b3vCGvP71r8/FF1+cJBkYGMjcuXNz6qmn5swzz2zw6oAkefrppzNz5swsWbIkb37zm9PZ2ZmXvexlueqqq/Inf/InSZL7778/++67b2655ZYcfPDBDV4xbD82btyY1772tbn00kvzuc99Lvvvv38uvPBCfQpjwJlnnpmf//zn+bd/+7cXvL5Wq2XOnDn56Ec/mo997GNJks7OzsyaNStXXnll3vWud43mcmG79Qd/8AeZNWtWLr/88sHLjj766IwfPz7f+ta39Co0WKVSyXe/+90cddRRSep7/rzvvvsyf/783H777TnwwAOTJD/60Y/y+7//+3niiScyZ86cRt0cKKX/2qcv5Pbbb89BBx2Uxx57LPPmzdOnwLA5Axi2Ib29vbnjjjty6KGHDl7W1NSUQw89NLfccksDVwY8V2dnZ5Jk+vTpSZI77rgjfX19W/TuPvvsk3nz5uldGGWLFi3KkUceuUU/JvoUxoJ/+Zd/yYEHHphjjjkmM2fOzAEHHJCvf/3rg9c/8sgjWbFixRZ9OnXq1LzhDW/QpzCK3vjGN+bGG2/Mb3/72yTJr3/969x888054ogjkuhVGGvq6clbbrkl06ZNGwyVkuTQQw9NU1NTbr311lFfM/DMvqVKpZJp06Yl0afA8LU0egFA/VavXp1qtZpZs2ZtcfmsWbNy//33N2hVwHMNDAzktNNOy5ve9Ka86lWvSpKsWLEibW1tgy/anzVr1qysWLGiAauE7dO3v/3t3Hnnnbn99tufd50+hcZ7+OGH85WvfCWLFy/On//5n+f222/Pn/3Zn6WtrS0nnHDCYC++0GthfQqj58wzz8z69euzzz77pLm5OdVqNZ///Odz3HHHJYlehTGmnp5csWJFZs6cucX1LS0tmT59ur6FBuju7s4nPvGJvPvd786UKVOS6FNg+ATAADCCFi1alHvuuSc333xzo5cCPMfjjz+ej3zkI7nhhhsybty4Ri8HeAEDAwM58MAD84UvfCFJcsABB+See+7JZZddlhNOOKHBqwOe9Y//+I/5h3/4h1x11VV55StfmbvuuiunnXZa5syZo1cBYCv19fXl2GOPTa1Wy1e+8pVGLwfYhvkIaNiG7Ljjjmlubs7KlSu3uHzlypWZPXt2g1YFPOuUU07Jddddl5tuuim77LLL4OWzZ89Ob29vOjo6thivd2H03HHHHVm1alVe+9rXpqWlJS0tLVmyZEkuuuiitLS0ZNasWfoUGmynnXbK/Pnzt7hs3333zbJly5JksBe9FobGOuOMM3LmmWfmXe96V/bbb78cf/zxOf3003Peeecl0asw1tTTk7Nnz86qVau2uL6/vz9r167VtzCKng1/H3vssdxwww2DZ/8m+hQYPgEwbEPa2tryute9LjfeeOPgZQMDA7nxxhuzYMGCBq4Mtm+1Wi2nnHJKvvvd7+YnP/lJdt999y2uf93rXpfW1tYtenfp0qVZtmyZ3oVR8ra3vS1333137rrrrsH/DjzwwBx33HGD/9an0FhvetObsnTp0i0u++1vf5tdd901SbL77rtn9uzZW/Tp+vXrc+utt+pTGEVdXV1patpyd1Jzc3MGBgaS6FUYa+rpyQULFqSjoyN33HHH4Jif/OQnGRgYyBve8IZRXzNsj54Nfx944IH867/+a2bMmLHF9foUGC4fAQ3bmMWLF+eEE07IgQcemIMOOigXXnhhNm3alIULFzZ6abDdWrRoUa666qp8//vfz+TJkwe/e2Xq1KkZP358pk6dmg984ANZvHhxpk+fnilTpuTUU0/NggULcvDBBzd49bB9mDx58uD3cj9r4sSJmTFjxuDl+hQa6/TTT88b3/jGfOELX8ixxx6b2267LV/72tfyta99LUlSqVRy2mmn5XOf+1z22muv7L777vnUpz6VOXPm5Kijjmrs4mE78o53vCOf//znM2/evLzyla/Mv//7v+eCCy7I+9///iR6FRph48aNefDBBwd/fuSRR3LXXXdl+vTpmTdv3pA9ue++++btb397TjrppFx22WXp6+vLKaeckne9612ZM2dOg24VlMuL9elOO+2UP/mTP8mdd96Z6667LtVqdXDf0vTp09PW1qZPgWGr1Gq1WqMXAQzPxRdfnL/8y7/MihUrsv/+++eiiy5ypBc0UKVSecHLr7jiipx44olJku7u7nz0ox/N1VdfnZ6enhx++OG59NJLfUwPNNAhhxyS/fffPxdeeGESfQpjwXXXXZezzjorDzzwQHbfffcsXrw4J5100uD1tVot55xzTr72ta+lo6Mjv/d7v5dLL700e++9dwNXDduXDRs25FOf+lS++93vZtWqVZkzZ07e/e535+yzz05bW1sSvQqj7ac//Wne8pa3PO/yE044IVdeeWVdPbl27dqccsopufbaa9PU1JSjjz46F110USZNmjSaNwVK68X69Nxzz33ep8k966abbsohhxySRJ8CwyMABgAAAAAAACgJ3wEMAAAAAAAAUBICYAAAAAAAAICSEAADAAAAAAAAlIQAGAAAAAAAAKAkBMAAAAAAAAAAJSEABgAAAAAAACgJATAAAAAAAABASQiAAQAAoA4nnnhijjrqqEYvAwAAAF5US6MXAAAAAI1WqVRe9PpzzjknX/7yl1Or1UZpRQAAAPDSCIABAADY7j311FOD/77mmmty9tlnZ+nSpYOXTZo0KZMmTWrE0gAAAGBYfAQ0AAAA273Zs2cP/jd16tRUKpUtLps0adLzPgL6kEMOyamnnprTTjstO+ywQ2bNmpWvf/3r2bRpUxYuXJjJkyfn5S9/eX74wx9usa177rknRxxxRCZNmpRZs2bl+OOPz+rVq0f5FgMAAFBWAmAAAAB4ib75zW9mxx13zG233ZZTTz01J598co455pi88Y1vzJ133pnDDjssxx9/fLq6upIkHR0deetb35oDDjggv/rVr/KjH/0oK1euzLHHHtvgWwIAAEBZCIABAADgJXrNa16TT37yk9lrr71y1llnZdy4cdlxxx1z0kknZa+99srZZ5+dNWvW5D/+4z+SJBdffHEOOOCAfOELX8g+++yTAw44IN/4xjdy00035be//W2Dbw0AAABl4DuAAQAA4CV69atfPfjv5ubmzJgxI/vtt9/gZbNmzUqSrFq1Kkny61//OjfddNMLfp/wQw89lL333rvgFQMAAFB2AmAAAAB4iVpbW7f4uVKpbHFZpVJJkgwMDCRJNm7cmHe84x05//zznzfXTjvtVOBKAQAA2F4IgAEAAGCUvPa1r80//dM/ZbfddktLi7fkAAAAjDzfAQwAAACjZNGiRVm7dm3e/e535/bbb89DDz2U66+/PgsXLky1Wm308gAAACgBATAAAACMkjlz5uTnP/95qtVqDjvssOy333457bTTMm3atDQ1eYsOAADA1qvUarVaoxcBAAAAAAAAwNZzeDEAAAAAAABASQiAAQAAAAAAAEpCAAwAAAAAAABQEgJgAAAAAAAAgJIQAAMAAAAAAACUhAAYAAAAAAAAoCQEwAAAAAAAAAAlIQAGAAAAAAAAKAkBMAAAAAAAAEBJCIABAAAAAAAASkIADAAAAAAAAFASAmAAAAAAAACAkhAAAwAAAAAAAJSEABgAAAAAAACgJATAAAAAAAAAACUhAAYAAAAAAAAoCQEwAAAAAAAAQEkIgAEAAAAAAABKQgAMAAAAAAAAUBICYAAAAAAAAICSEAADAAAAAAAAlIQAGAAAAAAAAKAkBMAAAAAAAAAAJSEABgAAAAAAACgJATAAAAAAAABASQiAAQAAAAAAAEpCAAwAAAAAAABQEgJgAAAAAAAAgJIQAAMAAAAAAACUhAAYAAAAAAAAoCQEwAAAAAAAAAAlIQAGAAAAAAAAKAkBMAAAAAAAAEBJCIABAAAAAAAASkIADAAAAAAAAFASAmAAAAAAAACAkhAAAwAAAAAAAJSEABgAAAAAAACgJATAAAAAAAAAACUhAAYAAAAAAAAoCQEwAAAAAAAAQEkIgAEAAAAAAABKQgAMAAAAAAAAUBICYAAAAAAAAICSEAADAAAAAAAAlIQAGAAAAAAAAKAkBMAAAAAAAAAAJSEABgAAAAAAACgJATAAAAAAAABASQiAAQAAAAAAAEpCAAwAAAAAAABQEgJgAAAAAAAAgJIQAAMAAAAAAACUhAAYAAAAAAAAoCQEwAAAAAAAAAAlIQAGAAAAAAAAKAkBMAAAAAAAAEBJCIABAAAAAAAASkIADAAAAAAAAFASAmAAAAAAAACAkhAAAwAAAAAAAJSEABgAAAAAAACgJATAAAAAAAAAACUhAAYAAAAAAAAoCQEwAAAAAAAAQEkIgAEAAAAAAABKQgAMAAAAAAAAUBICYAAAAAAAAICSEAADAAAAAAAAlIQAGAAAAAAAAKAkBMAAAAAAAAAAJSEABgAAAAAAACgJATAAAAAAAABASQiAAQAAAAAAAEpCAAwAAAAAAABQEgJgAAAAAAAAgJIQAAMAAAAAAACUhAAYAAAAAAAAoCT+f4pMT52ok22hAAAAAElFTkSuQmCC",
+      "text/plain": [
+       "<IPython.core.display.Image object>"
+      ]
+     },
+     "execution_count": 10,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "_ = aidge_core.generate_optimized_memory_info(s, \"mem_strategy_dino\", wrapping=False, display_names=False)\n",
+    "Image(filename=\"./mem_strategy_dino/memory_info.png\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "We can then compare the modified model with the original one, whose operators have not been fused:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {
+    "execution": {
+     "iopub.execute_input": "2025-05-19T10:06:11.292765Z",
+     "iopub.status.busy": "2025-05-19T10:06:11.292648Z",
+     "iopub.status.idle": "2025-05-19T10:06:12.238678Z",
+     "shell.execute_reply": "2025-05-19T10:06:12.238117Z"
+    }
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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B+Ooo45q8D6VlZUxbty4GDx4cLRr1y66d+8ep556asyfP79Wv379+sUBBxwQzz33XOywww7Rvn372Hrrrauvyfrwww/H1ltvHe3atYvtt98+/vWvf9X7Wc8880zstttu0bFjx+jcuXMcdNBBMXny5Fp9qk7V/M4778RRRx0V66+/fuy6665x1113RSqVavBxr7jiikin0zFz5syV3WXLdfPNN8fgwYOjQ4cOsf7668cOO+wQEydOrG6fNm1anHHGGbHFFltE+/bto2vXrnHYYYfF1KlT6z3WW2+9FXvssUe0b98+Ntpoo7jsssuqx1S3/1//+tfq/bTuuuvG/vvvH2+//fYK6/3Nb34Ts2bNimuvvbZW+BsR0b59+7j77rsjlUrFpZdeGhG5wDWVSsXdd99d77GeeOKJSKVS8dhjj1VvmzlzZpx44onRvXv3KCkpicGDB8edd95Z635V1+r94x//GD/72c+id+/e0aFDh1iwYMEK61+ehq4BvOeee8ZWW21VvW87dOgQm266aTz44IMRkVv5PmTIkGjfvn1sscUW8fTTT9d73KaMCQAAIIkEwAAAAHmgX79+sdNOO8Uf/vCH6m1//etf48svv4wRI0Y0eJ9TTz01Ro8eHbvsskvceOONccIJJ8SECRNi+PDhUV5eXqvvBx98EEcddVQceOCBceWVV8b8+fPjwAMPjAkTJsQPf/jDOProo2Ps2LHx4YcfxuGHHx6VlZXV93366adj+PDhMWfOnLjkkkvivPPOi5deeil22WWXBgPTww47LBYvXhxXXHFFnHzyydUrWydMmFCv74QJE2LPPfeM3r17r+Keq++3v/1tnHPOObHlllvGuHHjYuzYsbHddtvFK6+8Ut3ntddei5deeilGjBgRN910U5x22mnxt7/9Lfbcc89YvHhxdb+ZM2fG0KFD4+23346LLroofvjDH8aECRPixhtvrPdz77333th///1jnXXWiauvvjouvvjieOedd2LXXXdtcD/V9L//+7/Rrl27OPzwwxts79+/f+y6667xzDPPxJIlS2KHHXaITTbZJO6///56fe+7775Yf/31Y/jw4RERMXv27PjWt74VTz/9dJx11llx4403xqabbhqjRo2KcePG1bv/L37xi/jzn/8cF1xwQVxxxRXNdurm+fPnxwEHHBBDhgyJa665JkpKSmLEiBFx3333xYgRI2K//faLq666KhYtWhSHHnpofPXVV9X3XdkxAQAAJEoWAACANuuuu+7KRkT2tddey95yyy3ZddddN7t48eJsNpvNHnbYYdmhQ4dms9lstm/fvtn999+/+n4vvPBCNiKyEyZMqPV4jz/+eL3tffv2zUZE9qWXXqre9sQTT2QjItu+ffvstGnTqrf/5je/yUZE9tlnn63ett1222W7deuWnTt3bvW2f//739mCgoLsscceW73t5z//eTYiskceeWS9cR555JHZXr16ZTOZTPW2N998MxsR2bvuumu5+6jqcT/77LMG2wcPHpzdY489qm8fdNBB2cGDBy/3Mav2cU0vv/xyNiKy99xzT/W2s88+O5tKpbL/+te/qrfNnTs326VLl2xEZKdMmZLNZrPZr776Ktu5c+fsySefXOsxZ82ale3UqVO97XV17tw5u+222y63zznnnJONiOxbb72VzWaz2YsuuihbVFSUnTdvXnWf0tLSbOfOnbMnnnhi9bZRo0Zle/bsmf38889rPd6IESOynTp1qt4Xzz77bDYisptsskmD+2d5XnvttUbnsupxaz6n9thjj2xEZCdOnFi97d13381GRLagoCD7z3/+s3p71XO15mM3dUwAAABJZAUwAABAnjj88MNjyZIl8dhjj8VXX30Vjz32WKOnf37ggQeiU6dO8Z3vfCc+//zz6q/tt98+1llnnXj22Wdr9d9yyy1rXbN1yJAhERHx7W9/OzbeeON62z/66KOIiPj0009j0qRJcfzxx0eXLl2q+22zzTbxne98J/7yl7/Uq+20006rt+3YY4+NTz75pFZdEyZMiPbt28chhxyywn2zMjp37hwzZsyI1157rdE+7du3r/53eXl5zJ07NzbddNPo3LlzvPnmm9Vtjz/+eOy0006x3XbbVW/r0qVLjBw5stbjPfXUU/HFF1/EkUceWWs+0ul0DBkypN581PXVV1/Fuuuuu9w+Ve1Vp2Q+4ogjory8PB5++OHqPk8++WR88cUXccQRR0RERDabjYceeigOPPDAyGaztWobPnx4fPnll7XGGxFx3HHH1do/zWWdddaptbp9iy22iM6dO8egQYOqn4cR9Z+TqzImAACAJCls7QIAAABomg033DCGDRsWEydOjMWLF0cmk4lDDz20wb7vv/9+fPnll9GtW7cG2+fMmVPrds2QNyKiU6dOERHRp0+fBrdXXUd42rRpEZEL5+oaNGhQPPHEE7Fo0aLo2LFj9fb+/fvX6/ud73wnevbsGRMmTIi99torKisr4w9/+EMcdNBBKww+myKVSlX/+8ILL4ynn346dtxxx9h0001j7733jqOOOip22WWX6j5LliyJK6+8Mu66666YOXNmZLPZ6rYvv/yy+t/Tpk2rFZxX2XTTTWvdfv/99yMiF6g3ZL311ltu/euuu26tUxw3pKq9an9tu+22MXDgwLjvvvti1KhREZE7/fMGG2xQXcdnn30WX3zxRdx+++1x++23N/i4dZ8rDc1fc9hoo41qzVtE7vm3oufkqowJAAAgSQTAAAAAeeSoo46Kk08+OWbNmhX77rtvdO7cucF+lZWV0a1btwavqxuRC5NrSqfTDfZrbHvNQHRlNbR6NJ1Ox1FHHRW//e1v49e//nW8+OKL8cknn8TRRx+9wsdr165dRORC24YsXry4uk9ELph+77334rHHHovHH388Hnroofj1r38dY8aMibFjx0ZExNlnnx133XVXnHvuubHTTjtFp06dIpVKxYgRI2pd/7ipqu5z7733Ro8ePeq1FxYu/+P5oEGD4l//+leUlpZGSUlJg33eeuutKCoqis0226x62xFHHBGXX355fP7557HuuuvGo48+GkceeWT1z6uq6+ijj47jjjuuwcfdZpttat1uidW/Eav+nFyVMQEAACSJABgAACCPfO9734tTTz01/vnPf8Z9993XaL8BAwbE008/HbvsskuzBnZ9+/aNiIj33nuvXtu7774bG2ywQa3Vv8tz7LHHxvXXXx//+7//G3/9619jww03jOHDh69UDXVXhy5evDg+/vjj2HvvvWtt79ixYxxxxBFxxBFHRFlZWXz/+9+Pyy+/PC666KJo165dPPjgg3HcccfF9ddfX32fpUuXxhdffFHvZ3/wwQf1aqq7bcCAARER0a1btxg2bNgKx1TXAQccEC+//HI88MADDYbiU6dOjRdeeCGGDRtWa76POOKIGDt2bDz00EPRvXv3WLBgQa3TKm+44Yax7rrrRiaTWaW62qIkjgkAAGBluAYwAABAHllnnXXi1ltvjUsuuSQOPPDARvsdfvjhkclk4he/+EW9toqKinpB5qrq2bNnbLfddnH33XfXesz//Oc/8eSTT8Z+++3X5MfaZpttYptttok77rgjHnrooRgxYsQKV8ZGROy1115RXFwct956a73VubfffntUVFTEvvvuW71t7ty5tfoUFxfHlltuGdlsNsrLyyMit8q07irnm2++OTKZTK1tw4cPj5dffjkmTZpUvW3evHn1Vl4PHz481ltvvbjiiiuqf0ZNn3322XLHeOqpp0a3bt1i9OjR1de6rbJ06dI44YQTIpvNxpgxY2q1DRo0KLbeeuu477774r777ouePXvG7rvvXt2eTqfjkEMOiYceeij+85//rHRdbVESxwQAALAyrAAGVmzPPSO22y5i3LhWLgSayXPPRQwdGjF/fkQjp9EEgLaksdPa1rTHHnvEqaeeGldeeWVMmjQp9t577ygqKor3338/HnjggbjxxhsbvX7wyrr22mtj3333jZ122ilGjRoVS5YsiZtvvjk6deoUl1xyyUo91rHHHhsXXHBBRESTTv8ckVtVO2bMmPjZz34Wu+++e3z3u9+NDh06xEsvvRR/+MMfYu+9964Vlu+9997Ro0eP2GWXXaJ79+4xefLkuOWWW2L//fevvn7uAQccEPfee2906tQpttxyy3j55Zfj6aefjq5du9b62T/60Y/i97//fXznO9+Js88+Ozp27Bh33HFHbLzxxjFv3rzqa9iut956ceutt8YxxxwT3/zmN2PEiBGx4YYbxvTp0+PPf/5z7LLLLnHLLbc0OsauXbvGgw8+GPvvv39885vfjJNOOim23HLLmDVrVowfPz4++OCDuPHGG2PnnXeud98jjjgixowZE+3atYtRo0ZFQUHtvwW/6qqr4tlnn40hQ4bEySefHFtuuWXMmzcv3nzzzXj66adj3rx5TZqHtiSJYwIAAGgqK4Ah3x1/fEQqlfsqLo7YdNOISy+NqKho7crWTrffngvM11svNyfLW1lTWpoL1lOpiBorRmr54IOIddetH0qOH79s3qu+alzXbrk/86c/jejbN6KkJKJfv4g771zW/tvfRuy2W8T66+e+hg2LePXV2o9R8zlX9bXPPsv/uccfH3HwwbW3Pfhgrubrr4/o2TPiqqtqt//4x7nHfu652tv33DPimGNWPFYAIG677ba4/fbbY86cOfGTn/wkLrroonjmmWfi6KOPjl122WWN/Zxhw4bF448/Hl27do0xY8bEddddF9/61rfixRdfjP79+6/UY40cOTLS6XRsvvnmseOOOzb5fj/96U/j97//fWQymbj00kvjggsuiH/9618xduzYePTRR2uFnqeeemosXLgwbrjhhjjzzDPjkUceiXPOOSd+//vfV/e58cYb49hjj40JEybE+eefH59++mk8/fTTsc4669T6uX369Ilnn302Bg0aFFdccUWMGzcujjvuuDjxxBMjImpde/ioo46Kv/3tb9G7d++49tpr4wc/+EH88Y9/jO222y5OOOGEFY5xt912i7feeisOP/zweOCBB+K0006LX/7ylzFo0KB4/vnn4+yzz27wfkcccURUVlbG4sWL44gjjqjX3r1793j11VfjhBNOiIcffjjOOuusuPHGG2PevHlx9dVXr7CutiiJYwIAAGiqVLbuOa2A/HL88RGzZ0fcdVcu3PvLXyLOPDPi8ssjLrpozfwMK4Cbbty4iKVLc/++6KLlryj9wQ8i3n8/4q9/jfjXv3L7uKby8oidd47YcMOIl16qHSaPH5+7f81r7aVSEd27L7++gw7KPV8uuyz3xwKffhpRWRlR9R/AI0fm/r3zzrlw9uqrI/70p4i3347o3TvXp+ZzrkpJSS4wbszxx+fqf+SR3O077sg9T2+7LeKEEyKOPDK3rx5/fNl9hgzJ1XfiiRFVK4eWLs3tz1tvzd1vZZWV5f5Qoi4rgAGgzfj888+jZ8+eMWbMmLj44otbu5xVdu6558ZvfvObWLhwYaTT6dYuBwAAgLWIFcCQBCUlET165FZ1nn56btXmo4/m2kpLIy64IBfedeyYC9VqrqicOzcXvvXuHdGhQ8TWW0f84Q/L/3l//nNEp04Rda5rVm38+Poh2iOP5ALKKv/+dy5wW3fd3GrZ7bePeP31ptf01Ve5sLJjx9zq0V/+MhdUn3vusj4rGntzOPfc3MrVb31r+f3++teIJ5+MuO66xvv87GcRAwdGHH54w+2pVG7eq75WFP4+/njE3/+e+yOBYcNyq3932mlZ+BuRm9MzzsiF0QMH5oLaysqIv/2t9mNVPeeqvpYX/tZ1zTURZ58d8cc/Lgtxhw6NePHFZSvXv/oqF4pfeGHtOXv55dy8Dh2au/33v0fsuGOunp49c/u+5ur3PfeMOOus3LxssEHE8OG57X/5S8Tmm0e0b597rKlTa9c4bVrEgQfmxtWxY8Tgwbn7AADNbvz48ZHJZOKYPDrjx5IlS2rdnjt3btx7772x6667Cn8BAABocQJgSKL27XMrHSNy4dfLL+fCtrfeijjssNzpet9/P9e+dGkufP3znyP+85+IU07JnV637ml/q0ycmAtnJ0zIBbCrauTIiI02injttYg33sgFd0VFTa/pvPNygeGjj0Y89VTECy9EvPlm7Z+xorE3ZN99I9ZZp/GvwYNXfcxVZs+OOPnkiHvvzQXcDXnmmYgHHoj41a8af5yFC3Ohf58+uZW9b7+9/J/76KMRO+yQC2B7984FoBdcEFHnPyxrWbw4txK5S5fa2597LqJbt4gttsj90cHcucv/2VUuvDDiF7+IeOyxiO99b9n2oUNz43nttdztF17I1XfIIRGvvLJsVfWzz+aC6379ImbOjNhvv4j/9/9yf1Bw660Rv/tdbnVzTXffnVv1++KLuRXHH38c8f3v5wLeSZMiTjop9/yr6cwzc0Hz889H/N//5VZC1zndIwCwZj3zzDNxyy23xOWXXx4HH3xw9OvXr7VLarKddtqpesXvpZdeGt/85jdjwYIFeb2CGQAAgPxV2NoFAGtQNptbqfnEE7kVltOn507TO316RK9euT4XXJBbCXrXXRFXXJELAi+4YNljnH127v73359bWVnTr36Vu37s//5vxB57rF6t06dHjB6dW2UaEbHZZsvaVlTTV1/lQr2JEyP22ivX5667lo2x6vFXNPaG3HHH8gPRqpB6VWWzudMhn3ZaLoytu/I0IhemHn98xO9/n1sd3ZAttshdu3ebbSK+/DK3knjnnXMh8EYbNXyfjz6K+Mc/cqd2/tOfIj7/PLfad+7c2qdzrunCC3P7b9iwZdv22ScXoPbvH/HhhxE/+UkuOH/55YjlrXD5618j/ud/cs/Rb3+7dttmm+Xm/bnncquSn3su9xzr0SNi441zjz106LJTNUdE/PrXufD7lltyq6EHDoz45JNczWPGRFRd52+zzXKhd5Wf/CRiwIDctYer9mVVyFtl+vRc+Lz11rnbm2zS+LgAgDXi0ksvjZdeeil22WWXuPnmm1u7nJWy3377xYMPPhi33357pFKp+OY3vxm/+93vYvfdd2/t0gAAAFgLCYAhCR57LLc6sbw8d7reo47KXTP1ueciMpncSsqaSksjunbN/TuTyYWh99+fW1FZVpZrr7sy9cEHI+bMya2i/H//b/VrPu+83MrLe+/NhYuHHZYL5ZpS00cf5cZaM6Du1CkX5FX5v/9b8dgbUnWd2+Zy8825AHt512c++eTcHC7vPwx32in3VWXnnSMGDYr4zW9yK2wbUlmZC0onTMjtr4iIG26IOPTQXJjavn3t/lddlVs9/dxzudC4yogRy/699da5EHrAgFy/qkC+Idtskwudf/7z3NzVXVG75565x7jootz30aNz2/fYI3f7W9/KrQY++eTc9smTc/ug5qnFd9klt5J4xoxccByRW01e0+TJudOB11RzX0ZEnHNObmXzk0/mnp+HHJKrHwBoNs8196U6mtEVV1wRVzT2B4YAAADQwpwCGpJg6NDcqWzffz+3evXuu3PXLV24MLci8403cu1VX5MnR9x4Y+6+116b+/eFF+ZOrztpUu46qVWnkK7yjW9EbLhhbtVpNrv8egoK6vcpL699+5JLcqtV998/d7rjLbfMrUpdmZqWpyljb0hznwL6mWdyq1lLSiIKCyM23TS3fYcdIo47blmf667LtRcWRowalVvlW1iY2/8NKSrKzdEHHzT+s3v2zAXcVeFvRC40zmZzgWlN112XC4CffHLFwecmm+Sur7u8nx2xbIXvzJm5VcRffVW7veo6wHPn5q7/W7XKfI89cs+Dl17KPQfqrh5ekY4dV65/RO6PEz76KHfq8f/7v9z85NlKJAAAAAAA1k5WAEMSdOy4LEis6RvfyK2CnTMnYrfdGr7viy/mrh979NG525WVEf/9by6QranqlLl77pkLVm+5pfF6NtwwF+4tWrQsfJs0qX6/zTfPff3wh7nrCt91V+66sCuqaZNNcoHna68tW+X55Ze5PlWrZpsy9oY09ymgb7qp9jVqP/kkF27fd9+yVakvv5yrvcr//E/u9MQvvdT4CuVMJhdU7rdf4z97l11y1xVeuHDZ6tv//jcX2Nc8bfQ110RcfnnutNs77LDiMc2YkQtte/Zccd++fSP+/vdc2LvPPrlTcq+7bq5t6NDcc+aGG3Knbe7WLbd9991zIfhf/7rsVNERufD6oYdyAXbVKuAXX8w9XmOnwa6636OP1t72z3/W79enT+5U3aedlluV/Nvf5k5HDgAAAAAAbZgVwJBkm28eMXJkxLHHRjz8cMSUKRGvvhpx5ZURf/5zrs9mm0U89VQuXJw8OeLUUyNmz2788Z59Nhe6nXtu4z93yJDc6Zp/8pPcNWInTowYP35Z+5IlEWedlVsNOm1aLrR77bVcMNeUmtZdN7dadvToXD1vv50LCAsKlgWBTRl7Q3r3zoXpjX317bv8fT5rVi7srloN+3//l7s9b17u9sYbR2y11bKvqlNUDxiwLLQcNKh2n969c2PbaquI9dfP9bn00tzq3I8+injzzVxYPm1abuVqlYsuyo2/ylFH5U5/fcIJEe+8E/H887l9eOKJy07/fPXVERdfnFtp3K9fbjyzZuVC44jc99Gjc4Hp1Km56/kedFBu3wwfvvx9U6VPn9zcz5mTu8+CBbntm2yS2z8331z7GtN9+uSuQ3z77cuu/xuRu37xxx/nQtl3380F5T//ee704gXL+fV22mm51fKjR0e8917952dE7vn9xBO5582bb+aeZ1XPTwAAAAAAaMMEwJCnstlsLFiwIFZwMubcqtpjj404//zcNXIPPrj2ytmf/Szim9/MBXF77hnRo0euT2O22CJ3iuI//CH3mA3p0iXi97+P+MtfcteI/cMfcqd8rpJO51aMHntsLgA9/PDcqZfHjm16TTfckLtu6wEH5K7RussuuYCu5rVqVzT25nDbbbnVx1XXqd1999ztuitOV9f8+bmfMWhQbtXvggW5wLzmyu1PP42YPn3Z7XXWyQXrX3yRW9k7cmTEgQfmViVXufXW3GmWDz00t6K36uu663Lt6XTEW29FfPe7ubkbNSp3jd0XXsid1rqpNtooFwJ//nntEHjo0Nzq8T33rN1/jz1y22sGwL17555jr74ase22uWB31Kjc82d5Nt4490cMjzySu99tt+WuOV1TJhNx5pm5/bvPPrmx/vrXTR8fAAAAAAC0liyQl7788stsRGS/zJ0At/7XfvvVvkOHDg33i8hm99ijdt8NNmi87w471O7bt2/jfbfcsnbfLbdsvG/fvrX77rBD43032KB23z32aLxvhw61++63X+N96x4SDz10+X0XLlzW97jjlt93zpxlfc84Y7l9j+19Ynaf/udn9+l/fvaBTsvZDxHZ7H/+s+xxf/7z5fd99dVlfa+5Zvl9n312Wd9bbll+38ceW9b3rruW3/f++5f1vf/+5fe9665lfR97bPl9b7llWd9nn11+32uuWdb31VeX3/fnP1/W9z//WX7fCy5Y1nfKlOX2/Z8eO2aH7XJZdt+hV2T/cvfdy3/c445b9rgLFy6/76GH1n4OL6+vY0TuqxmPEd8++PLszodel9350Ouyf+67gtfyShwjslOmLOt7wQXL7+sYkftqpmPErTvsnR1y1i+zjzzySHbEkT9a/uOuxDEie8YZy/rOmbP8vo4Rua9mOkYsKirODvzZDdVfz206aPn7raZWeh/hGPH110ocIy499PvZRx55JDvwxhuyI848ffmP2wbeRzhGfP1V5xhROnCLRvt+vEHnbL97r6j+WvqN7Rp/3DbyPsIx4uuvGseIz2+7abl9Xx09Orvzn3+W3eEvF2Xn3HPH8h+3DbyPcIz4+qvGMeKTxbOyX3Zu12jfDwZtkD3qnydlj/rnSdlPl8xq8+8jHCNqfL36avbzpTOzY//vwOyT5y3//dTvf7dL9rL/7J+du3RGXryPcIz4+uvQQ7MLy6ZkH/9oUPbxj5Y/x3P27Jh9/KNB2YVlXz/f2sD7CMeIr63gGFHx/t+zn8/snf18Zu/s4tPWWW7fL5/pnq0o/yj3uG3gfQSsjVLZbDbb2iE0sPIWLFgQnTp1is+nTYuuXbvW75BO114Nu2hR4w9WULDsFMAr23fx4tyv1IakUrlTQa9K3yVLctf+bcx//5s77e+OO+ZOD33llblVqP/+d8QGG9TuW3Ud4oiIpUtrX1+3rpXp26HDslNOl5ZGVFSsdN8P354Z5x92c62uZanCyBakIyKiMJuJdDa3H66//8wYMLjONYDbt192uuOysojy8sZraNcu97xY2b7l5bn+jSkpiSgsXPm+FRW5fdGY4uJl11xemb6ZTG7uGlNUlOu/sn0rK1d8fegG+n7w31nxw9PvrtU1kyqI8nRRFBUXxKnnDIrxv/x3VJRVxi9/fWxsunmP2o9bWLhsdXU2m3sdNWZlXvdJP0bUfC2vTN9VOEb8d8rsOP1nf6zXdWlhcfXrvihTEelsJm79xYjYvH/3+o+7MseTlXndO0bU77sKx4h3P54dJ153f3WXbEREKqKiIB3p4qK4aFj/uOqpDyNKy+Ku8w+PgX0amOOVOZ6szOveMaLhvit5jHhn5qdx9G/vb7DrkuJlZ7goriiPP4w6NLbs2cAc133cFngf0SDHiJw6x4i3P54eh99/X+0+X+/SgqKiuGyTzeLH0z6K8kwm/ufg78fgbo3McQu/j2iQY0ROndf92x9/FIc+8fsaHbJVUxzZVMTSkuLqlsf2HBGD1+/WeB0t+D6iUY4ROTVe95M/nxonvfCrGo3Z6tPaFWfT8YMYEle3+1eUpTJx746nxsB2G9R7uGoJ+azRoDw+RkxZNC3GvnpJjcZsFKSW3apMpaK8Xe75cNlWP4v+qQ3bxPsIx4gm9G3XLj4tmxq//fCHUVBeGenyqn2WjXQqNy8FlUUxcOrR8Z8t/hCZooo4cZNx0bOwb5t4H+EY0YS+6XQsSH0UL39yaO7m4sZfF9l0RGVJQezU68FYr2TLNvE+wjGiaX0r0h/El/P2z90oy0ZU5PZZ+ut3XRWZdvHPSVfEt7b7SRR2LI11uv01Cou3bhPvI2Bt5NkP+a5jx9pvAJbXb2Ues6lqvgFak31rvmFrzHXX5a7hWly87DTEK7pGb80PoSuyMn1LSpp+CuQafbMdOkRpQVGjXStS6ahIpav7LnduiouXveFfkZXpW1S07MPMmuxbWNj0N2Er0zedbvpzeGX6FhSsUt9shw6xNL2cfZ1KRWm6OMrTlSue41Sq+V7LSTxGrErfVThGZDt0zIW9daWW/W9VebowyqMwsh2acMxemeNJc73uHSNq9c126BhLi5bNSVUAHBGRrtqWKojSopKmzfHKHE9W5nXvGLHMSh4jsh061gp6G1NWWNS0OY5okfcRK+QYUd0327FjLKm7375+HZfUOF5XFhREtqnvr1vgfcQKOUZUy3boEEtKaj4vszV/Fdfu27590+to5vcRTeIYUd13abvac1wVAFdm05EtTy9rKixs+hzn8WeNFcrDY0Rp+5rPh9oBcD1t5H1EkzlGREREZVFBVBZVvXqzUVkdABdGpl27yKZrTHobeR/hGNHEvjVy8kyHlbjyZBt4H+EY0cS+ZTXmtTiV+4qI6jfWmYLItGsX0aEgah3A28L7CFgLCYCB/PSNb0S88UZrVwEAAAAAANCmrMSf4gAAAAAAAADQlgmAAQAAAAAAABJCAAwAAAAAAACQEAJgAAAAAAAAgIQQAAMAAAAAAAAkhAAYAAAAAAAAICEEwAAAAAAAAAAJIQAGAAAAAAAASAgBMAAAAAAAAEBCCIABAAAAAAAAEkIADAAAAAAAAJAQAmAAAAAAAACAhBAAAwAAAAAAACSEABgAAAAAAAAgIQTAAAAAAAAAAAkhAAYAAAAAAABICAEwAAAAAAAAQEIIgKGO559/Pg488MDo1atXpFKpeOSRRxrte9ppp0UqlYpx48bV2j5v3rwYOXJkrLfeetG5c+cYNWpULFy4sFaft956K3bbbbdo165d9OnTJ6655ppmGA0AAAAAAABrEwEw1LFo0aLYdttt41e/+tVy+/3pT3+Kf/7zn9GrV696bSNHjoy33347nnrqqXjsscfi+eefj1NOOaW6fcGCBbH33ntH375944033ohrr702Lrnkkrj99tvX+HgAAAAAAABYexS2dgHQ1uy7776x7777LrfPzJkz4+yzz44nnngi9t9//1ptkydPjscffzxee+212GGHHSIi4uabb4799tsvrrvuuujVq1dMmDAhysrK4s4774zi4uIYPHhwTJo0KW644YZaQTEAAAAAAACsDCuAYSVVVlbGMcccE6NHj47BgwfXa3/55Zejc+fO1eFvRMSwYcOioKAgXnnlleo+u+++exQXF1f3GT58eLz33nsxf/785h8EAAAAAAAAiWQFMKykq6++OgoLC+Occ85psH3WrFnRrVu3WtsKCwujS5cuMWvWrOo+/fv3r9Wne/fu1W3rr79+vcctLS2N0tLS6tsLFiyIiIjy8vIoLy9f9QHRqjKVmSgqSddvSNX/+5xMZcZc56FMJhNFxQ38vVUqVb296nsmY47zUSZTEcVFDc1xw33Ncf7JZCqiOF1nQr++WbW96rs5zk+VmYooKWjgRdtIX3OcfyorKqIk1fDruGp71ffKCnOcjyorKqKk1t+4Zxv6VVzd1xznn0xFJoqztd9zVd2q2l71PVPhfXU+ylRkorCy5n9VZqOxX8/mOP9kKjJRUFlUZ2s2ClLZiIjqtqrv5jj/VFRkIpspWan+5QXmOJ9UlFdGRaZdve1V77oqvp7/qu/l5ZWRTbXuHBcV1T3uwNojlc1ms61dBLRVqVQq/vSnP8XBBx8cERFvvPFG7L///vHmm29WX/u3X79+ce6558a5554bERFXXHFF3H333fHee+/Veqxu3brF2LFj4/TTT4+99947+vfvH7/5zW+q2995550YPHhwvPPOOzFo0KB6tVxyySUxduzYetsnTpwYHTp0WEMjBgAAAACA/HfQQQe1dgnQaqwAhpXwwgsvxJw5c2LjjTeu3pbJZOL888+PcePGxdSpU6NHjx4xZ86cWverqKiIefPmRY8ePSIiokePHjF79uxafapuV/Wp66KLLorzzjuv+vaCBQuiT58+MXTo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yZPj8ccfj9deey122GGHiIi4+eabY7/99ovrrrsuevXqFRMmTIiysrK48847o7i4OAYPHhyTJk2KG264oVZQDAAAAAAAACvDCmBYCVOmTIlZs2bFsGHDqrd16tQphgwZEi+//HJERLz88svRuXPn6vA3ImLYsGFRUFAQr7zySnWf3XffPYqLi6v7DB8+PN57772YP39+C40GAAAAAACApLECGFbCrFmzIiKie/futbZ37969um3WrFnRrVu3Wu2FhYXRpUuXWn369+9f7zGq2tZff/16P7u0tDRKS0urby9YsCAiIsrLy6O8vHx1hpV3MpWZKGrX8OErU5lps/sjU5mJopL0Kt2vrY6puWQymSgqafhvlDKZtrs/MplMFBU3/W+rqvq25TE1l0ymIoqLGpvjija7P5ZX94ru11bH1FwymYooLkw12tZW98fy6m5IcTrXt3ItfR2XpPNzjksKmj7HNe/XVsfUXCorGt9XlRVtd39UVlRESarpc1zVd218HVdWVES7VMO/19r8HK/C37O35TE1l8qKTKP7qrKi7T7nMxWZKM42fY6r+rblMTWXTEUmirINf87MtOH9kanIRGHlyv+3ZFseU3PJ289OFZkoqCxqcv+qvmvjHFdUZCIyxY22tdX9UVGRiWymZJXuV17QNsfUXCrKKyOTadfg9vJU290XFeWVUdFA3Y32//r5UFFR2Waet0VFTT8OQdKkstlstrWLgLYqlUrFn/70pzj44IMjIuKll16KXXbZJT755JPo2bNndb/DDz88UqlU3HfffXHFFVfE3XffHe+9916tx+rWrVuMHTs2Tj/99Nh7772jf//+8Zvf/Ka6/Z133onBgwfHO++8E4MGDapXyyWXXBJjx46tt33ixInRoUOHNTRiAAAAAADIf1WXcYS1kRXAsBJ69OgRERGzZ8+uFQDPnj07tttuu+o+c+bMqXW/ioqKmDdvXvX9e/ToEbNnz67Vp+p2VZ+6LrroojjvvPOqby9YsCD69OkTQ4cOja5du67ewPLMR/+ZEaO/e32Dbdc+en5sstVGLVxR03w0eWaMPuyWlb7ftQ+cFZsM6t0MFbVdH743K0aP+l2Dbdf+blQM2KLh10lr+/D92XHeGfc0uX9RcUGceOag2HST7WLzgb2asbK254OPZscPRv+xwbYbrx0Rm27SvcG21vb+1Dlx1sX3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J9km624Qg9fv2dpl0Iz6dOgem60rMIL8s+w3cqfiftG13RatWAvNY9kcFxdtJvwFmp1EjLx1zjnnxLbbbhtTpkyJyy67LN5555348ssvo6ysLGbNmhV/+ctfYtddd40xY8bENttsE6+99lprlwwAAAAAAADNygpg8lbHjh3jo48+iq5d65+2qlu3bvHtb387vv3tb8fPf/7zePzxx+Pjjz+O//f//l8rVAoAAAAAAAAtQwBM3rryyiub3HefffZpxkoAAAAAAACgbXAKaBJhyZIlsXjx4urb06ZNi3HjxsUTTzzRilUBAAAAAABAyxIAkwgHHXRQ3HPPPRER8cUXX8SQIUPi+uuvj4MPPjhuvfXWVq4OAAAAAAAAWoYAmER48803Y7fddouIiAcffDC6d+8e06ZNi3vuuSduuummVq4OAAAAAAAAWoYAmERYvHhxrLvuuhER8eSTT8b3v//9KCgoiG9961sxbdq0Vq4OAAAAAAAAWoYAmETYdNNN45FHHomPP/44nnjiidh7770jImLOnDmx3nrrtXJ1AAAAAAAA0DIEwCTCmDFj4oILLoh+/frFkCFDYqeddoqI3Grgb3zjG61cHQAAAAAAALSMwtYuANaEQw89NHbdddf49NNPY9ttt63evtdee8X3vve9VqwMAAAAAAAAWo4AmMTo0aNH9OjRo9a2HXfcsZWqAQAAAAAAgJYnACZvff/7329y34cffrgZKwEAAAAAAIC2wTWAyVudOnWq/lpvvfXib3/7W7z++uvV7W+88Ub87W9/i06dOrVilQAAAAAAANByrAAmb911113V/77wwgvj8MMPj9tuuy3S6XRERGQymTjjjDNivfXWa60SAQAAAAAAoEVZAUwi3HnnnXHBBRdUh78REel0Os4777y48847W7EyAAAAAAAAaDkCYBKhoqIi3n333Xrb33333aisrGyFigAAAAAAAKDlOQU0iXDCCSfEqFGj4sMPP4wdd9wxIiJeeeWVuOqqq+KEE05o5eoAAAAAAACgZQiASYTrrrsuevToEddff318+umnERHRs2fPGD16dJx//vmtXB0AAAAAAAC0DAEwea+ioiImTpwYxx13XPzoRz+KBQsWRETEeuut18qVAQAAAAAAQMtyDWDyXmFhYZx22mmxdOnSiMgFv8JfAAAAAAAA1kYCYBJhxx13jH/961+tXQYAAAAAAAC0KqeAJhHOOOOMOP/882PGjBmx/fbbR8eOHWu1b7PNNq1UGQAAAAAAALQcATCJMGLEiIiIOOecc6q3pVKpyGazkUqlIpPJtFZpAAAAAAAA0GIEwCTClClTWrsEAAAAAAAAaHUCYBKhb9++rV0CAAAAAAAAtDoBMInx4Ycfxrhx42Ly5MkREbHlllvGD37wgxgwYEArVwYAAAAAAAAto6C1C4A14Yknnogtt9wyXn311dhmm21im222iVdeeSUGDx4cTz31VGuXBwAAAAAAAC3CCmAS4cc//nH88Ic/jKuuuqre9gsvvDC+853vtFJlAAAAAAAA0HKsACYRJk+eHKNGjaq3/cQTT4x33nmnFSoCAAAAAACAlicAJhE23HDDmDRpUr3tkyZNim7durV8QQAAAAAAANAKnAKaRDj55JPjlFNOiY8++ih23nnniIh48cUX4+qrr47zzjuvlasDAAAAAACAliEAJhEuvvjiWHfddeP666+Piy66KCIievXqFZdcckmcc845rVwdAAAAAAAAtAyngCavPfvss1FWVhapVCp++MMfxowZM+LLL7+ML7/8MmbMmBE/+MEPIpVKrdGfmclk4uKLL47+/ftH+/btY8CAAfGLX/wistlsdZ9sNhtjxoyJnj17Rvv27WPYsGHx/vvv13qcefPmxciRI2O99daLzp07x6hRo2LhwoVrtFYAAAAAAADWLgJg8tpee+0VnTt3jm9/+9vxi1/8Il588cVo3759rLvuus32M6+++uq49dZb45ZbbonJkyfH1VdfHddcc03cfPPN1X2uueaauOmmm+K2226LV155JTp27BjDhw+PpUuXVvcZOXJkvP322/HUU0/FY489Fs8//3yccsopzVY3AAAAAAAAyScAJq9NmTIlfvWrX8XGG28cv/vd72K33XaLzp07x/Dhw+Oqq66KV155JSorK9foz3zppZfioIMOiv333z/69esXhx56aOy9997x6quvRkRu9e+4cePiZz/7WRx00EGxzTbbxD333BOffPJJPPLIIxERMXny5Hj88cfjjjvuiCFDhsSuu+4aN998c/zxj3+MTz75ZI3WCwAAAAAAwNpDAExe69u3b5xwwgkxfvz4mDp1anzwwQdx0003Rffu3ePWW2+NnXfeObp06bJGf+bOO+8cf/vb3+K///1vRET8+9//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XXeNPffcM/bYY4/Yfvvt6wW2q+PAAw+Myy+/PDbeeOMYPHhw/Otf/4obbrghTjzxxIiISKVSce6558Zll10Wm222WfTv3z8uvvji6NWrVxx88MERETFo0KDYZ5994uSTT47bbrstysvL46yzzooRI0ZEr17JXwUIAAAAAABA8xAAk/cGDhwYAwcOjNNOOy0iIiZPnlx9PeDLLrssIiK++OKLNfbzbr755rj44ovjjDPOiDlz5kSvXr3i1FNPjTFjxlT3+dGPfhSLFi2KU045Jb744ovYdddd4/HHH4927dpV95kwYUKcddZZsddee0VBQUEccsghcdNNN62xOgEAAAAAAFj7CIBJlNmzZ8dbb70Vb731Vvz73/+OBQsWNHja5NWx7rrrxrhx42LcuHGN9kmlUnHppZfGpZde2mifLl26xMSJK3/dKgAAAAAAAGiMAJi8NmfOnHjuueeqTwH93//+N4qKimLHHXeMESNGxNChQ2OnnXZq7TIBAAAAAACgRQiAyWs9evSIoqKi2GGHHeKQQw6JoUOHxs477xzt27dv7dIAAAAAAACgxQmAyWs333xzHH/88dGxY8dG+1x77bUxevToFqwKAAAAAAAAWkdBaxcAq+Oqq66KuXPnNtp+3XXXxU9/+tMWrAgAAAAAAABajwCYvLbrrrvGsGHD4rPPPqvXdv3118dPfvKTuOeee1qhMgAAAAAAAGh5AmDy2r333hsDBgyI4cOHx4IFC6q3//KXv4wf//jHMX78+BgxYkQrVggAAAAAAAAtRwBMXissLIyHH3442rdvHwcccEAsXbo0xo0bF6NHj4677rorjjrqqNYuEQAAAAAAAFpMYWsXAKurffv28Ze//CX22GOP2H777eO///1v3HXXXXH00Ue3dmkAAAAAAADQogTA5LVHH320+t+nn356/OAHP4iDDz44OnXqVKvtu9/9bmuUBwAAAAAAAC1KAExeO/jgg+tte+ihh+Khhx6qvp1KpSKTybRgVcCa9vGUz2rd7tChJHr37dpK1dAcpn08NyK17HaH9sWxUe8urVcQa9zUT+fVut2hXXFs3GP9VqqG5vDRnNpz3LGkOPpuaI6T5MO5dea4uDj6dTHHSZGNiA++mBvZGtvWKSqO/p3McXJk46OvPq/1nqtjYXH0W8f76uTIxseLZ9ec4mhfWBK923drtYpYdTM+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",
+      "text/plain": [
+       "<IPython.core.display.Image object>"
+      ]
+     },
+     "execution_count": 11,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# Compile the model\n",
+    "clone_dinov2.set_backend(\"cpu\")\n",
+    "clone_dinov2.set_datatype(aidge_core.dtype.float32)\n",
+    "clone_dinov2.forward_dims([[1,3,224,224]], True)\n",
+    "\n",
+    "# Generate scheduling\n",
+    "s = aidge_core.SequentialScheduler(clone_dinov2)\n",
+    "s.generate_scheduling()\n",
+    "\n",
+    "# Visualize memory usage\n",
+    "_ = aidge_core.generate_optimized_memory_info(s, \"mem_strategy_og_dino\", wrapping=False, display_names=False)\n",
+    "Image(filename=\"./mem_strategy_og_dino/memory_info.png\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "In this tutorial the following concepts were studied:\n",
+    "- Graph transformations, in particular the `fuse_to_metaops` recipe;\n",
+    "- Static analysis, to measure the graph's complexity in terms of number of operations;\n",
+    "- Memory information generation, to visualize the graph's memory usage over inference time.\n"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "aidge",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.10.12"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/source/Tutorial/tiling.html b/source/Tutorial/tiling.html
index 456f03a3422a64f6b519aba463e68669a71a24b6..4ea182afe84494b2f511be34cc859278162c7709 100644
--- a/source/Tutorial/tiling.html
+++ b/source/Tutorial/tiling.html
@@ -59,11 +59,11 @@
     <script src="../../_static/js/navbar_height.js?v=9f396bc2"></script>
     <link rel="index" title="Index" href="../../genindex.html" />
     <link rel="search" title="Search" href="../../search.html" />
-    <link rel="next" title="Export a MNIST model to a CPP standalone project" href="export_cpp.html" />
+    <link rel="next" title="Export 101" href="export_cpp.html" />
     <link rel="prev" title="Post Training Quantization with AIDGE" href="ptq.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
@@ -337,18 +337,24 @@
 <li class="toctree-l1"><a class="reference internal" href="101_first_step.html">Aidge demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="database.html">Database MNIST</a></li>
-<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation with Aidge</a></li>
+<li class="toctree-l1"><a class="reference internal" href="database.html">Data provider tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="graph_matching.html">Graph matching and manipulation</a></li>
 <li class="toctree-l1"><a class="reference internal" href="scheduling.html">Understanding Aidge’s scheduling</a></li>
 <li class="toctree-l1"><a class="reference internal" href="learning.html">Training a simple Neural Network</a></li>
 <li class="toctree-l1"><a class="reference internal" href="ONNX.html">Aidge ONNX tutorial</a></li>
+<li class="toctree-l1"><a class="reference internal" href="static_analysis.html">Perform static analysis on a neural network model</a></li>
+<li class="toctree-l1"><a class="reference internal" href="backend_cuda.html">Backend CUDA example</a></li>
 </ul>
 <ul class="current nav bd-sidenav">
 <li class="toctree-l1"><a class="reference internal" href="ptq.html">Post Training Quantization with AIDGE</a></li>
 <li class="toctree-l1 current active"><a class="current reference internal" href="#">Aidge tiling demonstration</a></li>
 </ul>
 <ul class="nav bd-sidenav">
-<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export a MNIST model to a CPP standalone project</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp.html">Export 101</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_quant.html">Quantized model C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_cpp_add_impl.html">Add a custom operator to the C++ export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_trt.html">TensorRT export</a></li>
+<li class="toctree-l1"><a class="reference internal" href="export_stm32.html">STM32 export</a></li>
 </ul>
 </div>
 </nav></div>
@@ -473,7 +479,7 @@
 <div class="prompt empty docutils container">
 </div>
 <div class="output_area rendered_html docutils container">
-<img src="https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpMZWFreVJlTFVfMCgibGVha3lyZWx1MDxici8+PHN1Yj48ZW0+KExlYWt5UmVMVSMwKTwvZW0+PC9zdWI+Iik6Ojpyb290Q2xzClByb2R1Y2VyXzIoImJuMF9zY2FsZTxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzIpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkJhdGNoTm9ybTJEXzAoImJuMDxici8+PHN1Yj48ZW0+KEJhdGNoTm9ybTJEIzApPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl8zKCJibjBfc2hpZnQ8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMzKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl81KCJibjBfYmF0Y2hfdmFyaWFuY2U8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8wKCJjb252MF93PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNCgiYm4wX2JhdGNoX21lYW48YnIvPjxzdWI+PGVtPihQcm9kdWNlciM0KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpDb252MkRfMCgiY29udjA8YnIvPjxzdWI+PGVtPihDb252MkQjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzEoImNvbnYwX2I8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpSZUxVXzAoInJlbHUwPGJyLz48c3ViPjxlbT4oUmVMVSMwKTwvZW0+PC9zdWI+IikKTGVha3lSZUxVXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8Q29udjJEXzAKUHJvZHVjZXJfMi0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8QmF0Y2hOb3JtMkRfMApCYXRjaE5vcm0yRF8wLS0+fCIwPGJyLz4mZGFycjs8YnIvPjAifFJlTFVfMApQcm9kdWNlcl8zLS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzUtLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjQifEJhdGNoTm9ybTJEXzAKUHJvZHVjZXJfMC0tPnwiMCBbMzIsIDMsIDMsIDNdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8Q29udjJEXzAKUHJvZHVjZXJfNC0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MyJ8QmF0Y2hOb3JtMkRfMApDb252MkRfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzEtLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifENvbnYyRF8wCmlucHV0MCgoaW4jMCkpOjo6aW5wdXRDbHMtLS0+fCImZGFycjs8YnIvPjAifExlYWt5UmVMVV8wClJlTFVfMC0tLT58IjA8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg=="/></div>
+<img src="https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpDb252MkRfMCgiY29udjA8YnIvPjxzdWI+PGVtPihDb252MkQjMCk8L2VtPjwvc3ViPiIpCkxlYWt5UmVMVV8wKCJsZWFreXJlbHUwPGJyLz48c3ViPjxlbT4oTGVha3lSZUxVIzApPC9lbT48L3N1Yj4iKTo6OnJvb3RDbHMKUHJvZHVjZXJfMigiYm4wX3NjYWxlPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMik8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMSgiY29udjBfYjxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkJhdGNoTm9ybTJEXzAoImJuMDxici8+PHN1Yj48ZW0+KEJhdGNoTm9ybTJEIzApPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl8wKCJjb252MF93PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMygiYm4wX3NoaWZ0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMyk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNCgiYm4wX2JhdGNoX21lYW48YnIvPjxzdWI+PGVtPihQcm9kdWNlciM0KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl81KCJibjBfYmF0Y2hfdmFyaWFuY2U8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpSZUxVXzAoInJlbHUwPGJyLz48c3ViPjxlbT4oUmVMVSMwKTwvZW0+PC9zdWI+IikKQ29udjJEXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8QmF0Y2hOb3JtMkRfMApMZWFreVJlTFVfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMApQcm9kdWNlcl8yLS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzEtLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifENvbnYyRF8wCkJhdGNoTm9ybTJEXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8wClByb2R1Y2VyXzAtLT58IjAgWzMyLCAzLCAzLCAzXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifENvbnYyRF8wClByb2R1Y2VyXzMtLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifEJhdGNoTm9ybTJEXzAKUHJvZHVjZXJfNC0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MyJ8QmF0Y2hOb3JtMkRfMApQcm9kdWNlcl81LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz40InxCYXRjaE5vcm0yRF8wCmlucHV0MCgoaW4jMCkpOjo6aW5wdXRDbHMtLS0+fCImZGFycjs8YnIvPjAifExlYWt5UmVMVV8wClJlTFVfMC0tLT58IjA8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg=="/></div>
 </div>
 <p>Let’s create an input to link to the model.</p>
 <div class="nbinput nblast docutils container">
@@ -577,7 +583,7 @@ True
 <div class="prompt empty docutils container">
 </div>
 <div class="output_area rendered_html docutils container">
-<img src="https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpMZWFreVJlTFVfMCgibGVha3lyZWx1MDxici8+PHN1Yj48ZW0+KExlYWt5UmVMVSMwKTwvZW0+PC9zdWI+Iik6Ojpyb290Q2xzClByb2R1Y2VyXzE4KCJibjBfc2NhbGU8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxOCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKQmF0Y2hOb3JtMkRfMCgiYm4wPGJyLz48c3ViPjxlbT4oQmF0Y2hOb3JtMkQjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzE5KCJibjBfc2hpZnQ8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxOSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMjEoImJuMF9iYXRjaF92YXJpYW5jZTxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzIxKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8yMCgiYm4wX2JhdGNoX21lYW48YnIvPjxzdWI+PGVtPihQcm9kdWNlciMyMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUmVMVV8wKCJyZWx1MDxici8+PHN1Yj48ZW0+KFJlTFUjMCk8L2VtPjwvc3ViPiIpCkNvbmNhdF8wKCJDb25jYXQ8YnIvPjxzdWI+PGVtPihDb25jYXQjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzE2KCJjb252MF93PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTYpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzE3KCJjb252MF9iPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTcpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8wKCJjb252MF8wPGJyLz48c3ViPjxlbT4oQ29udjJEIzApPC9lbT48L3N1Yj4iKQpTbGljZV8wKCJjb252MF9TbGljZV8wPGJyLz48c3ViPjxlbT4oU2xpY2UjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzAoImNvbnYwX1NsaWNlXzBfc3RhcnRzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMSgiY29udjBfU2xpY2VfMF9lbmRzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMigiY29udjBfU2xpY2VfMF9heGVzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMik8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMygiY29udjBfU2xpY2VfMF9zdGVwczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzMpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8xKCJjb252MF8xNjxici8+PHN1Yj48ZW0+KENvbnYyRCMxKTwvZW0+PC9zdWI+IikKU2xpY2VfMSgiY29udjBfU2xpY2VfMTxici8+PHN1Yj48ZW0+KFNsaWNlIzEpPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl80KCJjb252MF9TbGljZV8xX3N0YXJ0czxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzQpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzUoImNvbnYwX1NsaWNlXzFfZW5kczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzUpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzYoImNvbnYwX1NsaWNlXzFfYXhlczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzYpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzcoImNvbnYwX1NsaWNlXzFfc3RlcHM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM3KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpDb252MkRfMigiY29udjBfMzI8YnIvPjxzdWI+PGVtPihDb252MkQjMik8L2VtPjwvc3ViPiIpClNsaWNlXzIoImNvbnYwX1NsaWNlXzI8YnIvPjxzdWI+PGVtPihTbGljZSMyKTwvZW0+PC9zdWI+IikKUHJvZHVjZXJfOCgiY29udjBfU2xpY2VfMl9zdGFydHM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM4KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl85KCJjb252MF9TbGljZV8yX2VuZHM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM5KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8xMCgiY29udjBfU2xpY2VfMl9heGVzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTApPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzExKCJjb252MF9TbGljZV8yX3N0ZXBzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8zKCJjb252MF80ODxici8+PHN1Yj48ZW0+KENvbnYyRCMzKTwvZW0+PC9zdWI+IikKU2xpY2VfMygiY29udjBfU2xpY2VfMzxici8+PHN1Yj48ZW0+KFNsaWNlIzMpPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl8xMigiY29udjBfU2xpY2VfM19zdGFydHM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxMik8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMTMoImNvbnYwX1NsaWNlXzNfZW5kczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEzKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8xNCgiY29udjBfU2xpY2VfM19heGVzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTQpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzE1KCJjb252MF9TbGljZV8zX3N0ZXBzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTUpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkxlYWt5UmVMVV8wLS0+fCIwIFs0LCAzLCA2NiwgNjZdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MCJ8U2xpY2VfMApMZWFreVJlTFVfMC0tPnwiMCBbNCwgMywgNjYsIDY2XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifFNsaWNlXzEKTGVha3lSZUxVXzAtLT58IjAgWzQsIDMsIDY2LCA2Nl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4wInxTbGljZV8yCkxlYWt5UmVMVV8wLS0+fCIwIFs0LCAzLCA2NiwgNjZdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MCJ8U2xpY2VfMwpQcm9kdWNlcl8xOC0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8QmF0Y2hOb3JtMkRfMApCYXRjaE5vcm0yRF8wLS0+fCIwIFs0LCAzMiwgNjQsIDY0XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifFJlTFVfMApQcm9kdWNlcl8xOS0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8QmF0Y2hOb3JtMkRfMApQcm9kdWNlcl8yMS0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+NCJ8QmF0Y2hOb3JtMkRfMApQcm9kdWNlcl8yMC0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MyJ8QmF0Y2hOb3JtMkRfMApDb25jYXRfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzE2LS0+fCIwIFszMiwgMywgMywgM10gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxDb252MkRfMApQcm9kdWNlcl8xNi0tPnwiMCBbMzIsIDMsIDMsIDNdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8Q29udjJEXzEKUHJvZHVjZXJfMTYtLT58IjAgWzMyLCAzLCAzLCAzXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifENvbnYyRF8yClByb2R1Y2VyXzE2LS0+fCIwIFszMiwgMywgMywgM10gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxDb252MkRfMwpQcm9kdWNlcl8xNy0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8Q29udjJEXzAKUHJvZHVjZXJfMTctLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifENvbnYyRF8xClByb2R1Y2VyXzE3LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxDb252MkRfMgpQcm9kdWNlcl8xNy0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8Q29udjJEXzMKQ29udjJEXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8Q29uY2F0XzAKU2xpY2VfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMApQcm9kdWNlcl8wLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8wClByb2R1Y2VyXzEtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzAKUHJvZHVjZXJfMi0tPnwiMCBbNF0gSW50ODxici8+JmRhcnI7PGJyLz4zInxTbGljZV8wClByb2R1Y2VyXzMtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzAKQ29udjJEXzEtLT58IjA8YnIvPiZkYXJyOzxici8+MSJ8Q29uY2F0XzAKU2xpY2VfMS0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMQpQcm9kdWNlcl80LS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8xClByb2R1Y2VyXzUtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzEKUHJvZHVjZXJfNi0tPnwiMCBbNF0gSW50ODxici8+JmRhcnI7PGJyLz4zInxTbGljZV8xClByb2R1Y2VyXzctLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzEKQ29udjJEXzItLT58IjA8YnIvPiZkYXJyOzxici8+MiJ8Q29uY2F0XzAKU2xpY2VfMi0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMgpQcm9kdWNlcl84LS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8yClByb2R1Y2VyXzktLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzIKUHJvZHVjZXJfMTAtLT58IjAgWzRdIEludDg8YnIvPiZkYXJyOzxici8+MyJ8U2xpY2VfMgpQcm9kdWNlcl8xMS0tPnwiMCBbNF0gSW50NjQ8YnIvPiZkYXJyOzxici8+NCJ8U2xpY2VfMgpDb252MkRfMy0tPnwiMDxici8+JmRhcnI7PGJyLz4zInxDb25jYXRfMApTbGljZV8zLS0+fCIwPGJyLz4mZGFycjs8YnIvPjAifENvbnYyRF8zClByb2R1Y2VyXzEyLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8zClByb2R1Y2VyXzEzLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4yInxTbGljZV8zClByb2R1Y2VyXzE0LS0+fCIwIFs0XSBJbnQ4PGJyLz4mZGFycjs8YnIvPjMifFNsaWNlXzMKUHJvZHVjZXJfMTUtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzMKaW5wdXQwKChpbiMwKSk6OjppbnB1dENscy0tLT58IiBbNCwgMywgNjYsIDY2XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifExlYWt5UmVMVV8wClJlTFVfMC0tLT58IjAgWzQsIDMyLCA2NCwgNjRdIEZsb2F0MzI8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg=="/></div>
+<img src="https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpDb25jYXRfMCgiQ29uY2F0PGJyLz48c3ViPjxlbT4oQ29uY2F0IzApPC9lbT48L3N1Yj4iKQpMZWFreVJlTFVfMCgibGVha3lyZWx1MDxici8+PHN1Yj48ZW0+KExlYWt5UmVMVSMwKTwvZW0+PC9zdWI+Iik6Ojpyb290Q2xzClByb2R1Y2VyXzE4KCJibjBfc2NhbGU8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxOCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKQmF0Y2hOb3JtMkRfMCgiYm4wPGJyLz48c3ViPjxlbT4oQmF0Y2hOb3JtMkQjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzE5KCJibjBfc2hpZnQ8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxOSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMjAoImJuMF9iYXRjaF9tZWFuPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMjApPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzE2KCJjb252MF93PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTYpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzIxKCJibjBfYmF0Y2hfdmFyaWFuY2U8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMyMSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUmVMVV8wKCJyZWx1MDxici8+PHN1Yj48ZW0+KFJlTFUjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzE3KCJjb252MF9iPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTcpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8wKCJjb252MF8wPGJyLz48c3ViPjxlbT4oQ29udjJEIzApPC9lbT48L3N1Yj4iKQpTbGljZV8wKCJjb252MF9TbGljZV8wPGJyLz48c3ViPjxlbT4oU2xpY2UjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzAoImNvbnYwX1NsaWNlXzBfMTxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzApPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzEoImNvbnYwX1NsaWNlXzBfMjxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzIoImNvbnYwX1NsaWNlXzBfMzxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzIpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzMoImNvbnYwX1NsaWNlXzBfNDxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzMpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8xKCJjb252MF8xNjxici8+PHN1Yj48ZW0+KENvbnYyRCMxKTwvZW0+PC9zdWI+IikKU2xpY2VfMSgiY29udjBfU2xpY2VfMTxici8+PHN1Yj48ZW0+KFNsaWNlIzEpPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl80KCJjb252MF9TbGljZV8xXzE8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM0KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl81KCJjb252MF9TbGljZV8xXzI8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl82KCJjb252MF9TbGljZV8xXzM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM2KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl83KCJjb252MF9TbGljZV8xXzQ8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM3KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpDb252MkRfMigiY29udjBfMzI8YnIvPjxzdWI+PGVtPihDb252MkQjMik8L2VtPjwvc3ViPiIpClNsaWNlXzIoImNvbnYwX1NsaWNlXzI8YnIvPjxzdWI+PGVtPihTbGljZSMyKTwvZW0+PC9zdWI+IikKUHJvZHVjZXJfOCgiY29udjBfU2xpY2VfMl8xPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjOCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfOSgiY29udjBfU2xpY2VfMl8yPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjOSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMTAoImNvbnYwX1NsaWNlXzJfMzxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEwKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8xMSgiY29udjBfU2xpY2VfMl80PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8zKCJjb252MF80ODxici8+PHN1Yj48ZW0+KENvbnYyRCMzKTwvZW0+PC9zdWI+IikKU2xpY2VfMygiY29udjBfU2xpY2VfMzxici8+PHN1Yj48ZW0+KFNsaWNlIzMpPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl8xMigiY29udjBfU2xpY2VfM18xPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTIpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzEzKCJjb252MF9TbGljZV8zXzI8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxMyk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMTQoImNvbnYwX1NsaWNlXzNfMzxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzE0KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8xNSgiY29udjBfU2xpY2VfM180PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTUpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbmNhdF8wLS0+fCIwPGJyLz4mZGFycjs8YnIvPjAifEJhdGNoTm9ybTJEXzAKTGVha3lSZUxVXzAtLT58IjAgWzQsIDMsIDY2LCA2Nl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4wInxTbGljZV8wCkxlYWt5UmVMVV8wLS0+fCIwIFs0LCAzLCA2NiwgNjZdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MCJ8U2xpY2VfMQpMZWFreVJlTFVfMC0tPnwiMCBbNCwgMywgNjYsIDY2XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifFNsaWNlXzIKTGVha3lSZUxVXzAtLT58IjAgWzQsIDMsIDY2LCA2Nl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4wInxTbGljZV8zClByb2R1Y2VyXzE4LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxCYXRjaE5vcm0yRF8wCkJhdGNoTm9ybTJEXzAtLT58IjAgWzQsIDMyLCA2NCwgNjRdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8wClByb2R1Y2VyXzE5LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzIwLS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4zInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzE2LS0+fCIwIFszMiwgMywgMywgM10gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxDb252MkRfMApQcm9kdWNlcl8xNi0tPnwiMCBbMzIsIDMsIDMsIDNdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8Q29udjJEXzEKUHJvZHVjZXJfMTYtLT58IjAgWzMyLCAzLCAzLCAzXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifENvbnYyRF8yClByb2R1Y2VyXzE2LS0+fCIwIFszMiwgMywgMywgM10gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxDb252MkRfMwpQcm9kdWNlcl8yMS0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+NCJ8QmF0Y2hOb3JtMkRfMApQcm9kdWNlcl8xNy0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8Q29udjJEXzAKUHJvZHVjZXJfMTctLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifENvbnYyRF8xClByb2R1Y2VyXzE3LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxDb252MkRfMgpQcm9kdWNlcl8xNy0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8Q29udjJEXzMKQ29udjJEXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8Q29uY2F0XzAKU2xpY2VfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMApQcm9kdWNlcl8wLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8wClByb2R1Y2VyXzEtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzAKUHJvZHVjZXJfMi0tPnwiMCBbNF0gSW50ODxici8+JmRhcnI7PGJyLz4zInxTbGljZV8wClByb2R1Y2VyXzMtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzAKQ29udjJEXzEtLT58IjA8YnIvPiZkYXJyOzxici8+MSJ8Q29uY2F0XzAKU2xpY2VfMS0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMQpQcm9kdWNlcl80LS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8xClByb2R1Y2VyXzUtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzEKUHJvZHVjZXJfNi0tPnwiMCBbNF0gSW50ODxici8+JmRhcnI7PGJyLz4zInxTbGljZV8xClByb2R1Y2VyXzctLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzEKQ29udjJEXzItLT58IjA8YnIvPiZkYXJyOzxici8+MiJ8Q29uY2F0XzAKU2xpY2VfMi0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMgpQcm9kdWNlcl84LS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8yClByb2R1Y2VyXzktLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzIKUHJvZHVjZXJfMTAtLT58IjAgWzRdIEludDg8YnIvPiZkYXJyOzxici8+MyJ8U2xpY2VfMgpQcm9kdWNlcl8xMS0tPnwiMCBbNF0gSW50NjQ8YnIvPiZkYXJyOzxici8+NCJ8U2xpY2VfMgpDb252MkRfMy0tPnwiMDxici8+JmRhcnI7PGJyLz4zInxDb25jYXRfMApTbGljZV8zLS0+fCIwPGJyLz4mZGFycjs8YnIvPjAifENvbnYyRF8zClByb2R1Y2VyXzEyLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8zClByb2R1Y2VyXzEzLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4yInxTbGljZV8zClByb2R1Y2VyXzE0LS0+fCIwIFs0XSBJbnQ4PGJyLz4mZGFycjs8YnIvPjMifFNsaWNlXzMKUHJvZHVjZXJfMTUtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzMKaW5wdXQwKChpbiMwKSk6OjppbnB1dENscy0tLT58IiBbNCwgMywgNjYsIDY2XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifExlYWt5UmVMVV8wClJlTFVfMC0tLT58IjAgWzQsIDMyLCA2NCwgNjRdIEZsb2F0MzI8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg=="/></div>
 </div>
 <p>Now we run the transformed model and compare it’s ouput value to the previous one.</p>
 <div class="nbinput nblast docutils container">
@@ -636,7 +642,7 @@ True
        title="next page">
       <div class="prev-next-info">
         <p class="prev-next-subtitle">next</p>
-        <p class="prev-next-title">Export a MNIST model to a CPP standalone project</p>
+        <p class="prev-next-title">Export 101</p>
       </div>
       <i class="fa-solid fa-angle-right"></i>
     </a>
diff --git a/source/Tutorial/tiling.ipynb b/source/Tutorial/tiling.ipynb
index 348f23a0324ccd44c7d872661f77ff5395dfbf73..b8325d72bb96448b79010b800d959dcb8c0147b5 100644
--- a/source/Tutorial/tiling.ipynb
+++ b/source/Tutorial/tiling.ipynb
@@ -19,10 +19,10 @@
    "execution_count": 1,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.326573Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.326489Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.547399Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.547077Z"
+     "iopub.execute_input": "2025-05-19T10:06:13.739825Z",
+     "iopub.status.busy": "2025-05-19T10:06:13.739573Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.063371Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.062983Z"
     }
    },
    "outputs": [],
@@ -47,10 +47,10 @@
    "execution_count": 2,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.549005Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.548895Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.551018Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.550817Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.065335Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.065159Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.067670Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.067402Z"
     }
    },
    "outputs": [],
@@ -83,10 +83,10 @@
    "execution_count": 3,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.551948Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.551866Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.553743Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.553545Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.068602Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.068480Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.070689Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.070442Z"
     }
    },
    "outputs": [],
@@ -105,17 +105,17 @@
    "execution_count": 4,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.554581Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.554454Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.557074Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.556897Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.071549Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.071432Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.074561Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.074324Z"
     }
    },
    "outputs": [
     {
      "data": {
       "text/html": [
-       "<img src=\"https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpMZWFreVJlTFVfMCgibGVha3lyZWx1MDxici8+PHN1Yj48ZW0+KExlYWt5UmVMVSMwKTwvZW0+PC9zdWI+Iik6Ojpyb290Q2xzClByb2R1Y2VyXzIoImJuMF9zY2FsZTxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzIpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkJhdGNoTm9ybTJEXzAoImJuMDxici8+PHN1Yj48ZW0+KEJhdGNoTm9ybTJEIzApPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl8zKCJibjBfc2hpZnQ8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMzKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl81KCJibjBfYmF0Y2hfdmFyaWFuY2U8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8wKCJjb252MF93PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNCgiYm4wX2JhdGNoX21lYW48YnIvPjxzdWI+PGVtPihQcm9kdWNlciM0KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpDb252MkRfMCgiY29udjA8YnIvPjxzdWI+PGVtPihDb252MkQjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzEoImNvbnYwX2I8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpSZUxVXzAoInJlbHUwPGJyLz48c3ViPjxlbT4oUmVMVSMwKTwvZW0+PC9zdWI+IikKTGVha3lSZUxVXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8Q29udjJEXzAKUHJvZHVjZXJfMi0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8QmF0Y2hOb3JtMkRfMApCYXRjaE5vcm0yRF8wLS0+fCIwPGJyLz4mZGFycjs8YnIvPjAifFJlTFVfMApQcm9kdWNlcl8zLS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzUtLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjQifEJhdGNoTm9ybTJEXzAKUHJvZHVjZXJfMC0tPnwiMCBbMzIsIDMsIDMsIDNdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8Q29udjJEXzAKUHJvZHVjZXJfNC0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MyJ8QmF0Y2hOb3JtMkRfMApDb252MkRfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzEtLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifENvbnYyRF8wCmlucHV0MCgoaW4jMCkpOjo6aW5wdXRDbHMtLS0+fCImZGFycjs8YnIvPjAifExlYWt5UmVMVV8wClJlTFVfMC0tLT58IjA8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg==\"/>"
+       "<img src=\"https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpDb252MkRfMCgiY29udjA8YnIvPjxzdWI+PGVtPihDb252MkQjMCk8L2VtPjwvc3ViPiIpCkxlYWt5UmVMVV8wKCJsZWFreXJlbHUwPGJyLz48c3ViPjxlbT4oTGVha3lSZUxVIzApPC9lbT48L3N1Yj4iKTo6OnJvb3RDbHMKUHJvZHVjZXJfMigiYm4wX3NjYWxlPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMik8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMSgiY29udjBfYjxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkJhdGNoTm9ybTJEXzAoImJuMDxici8+PHN1Yj48ZW0+KEJhdGNoTm9ybTJEIzApPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl8wKCJjb252MF93PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMygiYm4wX3NoaWZ0PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMyk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfNCgiYm4wX2JhdGNoX21lYW48YnIvPjxzdWI+PGVtPihQcm9kdWNlciM0KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl81KCJibjBfYmF0Y2hfdmFyaWFuY2U8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpSZUxVXzAoInJlbHUwPGJyLz48c3ViPjxlbT4oUmVMVSMwKTwvZW0+PC9zdWI+IikKQ29udjJEXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8QmF0Y2hOb3JtMkRfMApMZWFreVJlTFVfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMApQcm9kdWNlcl8yLS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzEtLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifENvbnYyRF8wCkJhdGNoTm9ybTJEXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8wClByb2R1Y2VyXzAtLT58IjAgWzMyLCAzLCAzLCAzXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifENvbnYyRF8wClByb2R1Y2VyXzMtLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifEJhdGNoTm9ybTJEXzAKUHJvZHVjZXJfNC0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MyJ8QmF0Y2hOb3JtMkRfMApQcm9kdWNlcl81LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz40InxCYXRjaE5vcm0yRF8wCmlucHV0MCgoaW4jMCkpOjo6aW5wdXRDbHMtLS0+fCImZGFycjs8YnIvPjAifExlYWt5UmVMVV8wClJlTFVfMC0tLT58IjA8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg==\"/>"
       ],
       "text/plain": [
        "<IPython.core.display.Image object>"
@@ -141,10 +141,10 @@
    "execution_count": 5,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.557864Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.557787Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.559560Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.559379Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.075442Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.075328Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.077436Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.077193Z"
     }
    },
    "outputs": [],
@@ -165,10 +165,10 @@
    "execution_count": 6,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.560372Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.560250Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.562219Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.562030Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.078820Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.078700Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.081058Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.080813Z"
     }
    },
    "outputs": [],
@@ -186,10 +186,10 @@
    "execution_count": 7,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.562975Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.562898Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.564747Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.564561Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.081870Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.081757Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.083966Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.083721Z"
     }
    },
    "outputs": [],
@@ -215,10 +215,10 @@
    "execution_count": 8,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.565491Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.565353Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.566821Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.566634Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.084812Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.084701Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.086427Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.086190Z"
     }
    },
    "outputs": [],
@@ -238,10 +238,10 @@
    "execution_count": 9,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.567522Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.567390Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.572347Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.572129Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.087234Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.087121Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.091948Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.091694Z"
     }
    },
    "outputs": [],
@@ -270,10 +270,10 @@
    "execution_count": 10,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.573212Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.573090Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.575488Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.575296Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.092785Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.092671Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.095413Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.095168Z"
     }
    },
    "outputs": [
@@ -311,17 +311,17 @@
    "execution_count": 11,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.576308Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.576223Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.578157Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.577982Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.096270Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.096151Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.098481Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.098247Z"
     }
    },
    "outputs": [
     {
      "data": {
       "text/html": [
-       "<img src=\"https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpMZWFreVJlTFVfMCgibGVha3lyZWx1MDxici8+PHN1Yj48ZW0+KExlYWt5UmVMVSMwKTwvZW0+PC9zdWI+Iik6Ojpyb290Q2xzClByb2R1Y2VyXzE4KCJibjBfc2NhbGU8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxOCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKQmF0Y2hOb3JtMkRfMCgiYm4wPGJyLz48c3ViPjxlbT4oQmF0Y2hOb3JtMkQjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzE5KCJibjBfc2hpZnQ8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxOSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMjEoImJuMF9iYXRjaF92YXJpYW5jZTxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzIxKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8yMCgiYm4wX2JhdGNoX21lYW48YnIvPjxzdWI+PGVtPihQcm9kdWNlciMyMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUmVMVV8wKCJyZWx1MDxici8+PHN1Yj48ZW0+KFJlTFUjMCk8L2VtPjwvc3ViPiIpCkNvbmNhdF8wKCJDb25jYXQ8YnIvPjxzdWI+PGVtPihDb25jYXQjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzE2KCJjb252MF93PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTYpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzE3KCJjb252MF9iPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTcpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8wKCJjb252MF8wPGJyLz48c3ViPjxlbT4oQ29udjJEIzApPC9lbT48L3N1Yj4iKQpTbGljZV8wKCJjb252MF9TbGljZV8wPGJyLz48c3ViPjxlbT4oU2xpY2UjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzAoImNvbnYwX1NsaWNlXzBfc3RhcnRzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMSgiY29udjBfU2xpY2VfMF9lbmRzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMigiY29udjBfU2xpY2VfMF9heGVzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMik8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMygiY29udjBfU2xpY2VfMF9zdGVwczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzMpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8xKCJjb252MF8xNjxici8+PHN1Yj48ZW0+KENvbnYyRCMxKTwvZW0+PC9zdWI+IikKU2xpY2VfMSgiY29udjBfU2xpY2VfMTxici8+PHN1Yj48ZW0+KFNsaWNlIzEpPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl80KCJjb252MF9TbGljZV8xX3N0YXJ0czxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzQpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzUoImNvbnYwX1NsaWNlXzFfZW5kczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzUpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzYoImNvbnYwX1NsaWNlXzFfYXhlczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzYpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzcoImNvbnYwX1NsaWNlXzFfc3RlcHM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM3KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpDb252MkRfMigiY29udjBfMzI8YnIvPjxzdWI+PGVtPihDb252MkQjMik8L2VtPjwvc3ViPiIpClNsaWNlXzIoImNvbnYwX1NsaWNlXzI8YnIvPjxzdWI+PGVtPihTbGljZSMyKTwvZW0+PC9zdWI+IikKUHJvZHVjZXJfOCgiY29udjBfU2xpY2VfMl9zdGFydHM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM4KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl85KCJjb252MF9TbGljZV8yX2VuZHM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM5KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8xMCgiY29udjBfU2xpY2VfMl9heGVzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTApPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzExKCJjb252MF9TbGljZV8yX3N0ZXBzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8zKCJjb252MF80ODxici8+PHN1Yj48ZW0+KENvbnYyRCMzKTwvZW0+PC9zdWI+IikKU2xpY2VfMygiY29udjBfU2xpY2VfMzxici8+PHN1Yj48ZW0+KFNsaWNlIzMpPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl8xMigiY29udjBfU2xpY2VfM19zdGFydHM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxMik8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMTMoImNvbnYwX1NsaWNlXzNfZW5kczxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEzKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8xNCgiY29udjBfU2xpY2VfM19heGVzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTQpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzE1KCJjb252MF9TbGljZV8zX3N0ZXBzPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTUpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkxlYWt5UmVMVV8wLS0+fCIwIFs0LCAzLCA2NiwgNjZdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MCJ8U2xpY2VfMApMZWFreVJlTFVfMC0tPnwiMCBbNCwgMywgNjYsIDY2XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifFNsaWNlXzEKTGVha3lSZUxVXzAtLT58IjAgWzQsIDMsIDY2LCA2Nl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4wInxTbGljZV8yCkxlYWt5UmVMVV8wLS0+fCIwIFs0LCAzLCA2NiwgNjZdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MCJ8U2xpY2VfMwpQcm9kdWNlcl8xOC0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8QmF0Y2hOb3JtMkRfMApCYXRjaE5vcm0yRF8wLS0+fCIwIFs0LCAzMiwgNjQsIDY0XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifFJlTFVfMApQcm9kdWNlcl8xOS0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8QmF0Y2hOb3JtMkRfMApQcm9kdWNlcl8yMS0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+NCJ8QmF0Y2hOb3JtMkRfMApQcm9kdWNlcl8yMC0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MyJ8QmF0Y2hOb3JtMkRfMApDb25jYXRfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzE2LS0+fCIwIFszMiwgMywgMywgM10gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxDb252MkRfMApQcm9kdWNlcl8xNi0tPnwiMCBbMzIsIDMsIDMsIDNdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8Q29udjJEXzEKUHJvZHVjZXJfMTYtLT58IjAgWzMyLCAzLCAzLCAzXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifENvbnYyRF8yClByb2R1Y2VyXzE2LS0+fCIwIFszMiwgMywgMywgM10gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxDb252MkRfMwpQcm9kdWNlcl8xNy0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8Q29udjJEXzAKUHJvZHVjZXJfMTctLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifENvbnYyRF8xClByb2R1Y2VyXzE3LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxDb252MkRfMgpQcm9kdWNlcl8xNy0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8Q29udjJEXzMKQ29udjJEXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8Q29uY2F0XzAKU2xpY2VfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMApQcm9kdWNlcl8wLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8wClByb2R1Y2VyXzEtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzAKUHJvZHVjZXJfMi0tPnwiMCBbNF0gSW50ODxici8+JmRhcnI7PGJyLz4zInxTbGljZV8wClByb2R1Y2VyXzMtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzAKQ29udjJEXzEtLT58IjA8YnIvPiZkYXJyOzxici8+MSJ8Q29uY2F0XzAKU2xpY2VfMS0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMQpQcm9kdWNlcl80LS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8xClByb2R1Y2VyXzUtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzEKUHJvZHVjZXJfNi0tPnwiMCBbNF0gSW50ODxici8+JmRhcnI7PGJyLz4zInxTbGljZV8xClByb2R1Y2VyXzctLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzEKQ29udjJEXzItLT58IjA8YnIvPiZkYXJyOzxici8+MiJ8Q29uY2F0XzAKU2xpY2VfMi0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMgpQcm9kdWNlcl84LS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8yClByb2R1Y2VyXzktLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzIKUHJvZHVjZXJfMTAtLT58IjAgWzRdIEludDg8YnIvPiZkYXJyOzxici8+MyJ8U2xpY2VfMgpQcm9kdWNlcl8xMS0tPnwiMCBbNF0gSW50NjQ8YnIvPiZkYXJyOzxici8+NCJ8U2xpY2VfMgpDb252MkRfMy0tPnwiMDxici8+JmRhcnI7PGJyLz4zInxDb25jYXRfMApTbGljZV8zLS0+fCIwPGJyLz4mZGFycjs8YnIvPjAifENvbnYyRF8zClByb2R1Y2VyXzEyLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8zClByb2R1Y2VyXzEzLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4yInxTbGljZV8zClByb2R1Y2VyXzE0LS0+fCIwIFs0XSBJbnQ4PGJyLz4mZGFycjs8YnIvPjMifFNsaWNlXzMKUHJvZHVjZXJfMTUtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzMKaW5wdXQwKChpbiMwKSk6OjppbnB1dENscy0tLT58IiBbNCwgMywgNjYsIDY2XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifExlYWt5UmVMVV8wClJlTFVfMC0tLT58IjAgWzQsIDMyLCA2NCwgNjRdIEZsb2F0MzI8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg==\"/>"
+       "<img src=\"https://mermaid.ink/img/JSV7aW5pdDogeydmbG93Y2hhcnQnOiB7ICdjdXJ2ZSc6ICdtb25vdG9uZVknfSwgJ2ZvbnRGYW1pbHknOiAnVmVyZGFuYScgfSB9JSUKZmxvd2NoYXJ0IFRCCgpDb25jYXRfMCgiQ29uY2F0PGJyLz48c3ViPjxlbT4oQ29uY2F0IzApPC9lbT48L3N1Yj4iKQpMZWFreVJlTFVfMCgibGVha3lyZWx1MDxici8+PHN1Yj48ZW0+KExlYWt5UmVMVSMwKTwvZW0+PC9zdWI+Iik6Ojpyb290Q2xzClByb2R1Y2VyXzE4KCJibjBfc2NhbGU8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxOCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKQmF0Y2hOb3JtMkRfMCgiYm4wPGJyLz48c3ViPjxlbT4oQmF0Y2hOb3JtMkQjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzE5KCJibjBfc2hpZnQ8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxOSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMjAoImJuMF9iYXRjaF9tZWFuPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMjApPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzE2KCJjb252MF93PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTYpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzIxKCJibjBfYmF0Y2hfdmFyaWFuY2U8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMyMSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUmVMVV8wKCJyZWx1MDxici8+PHN1Yj48ZW0+KFJlTFUjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzE3KCJjb252MF9iPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTcpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8wKCJjb252MF8wPGJyLz48c3ViPjxlbT4oQ29udjJEIzApPC9lbT48L3N1Yj4iKQpTbGljZV8wKCJjb252MF9TbGljZV8wPGJyLz48c3ViPjxlbT4oU2xpY2UjMCk8L2VtPjwvc3ViPiIpClByb2R1Y2VyXzAoImNvbnYwX1NsaWNlXzBfMTxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzApPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzEoImNvbnYwX1NsaWNlXzBfMjxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzIoImNvbnYwX1NsaWNlXzBfMzxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzIpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzMoImNvbnYwX1NsaWNlXzBfNDxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzMpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8xKCJjb252MF8xNjxici8+PHN1Yj48ZW0+KENvbnYyRCMxKTwvZW0+PC9zdWI+IikKU2xpY2VfMSgiY29udjBfU2xpY2VfMTxici8+PHN1Yj48ZW0+KFNsaWNlIzEpPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl80KCJjb252MF9TbGljZV8xXzE8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM0KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl81KCJjb252MF9TbGljZV8xXzI8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM1KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl82KCJjb252MF9TbGljZV8xXzM8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM2KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl83KCJjb252MF9TbGljZV8xXzQ8YnIvPjxzdWI+PGVtPihQcm9kdWNlciM3KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpDb252MkRfMigiY29udjBfMzI8YnIvPjxzdWI+PGVtPihDb252MkQjMik8L2VtPjwvc3ViPiIpClNsaWNlXzIoImNvbnYwX1NsaWNlXzI8YnIvPjxzdWI+PGVtPihTbGljZSMyKTwvZW0+PC9zdWI+IikKUHJvZHVjZXJfOCgiY29udjBfU2xpY2VfMl8xPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjOCk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfOSgiY29udjBfU2xpY2VfMl8yPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjOSk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMTAoImNvbnYwX1NsaWNlXzJfMzxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzEwKTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8xMSgiY29udjBfU2xpY2VfMl80PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTEpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbnYyRF8zKCJjb252MF80ODxici8+PHN1Yj48ZW0+KENvbnYyRCMzKTwvZW0+PC9zdWI+IikKU2xpY2VfMygiY29udjBfU2xpY2VfMzxici8+PHN1Yj48ZW0+KFNsaWNlIzMpPC9lbT48L3N1Yj4iKQpQcm9kdWNlcl8xMigiY29udjBfU2xpY2VfM18xPGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTIpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzClByb2R1Y2VyXzEzKCJjb252MF9TbGljZV8zXzI8YnIvPjxzdWI+PGVtPihQcm9kdWNlciMxMyk8L2VtPjwvc3ViPiIpOjo6cHJvZHVjZXJDbHMKUHJvZHVjZXJfMTQoImNvbnYwX1NsaWNlXzNfMzxici8+PHN1Yj48ZW0+KFByb2R1Y2VyIzE0KTwvZW0+PC9zdWI+Iik6Ojpwcm9kdWNlckNscwpQcm9kdWNlcl8xNSgiY29udjBfU2xpY2VfM180PGJyLz48c3ViPjxlbT4oUHJvZHVjZXIjMTUpPC9lbT48L3N1Yj4iKTo6OnByb2R1Y2VyQ2xzCkNvbmNhdF8wLS0+fCIwPGJyLz4mZGFycjs8YnIvPjAifEJhdGNoTm9ybTJEXzAKTGVha3lSZUxVXzAtLT58IjAgWzQsIDMsIDY2LCA2Nl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4wInxTbGljZV8wCkxlYWt5UmVMVV8wLS0+fCIwIFs0LCAzLCA2NiwgNjZdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MCJ8U2xpY2VfMQpMZWFreVJlTFVfMC0tPnwiMCBbNCwgMywgNjYsIDY2XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifFNsaWNlXzIKTGVha3lSZUxVXzAtLT58IjAgWzQsIDMsIDY2LCA2Nl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4wInxTbGljZV8zClByb2R1Y2VyXzE4LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxCYXRjaE5vcm0yRF8wCkJhdGNoTm9ybTJEXzAtLT58IjAgWzQsIDMyLCA2NCwgNjRdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MCJ8UmVMVV8wClByb2R1Y2VyXzE5LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzIwLS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4zInxCYXRjaE5vcm0yRF8wClByb2R1Y2VyXzE2LS0+fCIwIFszMiwgMywgMywgM10gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxDb252MkRfMApQcm9kdWNlcl8xNi0tPnwiMCBbMzIsIDMsIDMsIDNdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MSJ8Q29udjJEXzEKUHJvZHVjZXJfMTYtLT58IjAgWzMyLCAzLCAzLCAzXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjEifENvbnYyRF8yClByb2R1Y2VyXzE2LS0+fCIwIFszMiwgMywgMywgM10gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4xInxDb252MkRfMwpQcm9kdWNlcl8yMS0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+NCJ8QmF0Y2hOb3JtMkRfMApQcm9kdWNlcl8xNy0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8Q29udjJEXzAKUHJvZHVjZXJfMTctLT58IjAgWzMyXSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjIifENvbnYyRF8xClByb2R1Y2VyXzE3LS0+fCIwIFszMl0gRmxvYXQzMjxici8+JmRhcnI7PGJyLz4yInxDb252MkRfMgpQcm9kdWNlcl8xNy0tPnwiMCBbMzJdIEZsb2F0MzI8YnIvPiZkYXJyOzxici8+MiJ8Q29udjJEXzMKQ29udjJEXzAtLT58IjA8YnIvPiZkYXJyOzxici8+MCJ8Q29uY2F0XzAKU2xpY2VfMC0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMApQcm9kdWNlcl8wLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8wClByb2R1Y2VyXzEtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzAKUHJvZHVjZXJfMi0tPnwiMCBbNF0gSW50ODxici8+JmRhcnI7PGJyLz4zInxTbGljZV8wClByb2R1Y2VyXzMtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzAKQ29udjJEXzEtLT58IjA8YnIvPiZkYXJyOzxici8+MSJ8Q29uY2F0XzAKU2xpY2VfMS0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMQpQcm9kdWNlcl80LS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8xClByb2R1Y2VyXzUtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzEKUHJvZHVjZXJfNi0tPnwiMCBbNF0gSW50ODxici8+JmRhcnI7PGJyLz4zInxTbGljZV8xClByb2R1Y2VyXzctLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzEKQ29udjJEXzItLT58IjA8YnIvPiZkYXJyOzxici8+MiJ8Q29uY2F0XzAKU2xpY2VfMi0tPnwiMDxici8+JmRhcnI7PGJyLz4wInxDb252MkRfMgpQcm9kdWNlcl84LS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8yClByb2R1Y2VyXzktLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjIifFNsaWNlXzIKUHJvZHVjZXJfMTAtLT58IjAgWzRdIEludDg8YnIvPiZkYXJyOzxici8+MyJ8U2xpY2VfMgpQcm9kdWNlcl8xMS0tPnwiMCBbNF0gSW50NjQ8YnIvPiZkYXJyOzxici8+NCJ8U2xpY2VfMgpDb252MkRfMy0tPnwiMDxici8+JmRhcnI7PGJyLz4zInxDb25jYXRfMApTbGljZV8zLS0+fCIwPGJyLz4mZGFycjs8YnIvPjAifENvbnYyRF8zClByb2R1Y2VyXzEyLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4xInxTbGljZV8zClByb2R1Y2VyXzEzLS0+fCIwIFs0XSBJbnQ2NDxici8+JmRhcnI7PGJyLz4yInxTbGljZV8zClByb2R1Y2VyXzE0LS0+fCIwIFs0XSBJbnQ4PGJyLz4mZGFycjs8YnIvPjMifFNsaWNlXzMKUHJvZHVjZXJfMTUtLT58IjAgWzRdIEludDY0PGJyLz4mZGFycjs8YnIvPjQifFNsaWNlXzMKaW5wdXQwKChpbiMwKSk6OjppbnB1dENscy0tLT58IiBbNCwgMywgNjYsIDY2XSBGbG9hdDMyPGJyLz4mZGFycjs8YnIvPjAifExlYWt5UmVMVV8wClJlTFVfMC0tLT58IjAgWzQsIDMyLCA2NCwgNjRdIEZsb2F0MzI8YnIvPiZkYXJyOyJ8b3V0cHV0MCgob3V0IzApKTo6Om91dHB1dENscwpjbGFzc0RlZiBpbnB1dENscyBmaWxsOiNhZmEKY2xhc3NEZWYgb3V0cHV0Q2xzIGZpbGw6I2ZmYQpjbGFzc0RlZiBleHRlcm5hbENscyBmaWxsOiNjY2MKY2xhc3NEZWYgcHJvZHVjZXJDbHMgZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHMgZmlsbDojZjlmOWZmLHN0cm9rZS13aWR0aDoxcHgsc3Ryb2tlLWRhc2hhcnJheTogNSA1CmNsYXNzRGVmIG1ldGFDbHMgc3Ryb2tlLXdpZHRoOjVweApjbGFzc0RlZiByb290Q2xzIHN0cm9rZTojZjAwCmNsYXNzRGVmIHByb2R1Y2VyQ2xzX3Jvb3RDbHMgc3Ryb2tlOiNmMDAsZmlsbDojY2NmCmNsYXNzRGVmIGdlbmVyaWNDbHNfcm9vdENscyBzdHJva2U6I2YwMCxmaWxsOiNmOWY5ZmYsc3Ryb2tlLXdpZHRoOjFweCxzdHJva2UtZGFzaGFycmF5OiA1IDUKY2xhc3NEZWYgbWV0YUNsc19yb290Q2xzIHN0cm9rZTojZjAwLHN0cm9rZS13aWR0aDo1cHgKCg==\"/>"
       ],
       "text/plain": [
        "<IPython.core.display.Image object>"
@@ -348,10 +348,10 @@
    "execution_count": 12,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.578864Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.578788Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.584117Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.583910Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.099260Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.099162Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.104690Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.104421Z"
     }
    },
    "outputs": [],
@@ -367,10 +367,10 @@
    "execution_count": 13,
    "metadata": {
     "execution": {
-     "iopub.execute_input": "2025-05-11T15:22:26.584936Z",
-     "iopub.status.busy": "2025-05-11T15:22:26.584848Z",
-     "iopub.status.idle": "2025-05-11T15:22:26.586908Z",
-     "shell.execute_reply": "2025-05-11T15:22:26.586716Z"
+     "iopub.execute_input": "2025-05-19T10:06:14.105604Z",
+     "iopub.status.busy": "2025-05-19T10:06:14.105486Z",
+     "iopub.status.idle": "2025-05-19T10:06:14.107949Z",
+     "shell.execute_reply": "2025-05-19T10:06:14.107704Z"
     }
    },
    "outputs": [
diff --git a/source/UserGuide/architecture.html b/source/UserGuide/architecture.html
index 68a110cd15311f08e56f6305f155ba9a96203407..a9f49756e600a1740c8ba32fc90f1c8a258f953e 100644
--- a/source/UserGuide/architecture.html
+++ b/source/UserGuide/architecture.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="User Guide" href="index.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/benchmark.html b/source/UserGuide/benchmark.html
index 9bc142355f32524d71f3a8dabcbe33163c41f8f5..3034863a3c1c8fddc5743f780ced4499da439503 100644
--- a/source/UserGuide/benchmark.html
+++ b/source/UserGuide/benchmark.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Learn model" href="learnModel.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/data.html b/source/UserGuide/data.html
index 889f69c4bef76149902f83189a5a478d136e4e02..9f5b966e3a3e97c82b32f4b489a85178b90d5a4e 100644
--- a/source/UserGuide/data.html
+++ b/source/UserGuide/data.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Framework architecture" href="architecture.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/ensureRobustness.html b/source/UserGuide/ensureRobustness.html
index 01187a4124fa1db7afac55b4dd8b2aaa68295a86..be744eef92a7a43f4fb650e4b7ffa96fae39f017 100644
--- a/source/UserGuide/ensureRobustness.html
+++ b/source/UserGuide/ensureRobustness.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Benchmark neural network model" href="benchmark.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/executeGraph.html b/source/UserGuide/executeGraph.html
index f2b79d256962744a3053083c303caee85a0404a1..a23fc67fe066224c96f225318db20c0026261f7a 100644
--- a/source/UserGuide/executeGraph.html
+++ b/source/UserGuide/executeGraph.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Static analysis" href="staticAnalysis.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/export.html b/source/UserGuide/export.html
index f1cb5ab90daf82c05ce39f01b3f5c6709316c6bc..868bcb84a3d74d16739e88d82af43dc3a4359751 100644
--- a/source/UserGuide/export.html
+++ b/source/UserGuide/export.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Optimize graph" href="optimizeGraph.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/index.html b/source/UserGuide/index.html
index 73b22ef38240421e376cbb2c0594cfb064a2acf2..2a21fe48d7a7f05b63caa4d06d4ab42bcbc2a6a2 100644
--- a/source/UserGuide/index.html
+++ b/source/UserGuide/index.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Quick Start" href="../GetStarted/quickStart.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/interoperability.html b/source/UserGuide/interoperability.html
index 5b2964298ce5202448890368623ad195e9609135..59871c50b45361e3480f1931006e5cb9d904538a 100644
--- a/source/UserGuide/interoperability.html
+++ b/source/UserGuide/interoperability.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Load and store model" href="loadStoreModel.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/learnEdge.html b/source/UserGuide/learnEdge.html
index 0e35ef94a46fee406e82cc28d18e75e0c89a79b9..afc17fab22f6759cac93e742aa9f099c2959f3c7 100644
--- a/source/UserGuide/learnEdge.html
+++ b/source/UserGuide/learnEdge.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Perform an export" href="export.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/learnModel.html b/source/UserGuide/learnModel.html
index e8c271d3d2376dbd074a68f0bc86d3074ba30122..ef74bdd206229bb88a8a5818afb984e362872bf6 100644
--- a/source/UserGuide/learnModel.html
+++ b/source/UserGuide/learnModel.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Runtime graph execution" href="executeGraph.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/loadStoreModel.html b/source/UserGuide/loadStoreModel.html
index c71c6771cb7b45ff8addf03711695305aa80fd27..4b904f425b6b680e965e60d45f48920156d7d6db 100644
--- a/source/UserGuide/loadStoreModel.html
+++ b/source/UserGuide/loadStoreModel.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Computational graph" href="modelGraph.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/modelGraph.html b/source/UserGuide/modelGraph.html
index 92406cc7294f1f30bb6ee8f8b2272be3b90f857d..f0bbc37549902bad24a671fe19170d3c204b5886 100644
--- a/source/UserGuide/modelGraph.html
+++ b/source/UserGuide/modelGraph.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Data" href="data.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/optimizeGraph.html b/source/UserGuide/optimizeGraph.html
index 2f142833510e4787421b68b0f9a9e87a87a986d6..a0aa6ce46e17e423510edb3eadef508a99523f2e 100644
--- a/source/UserGuide/optimizeGraph.html
+++ b/source/UserGuide/optimizeGraph.html
@@ -68,7 +68,7 @@ window.addEventListener("load", () => mermaid.run());
     <link rel="prev" title="Ensure robustness" href="ensureRobustness.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/staticAnalysis.html b/source/UserGuide/staticAnalysis.html
index 99715f005fb55f19150b36a7b593ebe60c194dfe..fbcbadcefe884ad06da56f64557ac270ff72fef5 100644
--- a/source/UserGuide/staticAnalysis.html
+++ b/source/UserGuide/staticAnalysis.html
@@ -60,7 +60,7 @@
     <link rel="prev" title="Transform graph" href="transformGraph.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>
   
   
diff --git a/source/UserGuide/transformGraph.html b/source/UserGuide/transformGraph.html
index a7c2fdb8819216bb8595d96595cdd01866e12e1f..bfcfa6b79b10a9b353ce8d6bec11a4d22a9e4320 100644
--- a/source/UserGuide/transformGraph.html
+++ b/source/UserGuide/transformGraph.html
@@ -68,7 +68,7 @@ window.addEventListener("load", () => mermaid.run());
     <link rel="prev" title="Plateform interoperability" href="interoperability.html" />
   <meta name="viewport" content="width=device-width, initial-scale=1"/>
   <meta name="docsearch:language" content="en"/>
-  <meta name="docsearch:version" content="0.6.0" />
+  <meta name="docsearch:version" content="0.6.1" />
   </head>