diff --git a/conftest.py b/conftest.py
index d4b323f73f88a8ac7ef3a033047f8792157e7b36..17af2d710597f775b6b24bec05f51fc7e42b0cf2 100644
--- a/conftest.py
+++ b/conftest.py
@@ -48,17 +48,19 @@ add_path_to_ignore('_local_tmp')
 try:
     import cupy
 except ImportError:
-    collect_ignore += [os.path.join(SCRIPT_FOLDER, "tests/nbackend/kernelcreation/test_gpu.py")]
+    collect_ignore += [
+        os.path.join(SCRIPT_FOLDER, "tests/kernelcreation/test_gpu.py"),
+        os.path.join(SCRIPT_FOLDER, "src/pystencils/backend/jit/gpu_cupy.py")
+    ]
     add_path_to_ignore('src/pystencils/gpu')
 
 try:
     import waLBerla
 except ImportError:
-    collect_ignore += [os.path.join(SCRIPT_FOLDER, "tests/test_aligned_array.py"),
-                       os.path.join(SCRIPT_FOLDER, "tests/test_datahandling_parallel.py"),
-                       os.path.join(SCRIPT_FOLDER, "doc/notebooks/03_tutorial_datahandling.ipynb"),
+    collect_ignore += [os.path.join(SCRIPT_FOLDER, "docs/source/tutorials/03_tutorial_datahandling.ipynb"),
                        os.path.join(SCRIPT_FOLDER, "src/pystencils/datahandling/parallel_datahandling.py"),
-                       os.path.join(SCRIPT_FOLDER, "tests/test_small_block_benchmark.ipynb")]
+                       os.path.join(SCRIPT_FOLDER, "tests/runtime/test_datahandling_parallel.py"),
+                       os.path.join(SCRIPT_FOLDER, "tests/runtime/test_small_block_benchmark.ipynb")]
 
 try:
     import blitzdb
diff --git a/docs/source/tutorials/01_tutorial_getting_started.ipynb b/docs/source/tutorials/01_tutorial_getting_started.ipynb
index 91f69948b1e06fe1604ff6fd33c94a7b6d283f71..baa3aac6ac9ad5a42db9244ff03d5f34e246530f 100644
--- a/docs/source/tutorials/01_tutorial_getting_started.ipynb
+++ b/docs/source/tutorials/01_tutorial_getting_started.ipynb
@@ -2,7 +2,7 @@
  "cells": [
   {
    "cell_type": "code",
-   "execution_count": 1,
+   "execution_count": 37,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -35,7 +35,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 2,
+   "execution_count": 38,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -52,7 +52,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 3,
+   "execution_count": 39,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -63,14 +63,14 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 4,
+   "execution_count": 40,
    "metadata": {},
    "outputs": [
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "4.78 ms ± 9.53 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n"
+      "4.74 ms ± 1.1 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)\n"
      ]
     }
    ],
@@ -88,19 +88,22 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 5,
+   "execution_count": 41,
    "metadata": {},
    "outputs": [
     {
      "data": {
+      "image/png": "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",
       "text/latex": [
-       "$\\displaystyle {dst}_{(0,0)} \\leftarrow \\frac{{src}_{(1,0)}}{4} + \\frac{{src}_{(0,1)}}{4} + \\frac{{src}_{(0,-1)}}{4} + \\frac{{src}_{(-1,0)}}{4}$"
+       "$\\displaystyle {dst}_{(0,0)} \\leftarrow_{} \\frac{{src}_{(1,0)}}{4} + \\frac{{src}_{(0,1)}}{4} + \\frac{{src}_{(0,-1)}}{4} + \\frac{{src}_{(-1,0)}}{4}$"
       ],
       "text/plain": [
-       "Assignment(dst_C, src_E/4 + src_N/4 + src_S/4 + src_W/4)"
+       "         src_E   src_N   src_S   src_W\n",
+       "dst_C := ───── + ───── + ───── + ─────\n",
+       "           4       4       4       4  "
       ]
      },
-     "execution_count": 5,
+     "execution_count": 41,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -115,12 +118,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 6,
+   "execution_count": 42,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/plain": [
        "<Figure size 300x300 with 1 Axes>"
       ]
@@ -144,7 +147,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 7,
+   "execution_count": 43,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -162,7 +165,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 8,
+   "execution_count": 44,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -172,14 +175,14 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 9,
+   "execution_count": 45,
    "metadata": {},
    "outputs": [
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "987 µs ± 5.12 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)\n"
+      "548 μs ± 34.7 μs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)\n"
      ]
     }
    ],
@@ -209,7 +212,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 10,
+   "execution_count": 46,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -226,7 +229,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 11,
+   "execution_count": 47,
    "metadata": {},
    "outputs": [
     {
@@ -235,7 +238,7 @@
        "sympy.core.symbol.Symbol"
       ]
      },
-     "execution_count": 11,
+     "execution_count": 47,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -255,12 +258,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": 48,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAKoAAAAYCAYAAABqdGb8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFRElEQVRoBe2b63HUMBDHDyYFAKmA0AGPDpIOklBBoAMYvuVbBjoIVACkg4QK8ugAOoC5DsL/ZySNzpb8kGXd3eCd0UnW8+/d1e5KTh7c398vhtLp6ekjjflgxu2Z/ET1y6Fzzf1nDlgOtOnVju00MP+oSd/aMSqfq3yr9MzWzfnMgQQORPXqYcJkDHkj5dz3xn5UeU91z726uThzYCgHonqVqqhY05uhKOr9pdg2bKg3zc8jOLDFfI3qVZKiihGflfx4lAV+qe6uL3/V9536zha4L8NMP/GtwTPVPVLyNz3eDf5uFQlzVK9SY1THAE0O4w6VXrjKjoLG0H9X+aeOrnNzkwM/xDcOs9YoUIYc/9V+pfRcCVf6+V/zdv2CX4idXiVZVPvKmoxdTHz6QmXfwtoujVz9YOwH5e8bjXNFHw78USd4jSDh5YVSg//iL0bgreG3ittDwtzQq2SLaiZ7r/wAFphn8l8dLEGxuSUoQsLDoQ9XuBGWJQOeO81x1JN58Bl+uxuanuNctwx43Vx9CloPJW3oVZJFNZPBhHOVcTHsbiwku72LjtW/pNJgdUibQsXwGD7D7zHvXxIvShrUq1SLyp0pL0DuSAxp3blqJ+bosrhuvrmQhQPw+1ippHFIBR7VK6eoZte9MSu8Un6ihIa/NnXX6kM8tFD+2NQNzQgTrmKDhmCIzZGz3sPDh4xbPTthm7Yvyvu64WzQtCZywlDsKiGjM9XZw5UeVwh+w3eHfaV14gfDp9F65bt+vgp8Ign7tdIXpX0949JhCrHOWHqpCX62TFICQ8vyjSYOffDjUqn+/lgpPERpQhbfjKyQDYlNRCweIviNMq+Lssi0UlS9JBrvC2KpZ4Rgd+GTWrsekwgmB+PYghh6ARce4m42LIRFquNu9Q7VqAl+hOtACflUpDKuHasZO6CCey2KKmzZ9Mq6/hvzwtXL64c7OU6XFUOU53JvKLxjsl3M5KMwCCOCClkV1lyoPRQ/t52g/Q8YWM8z5vGItep1rnkCPG7uQAFlxftxu1E/A/CMgWilifCOkqkPuFJUgazHNyHB+OOyl8di0PiQIi5Uj2dAgIM+Lqi/3aQoJIK23oU5sbbUtcXbWfFoLdYlBHmi3F3uU+9RSCHbjIMbqjmnwJtNryrX79CqIMBWMNXBiTbV8YkuxAR/aJ8ybqhznokx9MHp98GbOO9iGuDRUjjrgvDHTVEmxg/xz3qNEB76w/e10liZ7hgF/K63IOjFQrCzEILvQnJ9SWLORrxUGIMgDCLw+rxg8FriU63Lt3AOT3Vi48SsO0pcx18fn/05t0yxqLwk6Y+ZfGX3qY42e6hQcRSx47n6qlNJDPW1u55XhGz4AV7ccGniA8vKoUnP7wyI2DmiOm+UBqr1ssp0RxOyE4m/mHihF+f78KUSDOECFgV2YQB9RtBXjcV616kkhvraXc9YMO5LuRX5rWT/ODxmwbrmS24XBg54eD6rrFhLDMtT1S0jEyPXYPwZ6Z+rOqtMH6T8K8qYNxFDudc7Uo51nZy0TtJhKgZM86Gw+8pjB5rY0Ko+N562xbQWYQtGx26utu7BtpJ4gwBMJa6/NCHokjscSxOzNq3vLiFhvdxnYpU5mHA3eNY6sL0xGU/7tMFWvAH8HkMl8UZxFreoIJHAie8IMVbivyjKNTUIH9afuLC62lJO2IL7DR1o1oQyvKwwYk3BzsFv64kYdR1E4I/QN52JKCT3lhxYcJ8IvnhsqnVTiDi2pOdKwdh7zFosKugkcHb8ofJBF/G93+w/7iiesrEulG+0xxoior/cLWUUiDm0fAAAAABJRU5ErkJggg==",
       "text/latex": [
        "$\\displaystyle x^{2} \\left(x + y + 5\\right) + x^{2}$"
       ],
@@ -269,7 +272,7 @@
        "x â‹…(x + y + 5) + x "
       ]
      },
-     "execution_count": 12,
+     "execution_count": 48,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -288,12 +291,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 13,
+   "execution_count": 49,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAI0AAAAXCAYAAAA2o8yAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAFB0lEQVR4nO2ae4hVVRTGfzMaVho9oDAoCyqUKBky85HKpExWEloplGBNaEYpWOKj6fXx0cPMNC0rJohG6q+yoTQrRSOitLDS1Cihx1SC0UsFsadOf+xz5c6ZM3Pn3nvuvZPMB8Nm9j577W+ts+7aa699qlpbW+lBD/JB72Im254F3A6cG3V9ATwsaV2RvEoK2w3A9cBA4C/gI6BB0q6KEusmyGWf6iLl7wEWApcAlwLvAq/bHlyk3FKjFngWGAmMBf4FNto+rZKkuhFq6cQ+VWlvT7Z/J3hlY6qCSwjb/YADwCRJayvNp7shbp+itqeY4F7AFKAfsDktuWXCSYSou6/SRLoK2+OA2cAI4FTgN2AnsELSWykv18Y+RTuN7YuBLcDxwEHgOkk7i5VbZqwAthP06Paw/Tgwn5AerAF+BU4HhhC2lrSdpo190og0u4Ea4GRgMrDKdm2+SaXteuBF4ApJ76XAq6vrLgNGAaMkHS7TmvUUqKvt2wgOswqYKenv2PhxKdHMyGtnn96xBzYAdcBkSa9l9VcRlLwFWCzpnsxYRPrr6N9PbQ8F7gamp0k+FwrhbvtJ4EbCy/s2QeZcYCkwT9LShPGBwA7gY0ljUlapHWz3AR4BfiDBYQAk/ZMwL2/bROOJ9omfnuYDR4CHohwlgyciwc/HBSegGuiT45lSIC/utlcANwFjJX3VgcwPo3Z4B+NPA70IuUU5UEfYhpqBI7Yn2F5oe47tEZ3My/u9dmafNpFG0ue2X4oETQOabN8LzAVeAe6ICX4MWAf8SEiWphL21Am59U8X+XC3/Uz0zCRgn+3+0dBBSQezxH4G/AEMi69newrhJT4laUf6GiViaNT+CWwDLopxep8QTX7J7i/gvXZqn6Q6zQMRKdmeTQiH64Fpko7Enu0PvEzIazZFSl0t6e0umSB9dJX7nQQn3wTszfqbly0sCvVbgbNtn5npt90XWAb8DDxYMm3a44yonQ+0AqMJegwGNgBjgFc7mJvPe+3UPol1GtuLgEy42gzUSTqUt4odwHYLcE4eU1ZJqu+i7FS5234UaABukNQc9S0GFgC3SmrKMb+FlHS13QjMJFRpB0lqyRo7kfDjPQsYKandSTAt23R0esoOb9PTdJgIy4FTYn01wETCqaAlNrY9D9lpc8/kNcOAZtuDCIn+FgLXXFhOerruj9pt2Q4DIOmQ7fWEA8hlJJcPUrFNO6exPZWQIP1E2H7mENvzioWk5Qnr1hMM2VTokbtE3DcTtoJMMrySkPzOkpSznJ6yrrujdn8H45ni5AkJa6ZmmzY5je1rgCZgF2Gf3A3MiI6W3Rql4i5pH/AlMCQy/DigUdK24hgXhE0EB77QdlI+mkmMv8vuTNs2Rxe2PQpYTagyjo8y8PsJ0WhxIcLLhTJw/wDoCzQSqq/3pSAzb0j6HlgLDCBEiqOwfSUwnhCF3snqT9021ZHgGuBNwqVUnaS9EcnVwCfARNujC1mg1CgT90xe049wGVvJO6pZhBLHMtsbbS+xvZpwdXAYmCHpAJTONtW2zyd4ZivBE7+JPdMQtUvyFV5qlJF7JtxvBV4oUlZRkLSHcMe0EriAEHFqCRHo8kzFt5S2Sf3TiGMRttcQCpbDJW2tNJ9Ko9iPsI55RMnvtcBzPQ4TkNr3NMcSbA8gXImcB9xM+Ix1QUVJdSP0OE0yrgIWEU4ibwB3laDA+b9FT07Tg7zxH/RCc51argrkAAAAAElFTkSuQmCC",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAIYAAAAXCAYAAADOQzd3AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAEbUlEQVRoBeWZ7VHcMBCGD4YCSNIB6QBIBUAHkFQAdBCGf/xjoINABYR0AKmAjxJIBbm5DsjzGMsjzNnBn+eb2xmdZFnafbVa7a58S8/Pz6OqdHJyssacbcqYYvsL5ZT+R+pBExhXAXicghS7tE//5KW5OL9lulipqYYz5j3B+ML51N+pflM++DxwOgPvYcBI+wftB8rn0LdAdaEulmsq4ZR5V9HcT7T1HvNABxiD3i6QRr5G33roWKC6UBe1PAZKzIeMXZSpgueB9Bb38wC0B4yFuliqk2MEwBiIIeQb5Yr2eeifpxrcGvQu9SKGkldbFeuikWHIFWYmc9eUG9pzZRzgNXyIfYP2XCSf4Mx7Zg9l3oOzpGqU10Vjw1B8ytQETgU3BlltSfVGg9MbiYnnHu3BG0WKVyM+on3rqql9Xqdu5O2Y/0YXlXMMmOgh/lC2aAcjCIrdpD/00Xwfwcdk0AQwueW8b1b9UchRESp4Ry7ps/VTfa7lM+HddI0agd4hMYpUmnvRCDP8puqijmFMYDbOAXLRGsdPSh1ygZbOKVWEnkLDCDcRk7CjjoXXXiM4Te7FuhVjpD8x7LivSrtMF5UNIxW8R30M47/psx+45iVOG/LcJOuMWIvGMVQSmwdy0jLAQl1khoFQlXWQCnaj9ym6GW8d0h1jftmgNlxUDhnO7YIqYv/vR7iIn7H7gecsxKXvLqk9HH2RIdoPinoN98MDKbZr+uLQMuK5yj4W6mIZ5oH8CnZuoeOOcknZ5lkXq7B8NkzXYKht7HpD9XBDya/7K3269j5J/Uub7ofYKHoRDSOPpRVdJIYBcz1FrIAJzwoMJ+Vj7j2Pw6C2scPPU+nBkIzh5lMx2ffqlMYv226DJxiFt4+wH0GMOZ3eKxlD3do+hlByD9M4u91A4CN9GsiIuhW3CR+TPhPVPGl4ypkW58VRJr9t7LrsECb1Dqc5sOLP92VDmNvFGuUf70+QZ46gMRhqNNbWdJEYRqQIeCc0TSHhXe0aOdM2fkS/3snrqu67EjEnbGKY1wg7/MJh0AA8idkp5Z3exL5Cj8GYVtcoHgoik1uf9TQyFxwxrjVdxDlGIhDmQSFJopkKXKVfhQyaWsaul8q8ZrpwdeNG5Tega71oiGX6f+NNmupiJd1wP56YtAhAi3fxsTCTsa7v+YitRh1j9xTGOhBcr/lFpA3Dk3uUJ0O+e3Xbti70GJ4CyzhlPqadEX2+C8lY1j+QRpfYXxlFqgfleVPplZCt93bzswsCbT2IYdPPClKruliBoV7COCrjEQIPKf4hppWa3GgwWVhxzICoS+x6SDN+NyN8N3DpyuydwLEjFor7Ipmwx39LtKqLVv5ES2A2+GGxtZPPBmIrTXVTmLBNrfuuTPOwxnhRb5LP+GWP7QmyLIMgjYCit0yItm7ba2HhNfVlZOnvoNZYipSXhpKZE4qfiXsuWbgeLLhsh/kV+AKctUPqANfougppEKGkEN2MXrCJGoYxXE8x9T+JGUHrTew/A0Y1bcMwkZ8AAAAASUVORK5CYII=",
       "text/latex": [
        "$\\displaystyle x^{3} + x^{2} y + 6 x^{2}$"
       ],
@@ -302,7 +305,7 @@
        "x  + x â‹…y + 6â‹…x "
       ]
      },
-     "execution_count": 13,
+     "execution_count": 49,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -313,12 +316,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 14,
+   "execution_count": 50,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAHsAAAAXCAYAAAAr8TBeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAFMklEQVR4nO2afazWYxjHP+eUkTIviQxhXsLMmqQOlV6czmiUxkZblF42imhFefv6Mi9Jb0irZTrzT6hGpVWysAo7KJVVf1DUHCtURoV0/HH/nvb4nd9zTj1vJ+t8t2fX89zXfd/X9buv33293PdTUlNTQyOODTTNZbDtcUA/oC3wJ/AZME7Shjzo1og8ozTH8d2A14BrgR7AAWC57dNynLcRBUBJPt247RbAHqCvpIUJ/ErgRuACSX/kTXAjasF2e+ALYKikWZCjG0/ASQRvsStBeAdgADC60dDZw3ZPYARQBpwK/AKsB6ZKWpzqJ+lL2+8Cz9ieI+n3XN14HFOBtcCnCbxngd+A6XmWeczA9ovAcuBqYAEwEXgfaEUIqXE8D7QGHoA8unHbk4A7gM6SvovxLgE2AbMkDcuLwPr1GQi8AXSX9FExZNaFXPWxPRSYCVQCwyT9FeMfJ+nvhHEbgROBC5rGGMuAcuA2SfPS2ksiRe8GxksaGxs3mWDo7nFDR7gHKAHeyvAgWcktBGyPIuyY0ZImJvDbAuuAzyV1LbQ+kczjCZ7xBxIMDZBk6AhzgKeA8rgbHwMcJPj5JmntLxEWfGaCoacCdwI9JG3KIPAG4B9CaZaEI5ZbQKyKaKcM/FeAJoS4WSyUE1z1fOCg7d62H7E90nZZPWNTz/NfY0v6GngTuIyQTGH7UWAU8DZwb3p/29OAQUB/YJft1tGnRVqf5kA7YGOmxOxI5RYYXwH7gI5xhu3bCQs/TdK6IurUIaL7gTXAIuAFYAqw2vbHtltlGFsV0a5JCdoT0aSyPYLgPpYCAyQdjPW9j5CBfwhUp31Gp/U5m7ATqut5oCORWzBE7rAKONf2Wan26KWdBOwAniyWPhHOiOgYoAboQlj3K4FlQFfgnaSBkvYQ1rVNrdJL0jbbU4CxBJe1GuiXIU6UHIaiLSNaqxzLVm4ctrcC52Vgr7Adb6uUNLCOKVcRFrCM4DohGPgcYFC0gMXUJ7UpDwC3SNoa/V5v+1ZgM3C97TJJSZXQr8CZmersnWnfB0vaW4ci9WFfRE84jL7Zyp0CnBJrawf0IWSvW2O8tfXMl4pzHYH5ti8FHiKUlJUNoM/uiK5JMzQAkvbaXgoMBq4huextBuyrZWzb/QmJ0U+EGm0kucXMHRFtWVenXORKmpIw30DC4s7OotRZTXCXqSTtVUIoGi6p3lq1APpsjujuDPyU12yWILeU8OJtKY0xbgJmAxsI8WAzMCQqN7JFNWHHZpyjQHKzhqRdwEagffQS9gRmSFrTEPoQcqIa4PLIeHFcEdEtCby2hLJ37aGBtjsDc4HtQIWkncDjhCPV8dlqGe2ET4DTbV8U5xdKbh6wEmgOzAB+Bh5rKEUkfQ8sBNoQPN4h2O4FVBB2/ZKE4SnvtKI0GtCOkM7vAcolVUdC5hIO0/vY7pKDvqmDkoqYooWWmwtScbsF4dq2zgSzCBgObAMm2V5ue4LtucBiwhnGkAyJY6+I/15ptNuWENxEhaRvY53HRXRCDorOI8Tuu1INRZKbC1IusQp4vYF0OARJ24H2hPzhYsIO70bY8delnzymYPtkoC+wSNK2vF5x1oXojw7PAVc1YOw7bNheAPQGOkmqqq//0Qjb9wMvA10krcz3rVddmEw42326iDKzQpSU3QxM/x8buhnBO86TtBLyf5+dEZL22x4AdLfd/Gi707bdhnDseyEh3HwDPNygSuWG8wm3ZLNTDUVz40c7bA8jZN67gQ+AByX92KBK5RmNxj6G8C8PHDfc7bZAEwAAAABJRU5ErkJggg==",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAHoAAAAYCAYAAAA1Zem1AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAEpklEQVRoBe2Z3VEjMQzHF4YCcpQQOuCjAkIHwFUA6QCGJ3hjuA6ACjjoIFwFfHQAHRyXDrj/b1l7nMVrYidr8rCaceSVLVkrWbK8WXp/fy9i4ezsrCeek4qvX+ED0cexsrr5eSywkrjMhZw6NLzqX6r/pLZmaB1eLAssJ6pzKOcOHN4L9fuirTu0rrtAFkh1NNH8OOt7aGOYtD+rqI7fsYDPrkmOlqArNfc8xvGvoj076wW7mnukCV0GCFopeZDsin0tLKUUY5ZbHQnEWbdqG+q7znenTfQ1b1eELeHjiYHuYWoLyHYcly7ciGYDTX0cPRa+YtJMjpYQUi+F2J760zq5p/l/NH9DuINIC1Q2J7CO1b+HXZjndeGJYljPFMjbwuPUqrsQM05msR1h8wx+5TkA7EQ2RxaQPhSNpLJyZ2dZNLDIHPTBqURv6eRqKYLHZ3fsjL2HSY7WIiaScbQ5Zzmnp0nF++KxVzPxtA0YgbYokKyP7MaRh7233ZcRvQw2l0ZfdGqpf2rHSY6WDFICCoMtSGDQgRpHUd/OszK6TtAC2JdzdxycNTmIvfeto8WM4w6rOVvCB2pE7s+K9qA5d/SFf1S0WMTOc1POBH+MDhOMLT04+nD2PenZpv9q7Fp4r6XlfWI3ReR2Q1Tjl79q6HYrWpNdoe8s68cAX7t+0UR4ULtWG+iZdMwmqFd5IkUDir4EuHLoEFj+09BJZY+RRurvvy8aGSon4AdgE7+gmxpRjqObdMHe/dLRmkQkuy9CaoDR7ODV2rgekwBF33ycGXXwLf+JJn2IGjY8QCaq6x3MTiXXHH+kj3Ey1bXxi1nhtzpkFzPH0MHo3Tep+1GT3LOTq8+zaDi8EJ5XemLDlDKRW4OZdJCOVJiDmkweWZN38NUPvGPTu7kfgIjec+Q4wFp1mh1uQR8j2/WToVErEaxkzHoKZ36vdLSUshdtEQHfi32MtPQ7qw7i9zmyEJ3MxPWKI2lq0HyzyXEokWKjSGNEO7S6UUX6AM2Zuz6SifCmQGGMmqoOZXC5Z3Q5QcLMi5WFF0TRerS6hIRn0siXclrWIVZtIt5mt4oZG1H91gMkVnbsfDZWyH6+aGf+20rlQC7hFEIIYifyEi4TRck0d2SxBgGZn3ZdZh2CCnoG0de1BVOyns+OThxP+KoOHLX4zJdhiOhXIprdSXurDE7UWRCNMVOUWHpihwjY8vDm1MGzfJA04eTKHuhLJZ4VtDZZ9l7YFs7qE7EctQcNypT11gqMapw/KF+Icag2UmP3cMizAWwaZ84McCNe347MqUOs+mQyKlqMa+6tyPBFD/RWQXrsoIsa/gGIWL5nNx0j+HU4058arBILUoh7HX+CNCkWKzI4X+skFWNNQiUPhw+Ek/6Umbc+TXpC11ocOwTtGqk7N2Aob0XakiJjyaVFgwxE5JDVSlCfNMk15vyDkvSbrE/CamQj7F0U/B+du52eno7U+rnXjV1POr6oHRk+9W/VLszzImPp2VcbGR05o78DuLJwVlO9LjIQEauK5CNhvilfqv8tZ3OCkTjDbebMfkYbhWUwzo9d4agPGYa/w80WqDbmnbC9MfwH+JA6Vr0VD58AAAAASUVORK5CYII=",
       "text/latex": [
        "$\\displaystyle x^{2} \\left(x + y + 6\\right)$"
       ],
@@ -327,7 +330,7 @@
        "x â‹…(x + y + 6)"
       ]
      },
-     "execution_count": 14,
+     "execution_count": 50,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -338,12 +341,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 15,
+   "execution_count": 51,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/latex": [
        "$\\displaystyle x^{2} \\left(x + \\cos{\\left(x \\right)} + 5\\right) + x^{2}$"
       ],
@@ -352,7 +355,7 @@
        "x â‹…(x + cos(x) + 5) + x "
       ]
      },
-     "execution_count": 15,
+     "execution_count": 51,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -370,12 +373,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 16,
+   "execution_count": 52,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "iVBORw0KGgoAAAANSUhEUgAAANAAAAAXCAYAAAB6ScF4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAF+klEQVR4nO2beYxdYxjGf1MSZCqEPxBbqSgSTIhYUku11dhiULGko619KQYlLdXHQ2yxjbU0FW1KUss0tqCW1FZbLUMIEjsxlkaVsS/jj+9cvXPn3HvnLufcO3p/yeTcfNv7nHPe93zf9545Tb29vTRo0KA8Vq+ks+3pwGHACOB34GVguqR3qqCtwSrGYPSnIRX23we4FdgD2Bf4C3jK9noVjttg1WQfBpk/NVVzCWd7KLACaJX0cEz9PGB/YAtJP1fNcIN+2N4ZeA04UdKcWusph2L+VA9UtISLYW3CrLY8t8L2LkAbMLURPKVj+1Ng8zzV30jaMLtA0uu2HwAutb1AUk/CEpMgrz8lje3xwN5AC7BjpOVuSROy21U7gG4AuoCXYuouA34EZlXZ5qrECqAjpjxfcFwBvAKcCVyekKYkKeRPSTODEDg9wJfANnGNqhZAtq8DRgIjJf2dU7c1MAaYI+nXatksomcScCcwStIzadgsRJX0/CDp4oE2lvSq7feBk21fKemfUozV8hoW8qeUOJsQOB8SZqLFcY36BJDtJ4CxwHhJnVnlTYQLORG4StK0nH7XA0cRLvTHMXaOA5qAe+JElGs3CWyfA1xLWGpeG1M/AngbeEXSXknrqQILgIsJ13dRmoYT9KfEkfRfwNjO2y43C3ce8A9h3bxaVvk1hJOdHXOyNwBHA/tKej+PnTHA34S0ZBwl202QJdFxtzz1NwGrAVPSkdOHNWxPsH2B7bNsj8q5XnFkzmds0uJiSMqf6oY+M5Ckt2zPJ5xcGzDX9gXAOcC9wKnZ7W3fErVrBZbbzmxkezKbVtvNhI3Ye/mSB6XaTZg3gF+BXXMrbB9BcMQbJb2doqYMGwLzc8o+sT1Z0rN5+iyNjqnPlkn4Uxy224F1S5DWJemBEtrnJe490EXAb4BsTyFs/hcBbTFr6NMI2Ymnge6sv6lZbTYmPLG7i2gpxW5iSPqT4HSb2t4oUx49CK4DvgVmpqUnizuB0YQgaga2B24HhgGP2d4xrpOkFYTrulk6MvtRbX+Kox1QCX+tFZ7Tf/RLIkj6wnYHMI2wXHkROEzSHzFtmwZgY/3oWDAVWYrdXIqkeBfHrGHnSZpUYMglhCf27sDCqGwmsAkwOXLKNPUgKbfTO8AptnuAcwn7nEPzdP8e2KDQ+ElohkT8Kc7GsHL6VYN8Wbjvsn4fL+mXCmxksm5rDqBtuXY76D+FtwCHAPOAT3PquoqMl9k37AostL0NISvzUjRe2noKcRshgAot0dZi5X3IRwfJaa6mP9UV/QLI9jGETd7XhOXCWVS2B/k2Oq5fqFEldiV1xIw3iXDz55aRgn0R6GVlIuFmwjL0dElF/3UjAT2FyDhnc1yl7SGEwPik0CBJaU7An+JstFMPeyDbBwBzCcuDHYAPgBOi1G25dBNuct4xErJbNpKWA+8BO0cOMBq4XdKbtdBThEyQ50v3jiC8QuhKRU0WKd7Xdmq9B7I9Erif8PJonKTvbM8A7gOuKteopF7bzwGH295K0ofZ9UnZrQIvANsRNurLgAtrpAPb2wKf52YxbQ8jzI4Ad+Xpngmw2BeBSZHmfa35Hsh2C/AI4V9FxkrqjoTdb/s14BDbe0p6vkw7ncDhwDjCm11SslsJS4CTgKHA2dGsVCuOBM6NHkSfAT8Bw4EDCXvLRwnLpDj2I7yDezAFnUDd39cBYbuVlUGeSafvbntu9HuZpKlDbG8FPE5Y84+T9FHOWNOj49UV6Okk7IWOzRKYht1KyOwZlgJ31EhDhsUEhxwOHEN4j7I3YZacCBwUl9WyvQ7BCR6R9EUaQgfBfR0oLYRrO5Hw4AfYMqtsPFT5c4ZCRB9LXQ7sVKd7iT7YfojwhN9N0tJi7esR22cANwJ7Snqh1nr+j1T6QV0pXA98DlySos2yiBIHBwOzBnHwrEV42nc2gic5qv05Q14k/Wa7DRhlu7nevgmyvRlheTScsNR8Fzi/pqIqYxgwm5AFa5AQqS3h6h3bJxEybj8ATwLtkr6qqagGdU8jgBo0qIB/Ad9c+OybHFICAAAAAElFTkSuQmCC",
+      "image/png": "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",
       "text/latex": [
        "$\\displaystyle x^{2} \\left(x + y + 5\\right) + x^{2} = 1$"
       ],
@@ -384,7 +387,7 @@
        "x â‹…(x + y + 5) + x  = 1"
       ]
      },
-     "execution_count": 16,
+     "execution_count": 52,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -396,12 +399,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 17,
+   "execution_count": 53,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAHsAAAAfCAYAAADHorIzAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAElUlEQVR4nO2bbYhUVRjHfyuFSH4owaggLbBAERS0YH2prWU1erMXI4oWLTWIiiJcMDH+/C1Js2Kl+tKHWhO/pJKkmUovirFCZrupSBJLppKKvegX20qdPpyzMQw768x65+7o3B8M595z7nnuwzzzPOc855ypy+VyZNQGl+Xf2L4W2ADsBnLAakk7BkKxWsf2bcB8YAJwHfCkpLYS+tUDs+LtROBhSb9AgbGBwVH4FEndCemd0T+GAvuAj+KnJCTtBHYC2M4BQ3raCo2dUSVI2gRsArDdloTMQUkIybg4yDwbsN0IPAfUA1cBvwN7gRXRwy4Jat7Ytt8AWoAjwKfAb8BwwtylgRhKLwVq2ti25xEMvRJ4WtI/Be2X90PmbOBD4A5J2xJQMzFSM7btrUATMFPSurz6OsKXMwtYJmlBSvoMBpYAh+jF0ACS/k1Dl7RI07NbgO+BV22vl3Q21r9JMPT7aRk60kQI163AOdv3AGOBbuDbmMIMGLaHAqPi7SBghO3xwB+SDvVHZmqzcUk/AKuA0UAzgO2FwEvAx8AzaekSuSWW3UAHsBFYSjB+u+3ttoenrFM+E6NeHYRc2fF6cX8Fpj1mvwI8Cij+cpcAW4BmSedS1uXqWLYA+4GpQCdwIyHaTAPWECZpqRPH+7okZZZkbNsHgZFlyF0t6YnCSkmHbbcCC4B3gHbgod7Gy0rpkEdPVDsD3C/pYLzfa/tB4ABwu+36YiH9PDp9bbuwbqWk2SXoXhFK9ewuQrgrlV/7aDuRdz1H0ukB0AHgZCw78gwNgKTTtrcAc4BbicuPvdAKXFlQNx6YQZjhHyxo6zyPThWlJGNLakziZbYfJ4TIY8A1wAuUOFYnpUMeB2J5skj7n7EcUqQdSa2FdTH1mgG0lZN6xXXsC0JSn2E/zdTrbqCNsLjfCOwA5tpulXSgr74V4kvCzt4Y24N6mTOMjeXPaShzPkMlQSqzcdtTgLWEVarpkk4Aiwg/tmVp6FBI3PbbAIwgRJj/sT0NmE7w+s2pK1cE29fb3mZ7v+09th8pp3/FjR1zw43AKaBJ0lEASWuB74AZtqdWWo8iPAscBt62/YXt5bbXEpZIzwJzJZ0aIN164wzwoqQxhGyh1fYVpXauqLFtjyJ4Ro7g0V0Fj7wcy+WV1KMYko4Q1sDfBW4ieHgDweMn56/0VQOSjkrqjNfHCOv4w0rtX5d/LMn2DYQxakh2eKG6sT2BkMqN7eOZHDBa0o9Q4xshFyu2hxFOr8wrp19m7CrC9kxgNXBzz7kx2yuAe4FJko7HDZz1wFJJ7eXIz06qVBfrCIcmFgHYng88BtwVDV1HSF+/krSqXOGZZ1cRknJxc+gz213AQqBR0k/xkcmEvYU9th+Idc2S9pYiPzN2lSFpq+1dwGvAfZJ25bV9wwVE4yyMVxm27wTGEXa8jicpOzN2FWF7HPAJ8DxhEvZ6kvIzY1cJtkcCnwNvSfoAENBkuyGpdxSO2X8T/vrzXkzIV0nantTLMnon5s2bgQ2SFgNI2md7DcG768uQNQl4Kt7uBv7qaavL/thXO2RhvIb4DyfqqX/syaykAAAAAElFTkSuQmCC",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAH8AAAAzCAYAAAC+J9cEAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAEwElEQVR4Ae2d7VEUQRCGD8sAUDPADAAj4MhANAIgAyl+wT8LM0AiQMhAjQAkA8lAvAz0fZaZrblhl9u728+b7qpmZmd3Z7r7ne752ivWTk5O1kcFdHp6OikotqIBWkBYFmL8Qrr8Ev+N+GyAOprI5Ra4ivAF76s1ef5vZQ7VO36Uv2t3VskCwvpA+uy9XCWlVl0XgbYpHfHiLeWXHpYN/J73GIHMeH0hfhBvizfEtZCBX4sZm6vEefgeLSj/SQneXwsx4TNK1AIGfqLAo7aBb+AnbIGEVTfPN/ATtkDCqpvnG/gJWyBh1c3zDfyELTAs1d84cV/XIbZt79ZhxYbr0LYuhznQ+DEZXansXvnvSr+6srmTpMGX4eLvFi5Vdje3FRt+QTJle/t1N5Mk+DLmhgyJNx0pn33HoJRr+K04CUp1wgfIeHn4AQtHp4TSuUn1jMV8IDEoSs7zBdJ7IcSx6E6IlMp3w+s583QceFCUoucfCqGJwJ4MCqkGhG3c82VkPMKHxHfK74sZcz+KoRs9c/2YbeUvX8Pcq028Hxn+iBnnmUGHw4CKVpva8PwzGfULLFPeiPkkiTHySCkdI55xq6hR8uF5GxmcbEQDwGdISIYaBV/GxONDcAm1GNivTdmsCO/rsjmSPB74TeW9DL7Bb8pcBM/48pVNnw37zhA/pb03WhVD7Ok9v1a+VT6cQW+pgjuV0QlGSmeuX/UMbS8jA03FFMrk7/H7BTorw0Jh+Jcs57o3FseU7bjpPhEkJvStoue/+MU6rtX2Wlk9s8AHJABbiNSw7wT+/Q/KfPYXVVLVsZQMYRvUJaYo63zhvSDPfKSQ9G4RuCOVE802lDK0LUR6txSkhSqs8FKjYT9sX8rhMXhxPrlT2TocPtdCHq9+rs2iqNCCWO038aznLyOOA5XNFCZ8GByvwfNC4x7rmolfm0ToRq6YiHDIVxjy44dX4box8GUcPB1mRo2n8aODnFTGPWb/rZLavQZgMZ0y63hKkY8hiWXoYMjJfewE9sPVvsonVZRoEnw8iBk1II8kEL8H5BQKz2Ny9aB8PgTwTFukdnfFgI8sEBO2HV3Hc5TsZo//oEM+D3H6YNtK5xONgS9B6H25YBhQZYDdCeC0H5JkaXu4CZuvK38gPcLNKZbNlLGUndmRW5vw1aVtT+uho1cKtTXLj3PdLlpnY56/qEBDfE9e1skkUe3GG1V0BrauZ3o9djbPH2JvK5BZgHNWwX5D5X0ZA7/AkEMrEvDM9Bnv5/rdvoX9niEtINclUuVTUAc8y+nsewR3PVIa7qcUammeX2iWTgtZvlU6BXVAs1w9V54ZPqGfVczUnkqZNub5ZZbpoFzglZ2C+s0n9iPCU1DW9EQK0pxUz9QSO78RZQz8yCAdX851CiqQXy0jr4X9ZaxX87sCM16iseV8WXMzeXUGfm6KfmXUEcaSiJCe74iqrNZTUAv7PcEcYCVKq6eg5vk9AV9i4OkwB150hKkZu4sEtZ6CmufLyj2h1k9BDfyeIC/PnkiUqSWayho9BbWw3xPwuxDDwO/C6j1p08DvCRBdiOHHfD47ZoaZkxuD8mvLDNcCMbbSJMPaez6HA+E/XAj3j4ertUnuLcD+wRN8/wN7Ln/yKtUUoQAAAABJRU5ErkJggg==",
       "text/latex": [
        "$\\displaystyle \\left[ - x - 6 + \\frac{1}{x^{2}}\\right]$"
       ],
@@ -412,7 +415,7 @@
        "⎣         x ⎦"
       ]
      },
-     "execution_count": 17,
+     "execution_count": 53,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -430,12 +433,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 18,
+   "execution_count": 54,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAKoAAAAYCAYAAABqdGb8AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFRElEQVRoBe2b63HUMBDHDyYFAKmA0AGPDpIOklBBoAMYvuVbBjoIVACkg4QK8ugAOoC5DsL/ZySNzpb8kGXd3eCd0UnW8+/d1e5KTh7c398vhtLp6ekjjflgxu2Z/ET1y6Fzzf1nDlgOtOnVju00MP+oSd/aMSqfq3yr9MzWzfnMgQQORPXqYcJkDHkj5dz3xn5UeU91z726uThzYCgHonqVqqhY05uhKOr9pdg2bKg3zc8jOLDFfI3qVZKiihGflfx4lAV+qe6uL3/V9536zha4L8NMP/GtwTPVPVLyNz3eDf5uFQlzVK9SY1THAE0O4w6VXrjKjoLG0H9X+aeOrnNzkwM/xDcOs9YoUIYc/9V+pfRcCVf6+V/zdv2CX4idXiVZVPvKmoxdTHz6QmXfwtoujVz9YOwH5e8bjXNFHw78USd4jSDh5YVSg//iL0bgreG3ittDwtzQq2SLaiZ7r/wAFphn8l8dLEGxuSUoQsLDoQ9XuBGWJQOeO81x1JN58Bl+uxuanuNctwx43Vx9CloPJW3oVZJFNZPBhHOVcTHsbiwku72LjtW/pNJgdUibQsXwGD7D7zHvXxIvShrUq1SLyp0pL0DuSAxp3blqJ+bosrhuvrmQhQPw+1ippHFIBR7VK6eoZte9MSu8Un6ihIa/NnXX6kM8tFD+2NQNzQgTrmKDhmCIzZGz3sPDh4xbPTthm7Yvyvu64WzQtCZywlDsKiGjM9XZw5UeVwh+w3eHfaV14gfDp9F65bt+vgp8Ign7tdIXpX0949JhCrHOWHqpCX62TFICQ8vyjSYOffDjUqn+/lgpPERpQhbfjKyQDYlNRCweIviNMq+Lssi0UlS9JBrvC2KpZ4Rgd+GTWrsekwgmB+PYghh6ARce4m42LIRFquNu9Q7VqAl+hOtACflUpDKuHasZO6CCey2KKmzZ9Mq6/hvzwtXL64c7OU6XFUOU53JvKLxjsl3M5KMwCCOCClkV1lyoPRQ/t52g/Q8YWM8z5vGItep1rnkCPG7uQAFlxftxu1E/A/CMgWilifCOkqkPuFJUgazHNyHB+OOyl8di0PiQIi5Uj2dAgIM+Lqi/3aQoJIK23oU5sbbUtcXbWfFoLdYlBHmi3F3uU+9RSCHbjIMbqjmnwJtNryrX79CqIMBWMNXBiTbV8YkuxAR/aJ8ybqhznokx9MHp98GbOO9iGuDRUjjrgvDHTVEmxg/xz3qNEB76w/e10liZ7hgF/K63IOjFQrCzEILvQnJ9SWLORrxUGIMgDCLw+rxg8FriU63Lt3AOT3Vi48SsO0pcx18fn/05t0yxqLwk6Y+ZfGX3qY42e6hQcRSx47n6qlNJDPW1u55XhGz4AV7ccGniA8vKoUnP7wyI2DmiOm+UBqr1ssp0RxOyE4m/mHihF+f78KUSDOECFgV2YQB9RtBXjcV616kkhvraXc9YMO5LuRX5rWT/ODxmwbrmS24XBg54eD6rrFhLDMtT1S0jEyPXYPwZ6Z+rOqtMH6T8K8qYNxFDudc7Uo51nZy0TtJhKgZM86Gw+8pjB5rY0Ko+N562xbQWYQtGx26utu7BtpJ4gwBMJa6/NCHokjscSxOzNq3vLiFhvdxnYpU5mHA3eNY6sL0xGU/7tMFWvAH8HkMl8UZxFreoIJHAie8IMVbivyjKNTUIH9afuLC62lJO2IL7DR1o1oQyvKwwYk3BzsFv64kYdR1E4I/QN52JKCT3lhxYcJ8IvnhsqnVTiDi2pOdKwdh7zFosKugkcHb8ofJBF/G93+w/7iiesrEulG+0xxoior/cLWUUiDm0fAAAAABJRU5ErkJggg==",
       "text/latex": [
        "$\\displaystyle x^{2} \\left(x + y + 5\\right) + x^{2}$"
       ],
@@ -444,7 +447,7 @@
        "x â‹…(x + y + 5) + x "
       ]
      },
-     "execution_count": 18,
+     "execution_count": 54,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -455,7 +458,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 19,
+   "execution_count": 55,
    "metadata": {},
    "outputs": [
     {
@@ -464,160 +467,159 @@
        "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n",
        "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
        " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
-       "<!-- Generated by graphviz version 2.43.0 (0)\n",
+       "<!-- Generated by graphviz version 11.0.0 (0)\n",
        " -->\n",
-       "<!-- Title: %3 Pages: 1 -->\n",
-       "<svg width=\"425pt\" height=\"260pt\"\n",
-       " viewBox=\"0.00 0.00 425.00 260.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
+       "<!-- Pages: 1 -->\n",
+       "<svg width=\"422pt\" height=\"260pt\"\n",
+       " viewBox=\"0.00 0.00 422.00 260.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
        "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 256)\">\n",
-       "<title>%3</title>\n",
-       "<polygon fill=\"white\" stroke=\"transparent\" points=\"-4,4 -4,-256 421,-256 421,4 -4,4\"/>\n",
+       "<polygon fill=\"white\" stroke=\"none\" points=\"-4,4 -4,-256 418,-256 418,4 -4,4\"/>\n",
        "<!-- Add(Pow(Symbol(&#39;x&#39;), Integer(2)), Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))))_() -->\n",
        "<g id=\"node1\" class=\"node\">\n",
        "<title>Add(Pow(Symbol(&#39;x&#39;), Integer(2)), Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))))_()</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"136\" cy=\"-234\" rx=\"28.7\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"136\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">Add</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"135\" cy=\"-234\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"135\" y=\"-228.57\" font-family=\"Times,serif\" font-size=\"14.00\">Add</text>\n",
        "</g>\n",
        "<!-- Pow(Symbol(&#39;x&#39;), Integer(2))_(0,) -->\n",
        "<g id=\"node2\" class=\"node\">\n",
        "<title>Pow(Symbol(&#39;x&#39;), Integer(2))_(0,)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"98\" cy=\"-162\" rx=\"29.8\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"98\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">Pow</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"99\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"99\" y=\"-156.57\" font-family=\"Times,serif\" font-size=\"14.00\">Pow</text>\n",
        "</g>\n",
        "<!-- Add(Pow(Symbol(&#39;x&#39;), Integer(2)), Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))))_()&#45;&gt;Pow(Symbol(&#39;x&#39;), Integer(2))_(0,) -->\n",
        "<g id=\"edge1\" class=\"edge\">\n",
        "<title>Add(Pow(Symbol(&#39;x&#39;), Integer(2)), Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))))_()&#45;&gt;Pow(Symbol(&#39;x&#39;), Integer(2))_(0,)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M127.19,-216.76C122.65,-208.4 117.01,-198.02 111.9,-188.61\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"114.88,-186.75 107.03,-179.63 108.72,-190.09 114.88,-186.75\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M126.65,-216.76C122.42,-208.55 117.19,-198.37 112.42,-189.09\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"115.68,-187.79 108,-180.49 109.46,-190.99 115.68,-187.79\"/>\n",
        "</g>\n",
        "<!-- Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;)))_(1,) -->\n",
        "<g id=\"node5\" class=\"node\">\n",
        "<title>Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;)))_(1,)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"174\" cy=\"-162\" rx=\"28.7\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"174\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">Mul</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"171\" cy=\"-162\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"171\" y=\"-156.57\" font-family=\"Times,serif\" font-size=\"14.00\">Mul</text>\n",
        "</g>\n",
        "<!-- Add(Pow(Symbol(&#39;x&#39;), Integer(2)), Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))))_()&#45;&gt;Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;)))_(1,) -->\n",
        "<g id=\"edge2\" class=\"edge\">\n",
        "<title>Add(Pow(Symbol(&#39;x&#39;), Integer(2)), Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))))_()&#45;&gt;Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;)))_(1,)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M144.81,-216.76C149.42,-208.28 155.16,-197.71 160.32,-188.2\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"163.54,-189.61 165.23,-179.15 157.39,-186.27 163.54,-189.61\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M143.35,-216.76C147.58,-208.55 152.81,-198.37 157.58,-189.09\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"160.54,-190.99 162,-180.49 154.32,-187.79 160.54,-190.99\"/>\n",
        "</g>\n",
        "<!-- Symbol(&#39;x&#39;)_(0, 0) -->\n",
        "<g id=\"node3\" class=\"node\">\n",
        "<title>Symbol(&#39;x&#39;)_(0, 0)</title>\n",
        "<ellipse fill=\"none\" stroke=\"black\" cx=\"27\" cy=\"-90\" rx=\"27\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"27\" y=\"-86.3\" font-family=\"Times,serif\" font-size=\"14.00\">x</text>\n",
+       "<text text-anchor=\"middle\" x=\"27\" y=\"-84.58\" font-family=\"Times,serif\" font-size=\"14.00\">x</text>\n",
        "</g>\n",
        "<!-- Pow(Symbol(&#39;x&#39;), Integer(2))_(0,)&#45;&gt;Symbol(&#39;x&#39;)_(0, 0) -->\n",
        "<g id=\"edge3\" class=\"edge\">\n",
        "<title>Pow(Symbol(&#39;x&#39;), Integer(2))_(0,)&#45;&gt;Symbol(&#39;x&#39;)_(0, 0)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M82.94,-146.15C73.02,-136.37 59.87,-123.4 48.81,-112.5\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"51.13,-109.87 41.55,-105.35 46.21,-114.86 51.13,-109.87\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M84.08,-146.5C74.23,-136.92 61.14,-124.19 49.97,-113.34\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"52.59,-111 42.98,-106.54 47.71,-116.02 52.59,-111\"/>\n",
        "</g>\n",
        "<!-- Integer(2)_(0, 1) -->\n",
        "<g id=\"node4\" class=\"node\">\n",
        "<title>Integer(2)_(0, 1)</title>\n",
        "<ellipse fill=\"none\" stroke=\"black\" cx=\"99\" cy=\"-90\" rx=\"27\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"99\" y=\"-86.3\" font-family=\"Times,serif\" font-size=\"14.00\">2</text>\n",
+       "<text text-anchor=\"middle\" x=\"99\" y=\"-84.58\" font-family=\"Times,serif\" font-size=\"14.00\">2</text>\n",
        "</g>\n",
        "<!-- Pow(Symbol(&#39;x&#39;), Integer(2))_(0,)&#45;&gt;Integer(2)_(0, 1) -->\n",
        "<g id=\"edge4\" class=\"edge\">\n",
        "<title>Pow(Symbol(&#39;x&#39;), Integer(2))_(0,)&#45;&gt;Integer(2)_(0, 1)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M98.25,-143.7C98.36,-135.98 98.49,-126.71 98.61,-118.11\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"102.11,-118.15 98.76,-108.1 95.11,-118.05 102.11,-118.15\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M99,-143.7C99,-136.41 99,-127.73 99,-119.54\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"102.5,-119.62 99,-109.62 95.5,-119.62 102.5,-119.62\"/>\n",
        "</g>\n",
        "<!-- Pow(Symbol(&#39;x&#39;), Integer(2))_(1, 0) -->\n",
        "<g id=\"node6\" class=\"node\">\n",
        "<title>Pow(Symbol(&#39;x&#39;), Integer(2))_(1, 0)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"174\" cy=\"-90\" rx=\"29.8\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"174\" y=\"-86.3\" font-family=\"Times,serif\" font-size=\"14.00\">Pow</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"171\" cy=\"-90\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"171\" y=\"-84.58\" font-family=\"Times,serif\" font-size=\"14.00\">Pow</text>\n",
        "</g>\n",
        "<!-- Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;)))_(1,)&#45;&gt;Pow(Symbol(&#39;x&#39;), Integer(2))_(1, 0) -->\n",
        "<g id=\"edge5\" class=\"edge\">\n",
        "<title>Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;)))_(1,)&#45;&gt;Pow(Symbol(&#39;x&#39;), Integer(2))_(1, 0)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M174,-143.7C174,-135.98 174,-126.71 174,-118.11\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"177.5,-118.1 174,-108.1 170.5,-118.1 177.5,-118.1\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M171,-143.7C171,-136.41 171,-127.73 171,-119.54\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"174.5,-119.62 171,-109.62 167.5,-119.62 174.5,-119.62\"/>\n",
        "</g>\n",
        "<!-- Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1) -->\n",
        "<g id=\"node9\" class=\"node\">\n",
        "<title>Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"284\" cy=\"-90\" rx=\"28.7\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"284\" y=\"-86.3\" font-family=\"Times,serif\" font-size=\"14.00\">Add</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"279\" cy=\"-90\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"279\" y=\"-84.58\" font-family=\"Times,serif\" font-size=\"14.00\">Add</text>\n",
        "</g>\n",
        "<!-- Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;)))_(1,)&#45;&gt;Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1) -->\n",
        "<g id=\"edge6\" class=\"edge\">\n",
        "<title>Mul(Pow(Symbol(&#39;x&#39;), Integer(2)), Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;)))_(1,)&#45;&gt;Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M193.41,-148.65C210.74,-137.62 236.33,-121.33 255.9,-108.88\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"257.85,-111.79 264.41,-103.47 254.1,-105.88 257.85,-111.79\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M189.81,-148.81C206.59,-137.93 231.39,-121.86 250.59,-109.42\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"252.28,-112.49 258.77,-104.11 248.48,-106.61 252.28,-112.49\"/>\n",
        "</g>\n",
        "<!-- Symbol(&#39;x&#39;)_(1, 0, 0) -->\n",
        "<g id=\"node7\" class=\"node\">\n",
        "<title>Symbol(&#39;x&#39;)_(1, 0, 0)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"102\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"102\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">x</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"99\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"99\" y=\"-12.57\" font-family=\"Times,serif\" font-size=\"14.00\">x</text>\n",
        "</g>\n",
        "<!-- Pow(Symbol(&#39;x&#39;), Integer(2))_(1, 0)&#45;&gt;Symbol(&#39;x&#39;)_(1, 0, 0) -->\n",
        "<g id=\"edge7\" class=\"edge\">\n",
        "<title>Pow(Symbol(&#39;x&#39;), Integer(2))_(1, 0)&#45;&gt;Symbol(&#39;x&#39;)_(1, 0, 0)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M158.73,-74.15C148.67,-64.37 135.33,-51.4 124.11,-40.5\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"126.36,-37.81 116.75,-33.35 121.49,-42.83 126.36,-37.81\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M156.08,-74.5C146.23,-64.92 133.14,-52.19 121.97,-41.34\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"124.59,-39 114.98,-34.54 119.71,-44.02 124.59,-39\"/>\n",
        "</g>\n",
        "<!-- Integer(2)_(1, 0, 1) -->\n",
        "<g id=\"node8\" class=\"node\">\n",
        "<title>Integer(2)_(1, 0, 1)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"174\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"174\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">2</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"171\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"171\" y=\"-12.57\" font-family=\"Times,serif\" font-size=\"14.00\">2</text>\n",
        "</g>\n",
        "<!-- Pow(Symbol(&#39;x&#39;), Integer(2))_(1, 0)&#45;&gt;Integer(2)_(1, 0, 1) -->\n",
        "<g id=\"edge8\" class=\"edge\">\n",
        "<title>Pow(Symbol(&#39;x&#39;), Integer(2))_(1, 0)&#45;&gt;Integer(2)_(1, 0, 1)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M174,-71.7C174,-63.98 174,-54.71 174,-46.11\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"177.5,-46.1 174,-36.1 170.5,-46.1 177.5,-46.1\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M171,-71.7C171,-64.41 171,-55.73 171,-47.54\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"174.5,-47.62 171,-37.62 167.5,-47.62 174.5,-47.62\"/>\n",
        "</g>\n",
        "<!-- Integer(5)_(1, 1, 0) -->\n",
        "<g id=\"node10\" class=\"node\">\n",
        "<title>Integer(5)_(1, 1, 0)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"246\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"246\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">5</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"243\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"243\" y=\"-12.57\" font-family=\"Times,serif\" font-size=\"14.00\">5</text>\n",
        "</g>\n",
        "<!-- Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1)&#45;&gt;Integer(5)_(1, 1, 0) -->\n",
        "<g id=\"edge9\" class=\"edge\">\n",
        "<title>Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1)&#45;&gt;Integer(5)_(1, 1, 0)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M275.19,-72.76C270.58,-64.28 264.84,-53.71 259.68,-44.2\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"262.61,-42.27 254.77,-35.15 256.46,-45.61 262.61,-42.27\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M270.65,-72.76C266.42,-64.55 261.19,-54.37 256.42,-45.09\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"259.68,-43.79 252,-36.49 253.46,-46.99 259.68,-43.79\"/>\n",
        "</g>\n",
        "<!-- Symbol(&#39;x&#39;)_(1, 1, 1) -->\n",
        "<g id=\"node11\" class=\"node\">\n",
        "<title>Symbol(&#39;x&#39;)_(1, 1, 1)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"318\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"318\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">x</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"315\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"315\" y=\"-12.57\" font-family=\"Times,serif\" font-size=\"14.00\">x</text>\n",
        "</g>\n",
        "<!-- Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1)&#45;&gt;Symbol(&#39;x&#39;)_(1, 1, 1) -->\n",
        "<g id=\"edge10\" class=\"edge\">\n",
        "<title>Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1)&#45;&gt;Symbol(&#39;x&#39;)_(1, 1, 1)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M292.06,-72.41C296.08,-64.13 301.04,-53.92 305.54,-44.66\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"308.78,-45.99 310,-35.47 302.48,-42.94 308.78,-45.99\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M287.35,-72.76C291.58,-64.55 296.81,-54.37 301.58,-45.09\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"304.54,-46.99 306,-36.49 298.32,-43.79 304.54,-46.99\"/>\n",
        "</g>\n",
        "<!-- Symbol(&#39;y&#39;)_(1, 1, 2) -->\n",
        "<g id=\"node12\" class=\"node\">\n",
        "<title>Symbol(&#39;y&#39;)_(1, 1, 2)</title>\n",
-       "<ellipse fill=\"none\" stroke=\"black\" cx=\"390\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"390\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">y</text>\n",
+       "<ellipse fill=\"none\" stroke=\"black\" cx=\"387\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
+       "<text text-anchor=\"middle\" x=\"387\" y=\"-12.57\" font-family=\"Times,serif\" font-size=\"14.00\">y</text>\n",
        "</g>\n",
        "<!-- Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1)&#45;&gt;Symbol(&#39;y&#39;)_(1, 1, 2) -->\n",
        "<g id=\"edge11\" class=\"edge\">\n",
        "<title>Add(Integer(5), Symbol(&#39;x&#39;), Symbol(&#39;y&#39;))_(1, 1)&#45;&gt;Symbol(&#39;y&#39;)_(1, 1, 2)</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M302.95,-76.49C319.71,-65.42 344.35,-49.15 363.14,-36.74\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"365.15,-39.6 371.57,-31.17 361.29,-33.76 365.15,-39.6\"/>\n",
+       "<path fill=\"none\" stroke=\"black\" d=\"M297.81,-76.81C314.59,-65.93 339.39,-49.86 358.59,-37.42\"/>\n",
+       "<polygon fill=\"black\" stroke=\"black\" points=\"360.28,-40.49 366.77,-32.11 356.48,-34.61 360.28,-40.49\"/>\n",
        "</g>\n",
        "</g>\n",
        "</svg>\n"
       ],
       "text/plain": [
-       "<graphviz.sources.Source at 0x7f41d153f050>"
+       "<graphviz.sources.Source at 0x7e3154f58d30>"
       ]
      },
-     "execution_count": 19,
+     "execution_count": 55,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -636,7 +638,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 20,
+   "execution_count": 56,
    "metadata": {},
    "outputs": [
     {
@@ -645,7 +647,7 @@
        "sympy.core.add.Add"
       ]
      },
-     "execution_count": 20,
+     "execution_count": 56,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -656,12 +658,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 21,
+   "execution_count": 57,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/latex": [
        "$\\displaystyle \\left( x^{2}, \\  x^{2} \\left(x + y + 5\\right)\\right)$"
       ],
@@ -670,7 +672,7 @@
        "⎝x , x ⋅(x + y + 5)⎠"
       ]
      },
-     "execution_count": 21,
+     "execution_count": 57,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -697,7 +699,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 22,
+   "execution_count": 58,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -713,12 +715,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 23,
+   "execution_count": 59,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAC0AAAAaCAYAAAAjZdWPAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAC/ElEQVR4nM3YT6hVVRQG8N/Vil5YYAaShBVEhET/aSDZIBLCIogGFTQoalCGJJIDJVgsqahBgYNEtOBBNYhq4uCVjooo7IG9oL9UBkVZkgXhoCjlNjjn3jbnHd87z/fepQ8O+55vr7Xvxzprr73O6fX7fV2QmTfjCVyPVXgwIsY7OS8wlszBdhk+w+P4c3HkdMMZbWRmnoencKcqqmdiW0Rsr+fHRyWwDa2i8RruwARexQnsG5Wo2TBNdGZeoRK8PyJuH72k2dGW07fU41ujFDIXDCOdmXfjzWJuT2buqX+viYgvR6psBpTp8TMSG7EcT9d8H1+PWNeM6JV1OjOX4ji+jYirSsPMXIbL6tsP8axqc/4eET+MRm6FZk6vwRg+brG9AVP1NaZ6KlPYsZgC29CsHtfV4zTREfEueostqAuakR6Inhq1kLmgLdJ9fNI0zMzl+AprI+Lw4ksjM9/AwYh4vuTLktfD1fgmIo63rLEdEwPBC9FAZeZGbMWF+BybI+L9wmQH3svMlyLijwFZpsflOFdLamTmOXgYLxf0vBqozLwHO/EMrlVVpLczc/XAJiI+xXe4v/Qt0+OUmxAbVGnzQbHghKo3Od0GagvGI2Jvfb8pM2/Do9hW2O3DfXhxQJSRnkn0OhyKiG7N9yzIzLNUaXWgMXUAaxvcJG7MzLEBMYx0RGxV5VcbLsaReav9DxdgKY42+KO4tcEdUbXGq3CY7i8BY/jr9DXOC4P9Mox0V9HHVP3IQuEYTmJlg1+JXxrc+fX464DoKnpKdcQvCCLibxzC+sbUelUVKXElfoqIYSqd6s2lif14LjNXRMRvTGuglmB1Zl6jewP1Al7JzElVVXpElbe7G3br6v8folOk63o5iXsLetYGKjMfyMx+Zl7Ssubr2IwnVSfwTdgQEd8X/mfjLuwtfbtGWi1qZ2bujoiTHRuoS/EFfmybjIhd2DWD/0P4KCIOlmTnTwgR8Y6qwF/U1Ud1KD0WESfm4FPiH2xqkr2uH2v+T/gXmdDo73n+u0IAAAAASUVORK5CYII=",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAACkAAAAdCAYAAAA3i0VNAAAACXBIWXMAAA7EAAAOxAGVKw4bAAACxklEQVRYCdWX7VEbMRCGwUMBHtKB00E+OrA7cOggoQOY/LL/MdAB6YCBDgwVJEMHcQd46MB5HvlOnGXd4bPHmOzMWqvV7urVrqSTD+fz+UFbGo/HXXxO4FPkz23929oftXUA1Cd8+oWfYHdOm4B8BNUjYIc7R1dM0HmribaZ578A2VhuSnpNBp6LLFzQL+VtEtPatzaTALok2jF8A/+Ay8OC+LZUCxIYAhOgQP/A9/BeKFtusmjWvF7uixLvDaBZyYJEP4CnuT2IrsfYKexCevTdFk+0V7Q7ocPqF4eJLLEABTCDvRNn6AW1PxJkyqPRaA6fpfp99VcODlmznNJe9+ECwuJ3BSRqv80HgLXU74JyIL+CbNqEjgUMKxlvMt1ojNhnVcfc6TaTtVkkgIfLkx8Xgux11erpho+3gvQEf6B/Hnr8IF/B13A4sLlMfsHud+lQbXESzIA27ldkFyVwx+RXCR/tvbbOYa+uCe0kcbxFFxayBBJlD0MnqsukTn7PI+Hjs82JYmbjYL1gnOpClfvF/MELudR1l0AyWh6aGCB4vPwYqG7sxapBKoCYiHRRz+jC/BX3ADQF6UV+VzGKYhHcQNuSAHM0Q3mcDLjtBh0m96TeFoPux5vEsOy6FQy0KxJgugCT0jOT7o8uQIMBbTaTRQCdtqW6GM6fboGQlBKkJ0uw3xoQGCAspMHm1SGSYByBWpmU0gOrzfQIp1+pZa6Pnac4FzhnHnX4uLCftPEepH8B+4gJoBhTvqNNM+l8f5deQSgaiSBm3P/aMRiygcqnm6fT6yg+3RhX9wB/R45bCdnKSV7mH2HvTDMciX6Yb+UF1PTS4WXUhy+bbOrG8BvWjeX02HfhiWOdCHsNgZV5b3nIWpUde8vZ9n4107WfxUa4TKijJW9ziHzBL5WyaRJs/Wz6WVxsq1yq19FZjnXsNrFJY/8DzKtH71g9xXgAAAAASUVORK5CYII=",
       "text/latex": [
        "$\\displaystyle {f}_{(1,0)}^{1}$"
       ],
@@ -726,7 +728,7 @@
        "f_E__1"
       ]
      },
-     "execution_count": 23,
+     "execution_count": 59,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -745,7 +747,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 24,
+   "execution_count": 60,
    "metadata": {},
    "outputs": [
     {
@@ -754,7 +756,7 @@
        "True"
       ]
      },
-     "execution_count": 24,
+     "execution_count": 60,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -774,7 +776,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 25,
+   "execution_count": 61,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -783,21 +785,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 26,
+   "execution_count": 62,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/latex": [
        "$\\displaystyle \\left({img}_{(1,0)}^{2} w_{2} - {img}_{(1,1)}^{2} w_{1} - {img}_{(-1,1)}^{2} w_{1} + {img}_{(1,-1)}^{2} w_{1} - {img}_{(-1,-1)}^{2} w_{1} - {img}_{(-1,0)}^{2} w_{2}\\right)^{2}$"
       ],
       "text/plain": [
-       "                                                                                       2\n",
-       "(img_E__2⋅w₂ - img_NE__2⋅w₁ - img_NW__2⋅w₁ + img_SE__2⋅w₁ - img_SW__2⋅w₁ - img_W__2⋅w₂) "
+       "                                                                              \n",
+       "(img_E__2⋅w₂ - img_NE__2⋅w₁ - img_NW__2⋅w₁ + img_SE__2⋅w₁ - img_SW__2⋅w₁ - img\n",
+       "\n",
+       "         2\n",
+       "_W__2â‹…wâ‚‚) "
       ]
      },
-     "execution_count": 26,
+     "execution_count": 62,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -819,21 +824,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 27,
+   "execution_count": 63,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/latex": [
        "$\\displaystyle \\left({img}_{(1,0)}^{2} w_{2} - 0.5 {img}_{(1,1)}^{2} - 0.5 {img}_{(-1,1)}^{2} + 0.5 {img}_{(1,-1)}^{2} - 0.5 {img}_{(-1,-1)}^{2} - {img}_{(-1,0)}^{2} w_{2}\\right)^{2}$"
       ],
       "text/plain": [
-       "                                                                                           2\n",
-       "(img_E__2â‹…wâ‚‚ - 0.5â‹…img_NE__2 - 0.5â‹…img_NW__2 + 0.5â‹…img_SE__2 - 0.5â‹…img_SW__2 - img_W__2â‹…wâ‚‚) "
+       "                                                                              \n",
+       "(img_E__2â‹…wâ‚‚ - 0.5â‹…img_NE__2 - 0.5â‹…img_NW__2 + 0.5â‹…img_SE__2 - 0.5â‹…img_SW__2 -\n",
+       "\n",
+       "             2\n",
+       " img_W__2â‹…wâ‚‚) "
       ]
      },
-     "execution_count": 27,
+     "execution_count": 63,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -852,21 +860,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 28,
+   "execution_count": 64,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA4kAAAArCAYAAADVEs0tAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAXmUlEQVR4Ae2d4bXctBaFh6wUEKACoAMCFRA64D0quKEDWPkF/7JCB4EKgNdBoIIQOuB1QN7tIG9/iuRoPPZY1thj+3prLY9s+RzpaJ9tj85I9rz35s2bg5MRMAJGwAgYASNgBIyAETACRsAI7AeBH3744YF6+yT2+OOY36j89v5+YHBPjYARMAJGwAgYASNgBIyAETACRiAi8EwB4TcJDe0/1/4rbZ/cS4XOjYARMAJGwAgYASNgBIyAETACRmA3CDxWYPgo6+0z7X+ssk8dJGaoeNcIGAEjYASMgBEwAkbACBgBI7ATBJhF/LOrr+/5mcQuWFxmBIyAETACRsAIGAEjYASMgBHYDwKaQWQm8Svln/iZxA35XQ5jnfAL5f/ZkNk21QgYASNgBIyAETACRsAIGIGZEFBswAto/tD2hfZva5qR3qfS+0rbQ/S93BQUNpDkOALED5Q7QNyAv2yiETACRsAIGAEjYASMgBG4BgIxMLxRW6+0T8A4KkmHN5syi/gw1nXwctNREC4jLGc9VsvfKA+R/TJWuFUjYASMgBEwAkbACBgBI2AE1opAjBm+VP6vUhslS4D4nfLwltN47CCxFMCl5OQopn6ZPv5I+1XTx0vZ7naNgBEwAkbACBgBI2AEjIARuB4CihdeqLXnygdXH0qGAJHVit9lFhIsfuflphkiK939WXb95ABxpd6xWUbACBgBI2AEjIARMAJGYD0IMIv4s2KHkmWn/Ccif4FBnjb+FuPWy02FyFqTHMTDo79pe99B4lq9ZLuMgBEwAkbACBgBI2AEjMB6EFDckN5lUrzstG29327aRmRdxzxA+uMWAkTZyK8VTyJ8TF2TbrZg+1tT/bkmBMynNXljXlvs63nxvQu1myN3wYvz9cH8mA/btdVsX4/yCDHE38LsY23/HaUZhR0k1qB2BR05lGcRCbaeXqG5KZp4JpvDA69Upn1+wWDa+hOOnYzASATMp5GAbVjcvt6w865kujlyJaA32oz5sVHHVZhtXxeCpnH4f7X9LvHwfGGh2pGYn0k8gmNVB8zK/S4Hb+VlNaxfZk1zSvyCwa8XBLtORmAsAubTWMS2K29fb9d317LcHLkW0ttsx/zYpt9qrLavx6HGI2v8Q0JVcpBYBdtVlNLziFdpbIJG+KXizwnqcRUTItAVpKvsgba0JHjC1iatynyqgHOj/ravK3xdo7JRftBVc6TG4SN1zI+RgFl8CQR8LxiHOjOJjPmIKUans8tN4w2Dt2syoPxVxzjHaWYEshs1zh1Mkv9WQp8s6R+1/VPLULjCVPdfrXIfjkRAGDIrS/pHG8t3WW5Rur78D8nyvGjyQ3rTVed/bkp2cS7J1oPs2C2f1Pdd+XvPvobrY9Pe+AE+5kg5S8yPgJXHH+WUKZYUtxYfH/heUOyuICi8GIczXvxS2+DfYbRrPzuTqIr/0sZgkoEl/7kxOkmfCDY8ODlaeb8Kn9F14VYaCHBDXM2yVNnNElN+tegMRFTuVIiAsOS5zpfK+ZPTH7XP/9i80H7pTOBrycMNfMJ1zE3iofT7+LIqLsnWg2zdDZ/U1137e0++httj0975AV7mSD9rzA/zo58dk5xZ1fjA94JinzLhFOKKYo0oeHYmERk5IT1nVjSr1WEA+gxoGaw6lSFAxJ9mfgY15KPVvBxGtuBrZkLOBSKDfbJAuPZYR86PLM2vP9q/jce8GAieDCV+6Cl+/bFkV8MlOiZ7dsMn9XXX/t6Dr9XH8H2ovD1TPnQdH6Sza37s7X4wSIiWgPmxr++LlvuvciiOrWZ8IFt2MzaYwLl/q46q5xIHg0RVzECU6cq+mYch+y/VH6r/KufjDfhP5cXB2wWGMZCoDcovaPYy1XjRMuMVgpd4fFBeOiN6mQF3T5vgrotvL1X+rXAlgKy9LlePlvrGl8Ce+LRbf+/I18zms9Wk3fIDsHbEkRpuoGN+7Ov7opYnm9fzvWC0C8MYXLh9qq1rTNlbYUmQeGnAgn4zE9JryfpPMM3+65XMZBCxqcAqXrTMbjGoT280BTOWRzrVIcC10zXjkLhxV66tE3R2yqdd+nunvj7hfEHBLvkBLuZIATsOB/PD448iomxZyPeCKu+lMSM/vNcHiRF8lgpSIS/JYDaLAf9TbSdJ8sgiR2IamgCB5XDcrAgQCHYwiuiV17DybBXPVW0qxf5cMpta01+mh3uTbAJbpo/B/ZWOm2Ai2ovfPtd2o+0DbfgDXzHLxzNtP2pD5mttJPZ5IUrnDKbKecaQ+pK/CfwfqTy1+0rH2ETeJJ2n3asntZvw+VCN80xssvOgffr6jfJgm3L6tqolsrIJ+4cSfh1MqissU5MgWHA9PlVZc6OIba2JS/RpVXzCoDnTzv29K1/X8Gjn/AAyc+QMccwP8+MMPS46tcLxwabvBRme1xybpiCxaMyYE+Z+OpDhBHYEcjxLFipUnl5WcxI4xHMEhWGwqRx9BtoMvpHnP/4YfBNIhOWH2t9cku0M1unXF9cwXu0xiCe9fpv1fj6RLPgnvzVBkDS+jOfwH2+nDS8+oSaVI/c/5bfKCXzDTJ9yfIX/39d2lHSO/uPH8CIa5djIhfqnttCuyk70dG7JlPChX2CQ48N/UOZBGFjQp8+0nXBdZUukdDFjW1/K+3BOhjcTh3qi7wia4Ujqa8JqFVyiI7JtbXzqw3eq8t36e4e+ruHMbvkBWObIIGXMj0GILFCJwKrGB3fgXpDwvNrYVJgxeYf7S8aMRzS5x5GUUSRAIOhIESen2OfFF2GASQFJxwyoHylvZiN0TLBB4JAngsNcJj8X9lXHV7G+k3NTFKhuXtlblaT7qRT/0Haj/SMMqiosUxp0YrTrZayO5xAan+kcA/0U3OMnnlvLZ2/TlwnlKUigKspP2pYMRAbDJkhWGe0hm9rR7nqS7MNvCR842A64c4wOkgcHeBpw1DHYMKvK9lvcTrCR/NKJX6LOJtlOMHibhLRPH+kvS4MPOs6xMpcAZb3J/l6vb9ZgmfmxBi+s1wbzY72+WaVlHh9M65YWnkuMTQfvAe0e348FzBQxMM5nWzjFYLr3eULJEyQQXDJr2DVbOKTPErf0Hx7aDYNWbCH9o+1D1Tv4TJtkenV0jmWVz7WNWvYY6yQ4YoBNoKCsKhF492LYUWMK4pqBfYcMmKXg+986/zST4eU6t9oIaggS2/0mKCC1ff1QZanOIBA/mIX7D3WmQu2nOsb0K6lfI+/FJ9oONnmAjE3gloJtgsMGN+0TUPEDCEt7e5PkqJcfFchL07+k14X76zMVJI5wjdQk+smPPPCjFyudM5d60J3Y17Rif/dgvcVi8YN7Bt9/7RSuXZ1v7i+ZwLk3EZsfGVB3YXfie4j5cRdIcWEfJuYU1nh8cKFPWuq9eMp3jKtnGZtmNowZmwa1+1GZQONo0BzJxiDyZLZI5+gos1MEUeGLkGNtTUCnfYzp1Ff5IZ5nloPZi5C0T9D4j/Iw86WcgSzPz3UFoGN0CPIY+Df2vW2x/xNZbTwXyJf5F9q/7Zee9Ey62fc6M9minFk+5JqAL51TWfLLkV9VDpYns8MqgwNNPdo/qK5E2l84zhJ1E4imoCo7FfSwizY6zx8JVxyoXt7smc+OHtWic8FXyk/wkWCy/a8jJT23mB0/li6cSdjxIwRlZ98MpfO0S7B9caIubdTTxYNUdhZf6XPtfqC8zyZ+GAp1KD/BSmUBR9WxGJcAINq2GJ+woZ0iNn24tsUHj6lPG3LJt7lOKrvz/p7b1zmopfuy6ez9pqse6XQFgYfYv4+V996/euozPyIwEcPZ7gdd+A+VyaYajnB/neQeovbNjxXzY4g/XeeX5hQ2wauYr3J8IPtmHWt2+WWo7JzfzuGpemcbmw7ZfO78PRnNAIStHQwSNBx0Pg2UOWySygmi3lMBQQcy4ZX8jUDHwFLytJMSA++w5C0VKKesaS+2/Ug5wWZfGtTJ6snb76uvKZceQdONNmaH1pieyKgwyydb2337WufagRB9gIgNxhRIlzL0gz+yuj7jvFK7nuTzt2ezT+kS6POF1QxoqY9ybe3lyJnm8a5k03JPeIWPm6TjMDvcFPTvdAXEJ7arPoLhvI8M8HjecumEn7q4H2YjdO7Ijx3G4r82LxAL+up33ufVcQlDZeNUfOrloNoo5RMmzZl27e8uX9eArXp6fd1X3zkd82Md3y34Tr6Y5H7Qx4Nz5RvgyK7vH338OOfTvnPnfN2nU1N+rh2dW8v3El1b3fhA+JzcC6b2QV99avvS8elSY9N8MqSve0fl97KjZlAfy0In2BcgzXODEZymIR33LTVt9FMdyvMB7yN0OUfSPucY0LbtuFUZg/iTNFKHtgiGRiW1wUCa5apHgcqoSsYJ019SCgTeHrU+ZQ9YgUsI7JRzEeepKxhEB5zbPwgQFIVfZiOm4QeCVJnKGp/Edqm7XcchnstfiEIZNnIx0zbbYJIO8swo80MEv7gzm9xuL8wOD1RGXxvbo2xX2deqP+fiTzq+zeoGn3yZQHZq1l2WcqdAPW+IX5/xV25jfj7t04+uJbJH3JAMflkVl+hAtGsKPpVwsIRPCde58t36u8vXNSCrnhJfH1VdqGN+vEPt6P5BcfTfbN8tWRsX3w/edaN8byMc2e39o48f5R5+J1no63cKlXuF7Sx+34nX9qrGB9Gmo3tBjRsKfXBUtXSmGJ92jUO7yqYemw6NGY/6ygEziSgd/QKlMqZwIUWaTcEZabDNF0QKTLQbviCQbw+sP1BZ0JEug1CW2ISZC+WA0TYWma70WoXU1ZXG6LxUBQSuo5PsZUaRPl4j0V9SX9/eno0Bt2wjSAfPPHDnGP1fknDM+2aHkU1BEm+nTctOf0Uv1h+rCG8KZT+cS4UxJ5Buc4NghkAv8ael0nlIPcke2mf/UW5HVnYOJ/jWnJcO3IVL4BNSLGsHoOn0Qee5DvD9JMuCmooLdtQ2fnitvOGe9ukPfrxJVVCm7Y229kwtP260/fFt1GuWees44CHZNXEJMyfhk/o1yEH6rvbgWMMXDLhmUtt79veJr2uwL/F1u94SHcmYHwJOOHCv4Br5pYXj3N8tNHfCkRLfteysOixpRzKLckTt7/n+0cmPGmeX+Lqm3rZOSTtLcyravMbxwcm9oI1vyXGJDzrqoW2u9ZAyHwWcKMzK+sYTVx2byp5kW4ov3hpf8Hk/yjBg/FkVMYD8UBtfAARUTKlSlg80GZwymEqzQzoMywvbz2Dw/B+DVOQOygkUUsLgUmMZ1PcBnepr5106txJKQLXlS45Z1km/G3KUKI2VUf23bNLrmgFqqpMMA19sSvimwA4Z+tk18wWOuRyyJEjPC1SOfK1jbEk8IMiGG/iNurGxncCnzYO2zNlj6WM7draDStojYMvLw5eyyjpfoKO6mIlMgRL6vOjlI21wHU5TdvQfijpuUrQFbPhbGGSXSASnXIefK8d+cp6R5SYTErZpA5f0o04qx0/opuuX6wL/fYROENKH9tfIJcy7mE+pj4X5WT4V1nGp2F79fW1f1/jJ/FjuuwV/mSPDrN3r/WMr/Bj24KnEovedlY4PFrkXCItJxqeq59pj0weRVs2475Rm3SUhSJTBKOYzC0n6pAzC6GQzQE2C7VxyDFoJMLoSBreNbR8nPWTzwCCVk4/RYXBcnXBqtfJ4RfoLGc8m2XTiHxRUzk3lJMhUeR6oN3VHeXROUvucjpmtOpFVOfb2+eOk3jMF+Lsr4T+CnDyl2eHOIBFB2dUVtHbillcc+8OFHDgcjw/K+7iYq0+2r/bAtKsPR21I7sTfCER7S/Q7MZH+1bkU7Z6KT0c4DRwM8mlA/+LTwnt3/lafl/B1ja/Mj33dDzbHkT3eP3DShu4hm+NUxHc144OFfT3Z+FT96BqXdeKckyb2f+zYNMUTRxMJeb19+2kmse/8XOUMtI/AVsfT7BSdaQeh7eNg10gd6r3qAD8YWfeBI8PynTr1y7WELbN2T7TdaJ+B6yGWUc5scjuB70WBeLvC1jEB4hFndIxdifwt8fpD9ZM6mX3jQqS/JC7oa/5QEBq9Cx8RwzFcottz86kL2ln41NXQXS6r8PcSvq5xwRT8oA623aYKfoDVnjiyW27Q8TvOjxrfTnHfqWn3KjoV/l7jveAq41NhRd9rxqafSy/FWKP8ukiQqI6yvI3OttNTFTzSFoJCybDPksoQ3Cl/oOMnyvPB+lkdyadEe81ze6lwpTmzdY/pr7alBhQM6sE/pIj9zzogcOoK2vHNFLb21UH97SB/rqAU/GmPvEnqd9cvP8157/QiMJZLVAT+fVzobejCE3Px6UKzNqc+1t+dvtb1xg80LPceSjxH3b43DOnUnL+YH7LzZBVGjSEb1xnLD7rbyZEaHGbm1cUcqenTHdOZjB8z+7qBfeZ27jqnxvq7814wsw+Sr/vGJNjU/g6aw2+1Y1O+S/9KnRiTLxIkRgOJanmZTQOs9nnlb3i1rGT+0cYSunzWikCP4OmltrDEsEBHKiGxbHArg3xeCvNcWwiSg/XX/6B9EnjzLCIXAQFi3yAHPyJzUVL96dcOfN0mdfsYmYY/FzWcKcuG97ND716OwFgu0eIkfBpp+ix8GmnDXRAf6+9OX+s65HoPy71XAor5MY0jxvKDVjs5UmPOzLwyR2qccqwzGT9m9nVj9czt3HVOjfV3571gZh8EX6uNRcenar92bEosURX/LBkk8gsxRuezggeBcHQcPBM/dI5Bw/vKm7c9cuqcTjwfghfJQa7VJ9nJi0gIxhgg9T5vN2dHYvt9AeFJ05Lvmx0+kc0LpIdv9jA7nHd7V/tjuQQ4E/OpFG++jLey2qC0T1eXG+vvWl/XdExtdd1vSqsyP0qROiM3lh9UVcuRC/19phe9p8yRXmjKTlyTH2UWHUuZU8d4XHo01t+Srxpr1tjZ4+unqougK0xaSCZM5ihvxxeruBdE++h+8Xge4ZTupZ1r5zIcg1lOCZDFKXZ4bGdTQFrczgoEf5MNiz6XWIFBmB3O9fCvNvB/oi3s65i3qKaE/5mtbAJ/7fOCnQ/Ri7I8zJvPKCfdxYLoZIDzWRGYik9DHEydMJ8SEtfPT3xdY4LuF0O+7rrfDOkkU8yPhMQy+QlHavxdY3pBO6lacyQhcf38hB81JhT4+uQeMlM7qVpzKiHxLl/M1+LH1san8IfAuh3EvkPz3N6bN28OS27ff//9M20PSm2Q7ONSWeSQ1/ZojM4aZMFE25st2Y6t2p7V4Ce9r8boSR58XozRseyy1/pY/OVf82nh+/NYn9XKX+LrmjbVnu83G+PWJRwZ6+9KTvk7aUFOXcKPSn+PuodUtmFOdXBq7b6Wfavxm2z5n7Zqrt47F0Be45yi297lpV3tS77rf/66RFPZr9IZO/OYdBfLZfOtGucXi5IXNyxmZ95wxNmzwzko3q9GwHyqhm5zirW+rumo2mJ50NjvhC2uRqmBZ7U6tRyp9HcNDuZIDWoT6dTyo6Z5c6oGtel0NuDrVdwLhFNYtae8+rG1xYNEaKMOEBDNkuasexaDs0plOwE0S6HS3zBkZ9e5K1t5zpS3DfLsT2mij8UckOxjVfyb8rrp81KrLLc4AvKx+bS4F65jQKWva4zz/aYGtRXoVHJklL9ruim7/J1UA9zEOpX8qLHCnKpBbUKdtfp6ZfcCHvO6uQj2milw61xv2Z6miVku+2prmMvm4iXEY/s2Z91jbbH8da6FOX0+Z93mx3h+rM0fa7PHnAqPkcz2/VKDrzky/jqvwblU5y744y70odRfl8itDae12CM7vtV2cezwHs5xWjcC+mWC/0Z5rnzsUtt1d8zWGQEjYASMgBEwAkbACBgBIzAJAooVeLkSccND7V+04m4Vy00nQeVuV/KFusd/FOJ4JyNgBIyAETACRsAIGAEjYASMQIOA4gQe9Xqh7ebSAJFKHSSCwsqTHM3zerzGlufwxjzrt/Ke2TwjYASMgBEwAkbACBgBI2AEJkCAv8/j7+OqX1aT2+AgMUdjxfvxFwH+L9CziSv2k00zAkbACBgBI2AEjIARMALXRCBOIhEgTvZo2v8B/PbdpXnrbqsAAAAASUVORK5CYII=",
       "text/latex": [
-       "$\\displaystyle {dst}_{(0,0)} \\leftarrow \\left({img}_{(1,0)}^{2} w_{2} - 0.5 {img}_{(1,1)}^{2} - 0.5 {img}_{(-1,1)}^{2} + 0.5 {img}_{(1,-1)}^{2} - 0.5 {img}_{(-1,-1)}^{2} - {img}_{(-1,0)}^{2} w_{2}\\right)^{2}$"
+       "$\\displaystyle {dst}_{(0,0)} \\leftarrow_{} \\left({img}_{(1,0)}^{2} w_{2} - 0.5 {img}_{(1,1)}^{2} - 0.5 {img}_{(-1,1)}^{2} + 0.5 {img}_{(1,-1)}^{2} - 0.5 {img}_{(-1,-1)}^{2} - {img}_{(-1,0)}^{2} w_{2}\\right)^{2}$"
       ],
       "text/plain": [
-       "                                                                                                    2\n",
-       "dst_C := (img_E__2â‹…wâ‚‚ - 0.5â‹…img_NE__2 - 0.5â‹…img_NW__2 + 0.5â‹…img_SE__2 - 0.5â‹…img_SW__2 - img_W__2â‹…wâ‚‚) "
+       "                                                                              \n",
+       "dst_C := (img_E__2â‹…wâ‚‚ - 0.5â‹…img_NE__2 - 0.5â‹…img_NW__2 + 0.5â‹…img_SE__2 - 0.5â‹…im\n",
+       "\n",
+       "                      2\n",
+       "g_SW__2 - img_W__2â‹…wâ‚‚) "
       ]
      },
-     "execution_count": 28,
+     "execution_count": 64,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -886,9 +897,18 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 29,
+   "execution_count": 65,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "/media/data/fhennig/research-hpc/projects/2024_pystencils_nbackend/pystencils/src/pystencils/config.py:327: FutureWarning: The `cpu_openmp` option of CreateKernelConfig is deprecated and will be removed in pystencils 2.1. Use `cpu_optim.openmp` instead.\n",
+      "  warn(\n"
+     ]
+    }
+   ],
    "source": [
     "from pystencils import create_kernel\n",
     "ast = create_kernel(update_rule, cpu_openmp=False)\n",
@@ -905,18 +925,15 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 30,
+   "execution_count": 66,
    "metadata": {},
    "outputs": [
     {
-     "data": {
-      "image/png": "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t9sNp9MpexEEQRAEQQhMW9DwPI+nnnoKGzZswPLlywEA3d3dMBgMsFqtsrwFBQXo7u4W80jFjHBeOKfGrl27YLFYxFdpael0m00QBEEQxCxEN92CO3bswPnz53H48OFYtkeVp59+Gjt37hSPHQ4HysrKyFJDEARBECmEMG7PINolLNMSNE8++STef/99HDx4ECUlJWK6zWaDx+OB3W6XWWl6enpgs9nEPMePH5fVJ8yCEvIoMRqNMBqN4rHQIWSpIQiCIIjUY2BgABaLJaZ1RiVoGGP43ve+h7fffhv79+9HZWWl7HxNTQ30ej327duHbdu2AQAuX76MtrY21NXVAQDq6urwd3/3d+jt7UV+fj4AYO/evTCbzVi2bFlE7SgqKsLFixexbNkytLe3U2DwDHA6nSgtLaV+jAHUl7GB+jF2UF/GBurH2CF4WITY21gSlaDZsWMHXnvtNfzud79DVlaWGPNisVhgMplgsVjwxBNPYOfOncjOzobZbMb3vvc91NXVYf369QCAe+65B8uWLcPXv/51/MM//AO6u7vxV3/1V9ixY4fMCjMZGo0GxcXFAACz2UxfsBhA/Rg7qC9jA/Vj7KC+jA3Uj7FDo4n9ur5RCZrnn38eAHDnnXfK0l966SV84xvfAAD80z/9EzQaDbZt2wa3243NmzfjX/7lX8S8Wq0W77//Pr773e+irq4OGRkZePzxx/GTn/xkZndCEARBEMScJWqX01SkpaXhueeew3PPPRc2T3l5OT744INoLk0QBEEQBBGWlN3LyWg04plnnonYTUWoQ/0YO6gvYwP1Y+ygvowN1I+xI559OaOVggmCIAiCIG4GUtZCQxAEQRAEIUCChiAIgiCIlIcEDUEQBEEQKQ8JGoIgCIIgUp6UFDTPPfccKioqkJaWhtra2pCtFOY6Bw8exAMPPICioiJwHId33nlHdp4xhh//+McoLCyEyWRCfX09rly5IsszODiI7du3w2w2w2q14oknnoDL5UrgXSSfXbt24dZbb0VWVhby8/Px0EMP4fLly7I84+Pj2LFjB3JycpCZmYlt27aJW3kItLW14b777kN6ejry8/PxZ3/2Z/D5fIm8laTz/PPPY+XKleLCZHV1ddi9e7d4nvpxevz93/89OI7DU089JaZRX0bG3/zN34DjONmrqqpKPE/9GDkdHR342te+hpycHJhM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",
-      "text/plain": [
-       "<Figure size 640x480 with 1 Axes>"
-      ]
-     },
-     "metadata": {},
-     "output_type": "display_data"
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "No requests or imageio installed\n"
+     ]
     }
    ],
    "source": [
@@ -936,12 +953,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 31,
+   "execution_count": 67,
    "metadata": {},
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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nAqnQcrGpN2rrrrqyPcLp0ehPZxi8c53vnOjs449v+iiizZcn+6e7xj0FI+OVv+TP/mTg5e//OUHV1555ZHO1bc3OB28Bk9/+tOP0Gt8ASy8ngJ25xh827d92+7SSy89/PtTn/rU7iu/8it3L3rRi27VcR0XeP7zn7+7973vfdLvOub4vPPO27361a8+/Ozv//7vtyOQ3/GOd5zFUR4vCD9XX3314d833XTT7i53ucvuV3/1V4/g9nM/93N3V1111fb33/3d322/+/M///PDa/7gD/5gd4c73GH3L//yL7vbO+zjNHjSk560e+QjH3mzv1k4PTV8+MMf3nD71re+9bT3/Bvf+MbdHe94x92HPvShw2te+tKX7r7oi75o9x//8R//jdW97eM1eOADH7j7kR/5kZv9zcLrLcM55flI8/7Lv/zLzYU9D5rr73e84x236tiOE+T+z7V9j3vcY7MUc/0F4TYNfuK3kEwHBS78nj68733vO/jQhz50BI8dB1CIEB57L9TyLd/yLYfXdH30nKdkwcnhuuuu29zcX//1X7+dhH3jjTcefrdwemroSIrgggsuOO093/s3fuM3Hlx44YWH1+TFqx17nrsFn45X8Lu/+7sHd77znQ/uda97HVx22WXbye+TXhdeP0MHy3224SMf+cjmqpqbIOjvf/iHf7jVxnWcIAGYyzTmnRvwBS94wcH973//g7/5m7/ZBOb555+/CcV9/PbdgtMDuDoZnfqu94TohDvd6U4b81q4vvmQS+GATsP+x3/8x4PnPve5Bw972MM2Jv45n/M5C6engJtuumk7Vfy7vuu7NmGIDk+153s/GS1PWr89w8nwGjzxiU88uPvd774Zetdff/3BT//0T295Ib//+7+/fb/weoyUjwX/c4hZg2/6pm/alJE2yKte9aotMXLBgnMVHv/4xx/+P4sx+v2ar/mazRvy4Ac/+FYd23GAchQyMmaO14LPHl5n/lb0WvJ5dJriHN0uuGU4p8Iuua+ycPYzsfv7Lne5y602ruMMWTxf93Vfd/De9753w2GhrY9+9KNHrln4PTNAi7dEp73vJ0lXPVC1xqLl04PChvGEaHfh9Jbh2c9+9pbUfO211x7c9a53PUKrp9rzvZ+Mliet317h5vB6MsjQCya9LrweE+Uj9+A3f/M3H/zRH/3REZdXf9/vfve7Vcd2XKHSzjTxtPJwe9555x3Bb27CckIWfk8fCgvEWCYei4+XywGPvcfwi7mDt7zlLRs9Y1ILbhn++Z//ecv5iHYXTk8O5e4mIK+++uqNvqLNCaez53v/67/+6yPKchUelYh/wzd8w+2STE+F15PBu9/97u190uvC6y3A7hyD3/u939uqBq688sotu/2SSy7ZfcmXfMmRTOwFNw8/8RM/sbvuuut273vf+3Zvf/vbdw95yEN2d77znbds7eAZz3jG7m53u9vuLW95y+4v/uIvdve73/2214Kj8G//9m+7v/qrv9pebZOXvOQl2//f//73b9//8i//8kaXr33ta3fXX3/9VqXx1V/91buPf/zjh/e4+OKLd/e5z312f/qnf7p729vetvvar/3a3ROe8ITbLapvCad995M/+ZNbBUa0+4d/+Ie7+973vhvOPvGJTxzeY+H0KDzzmc/cffEXf/G25z/4wQ8evv793//98JpT7fn/+q//2t3rXvfaXXTRRbt3v/vdu2uuuWb35V/+5bvLLrtsd3uFU+H1ve997+6FL3zhhs/oNT5wj3vcY/eABzzg8B4Lr7cM55zyEVx++eXbZjn//PO30tt3vvOdt/aQjg087nGP233FV3zFhruv+qqv2v5uo4CE47Oe9azdl37pl+6+4Au+YPeoRz1q21QLjsK11167Ccj9V+Wgym2f97zn7S688MJNWX7wgx+8e8973nPkHjfeeOOmbHzhF37hVrb4lKc8ZROyt1e4JZzG1BN+Cb1KQ+9+97vvnv70p3+a0bFwehROhs9ev/M7v3NGe/6f/umfdg972MN2n//5n78ZKxkxn/zkJ3e3VzgVXm+44YZN0bjgggu2/X/Pe95z95znPGf3sY997Mh9Fl5vHu7QP7fkGVmwYMGCBQsWLLjN5nwsWLBgwYIFC277sJSPBQsWLFiwYMFZhaV8LFiwYMGCBQvOKizlY8GCBQsWLFiwlI8FCxYsWLBgwW0XludjwYIFCxYsWHBWYSkfCxYsWLBgwYKzCkv5WLBgwYIFCxacVVjKx4IFCxYsWLDgrMJSPhYsWLBgwYIFZxWW8rFgwYIFCxYsODib8H8BNF0K2lzWUusAAAAASUVORK5CYII=",
       "text/plain": [
        "<Figure size 640x480 with 1 Axes>"
       ]
@@ -968,163 +985,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 32,
+   "execution_count": 70,
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "image/svg+xml": [
-       "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n",
-       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
-       " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
-       "<!-- Generated by graphviz version 2.43.0 (0)\n",
-       " -->\n",
-       "<!-- Title: %3 Pages: 1 -->\n",
-       "<svg width=\"684pt\" height=\"391pt\"\n",
-       " viewBox=\"0.00 0.00 684.00 390.75\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
-       "<g id=\"graph0\" class=\"graph\" transform=\"scale(1.22 1.22) rotate(0) translate(4 472)\">\n",
-       "<title>%3</title>\n",
-       "<polygon fill=\"white\" stroke=\"transparent\" points=\"-4,4 -4,-472 829.23,-472 829.23,4 -4,4\"/>\n",
-       "<!-- 139920670537616 -->\n",
-       "<g id=\"node1\" class=\"node\">\n",
-       "<title>139920670537616</title>\n",
-       "<ellipse fill=\"#a056db\" stroke=\"black\" cx=\"263.84\" cy=\"-450\" rx=\"134.58\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"263.84\" y=\"-446.3\" font-family=\"Times,serif\" font-size=\"14.00\">Func: kernel (dst,img,w_2)</text>\n",
-       "</g>\n",
-       "<!-- 139920670664720 -->\n",
-       "<g id=\"node11\" class=\"node\">\n",
-       "<title>139920670664720</title>\n",
-       "<ellipse fill=\"#dbc256\" stroke=\"black\" cx=\"263.84\" cy=\"-378\" rx=\"36.29\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"263.84\" y=\"-374.3\" font-family=\"Times,serif\" font-size=\"14.00\">Block</text>\n",
-       "</g>\n",
-       "<!-- 139920670537616&#45;&gt;139920670664720 -->\n",
-       "<g id=\"edge10\" class=\"edge\">\n",
-       "<title>139920670537616&#45;&gt;139920670664720</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M263.84,-431.7C263.84,-423.98 263.84,-414.71 263.84,-406.11\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"267.34,-406.1 263.84,-396.1 260.34,-406.1 267.34,-406.1\"/>\n",
-       "</g>\n",
-       "<!-- 139920666169168 -->\n",
-       "<g id=\"node2\" class=\"node\">\n",
-       "<title>139920666169168</title>\n",
-       "<ellipse fill=\"#56db7f\" stroke=\"black\" cx=\"175.84\" cy=\"-306\" rx=\"73.39\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"175.84\" y=\"-302.3\" font-family=\"Times,serif\" font-size=\"14.00\">_data_img_22</text>\n",
-       "</g>\n",
-       "<!-- 139920670656400 -->\n",
-       "<g id=\"node3\" class=\"node\">\n",
-       "<title>139920670656400</title>\n",
-       "<ellipse fill=\"#3498db\" stroke=\"black\" cx=\"352.84\" cy=\"-306\" rx=\"85.59\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"352.84\" y=\"-302.3\" font-family=\"Times,serif\" font-size=\"14.00\">Loop over dim 0</text>\n",
-       "</g>\n",
-       "<!-- 139920657663504 -->\n",
-       "<g id=\"node10\" class=\"node\">\n",
-       "<title>139920657663504</title>\n",
-       "<ellipse fill=\"#dbc256\" stroke=\"black\" cx=\"352.84\" cy=\"-234\" rx=\"36.29\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"352.84\" y=\"-230.3\" font-family=\"Times,serif\" font-size=\"14.00\">Block</text>\n",
-       "</g>\n",
-       "<!-- 139920670656400&#45;&gt;139920657663504 -->\n",
-       "<g id=\"edge7\" class=\"edge\">\n",
-       "<title>139920670656400&#45;&gt;139920657663504</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M352.84,-287.7C352.84,-279.98 352.84,-270.71 352.84,-262.11\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"356.34,-262.1 352.84,-252.1 349.34,-262.1 356.34,-262.1\"/>\n",
-       "</g>\n",
-       "<!-- 139920670665808 -->\n",
-       "<g id=\"node4\" class=\"node\">\n",
-       "<title>139920670665808</title>\n",
-       "<ellipse fill=\"#56db7f\" stroke=\"black\" cx=\"70.84\" cy=\"-162\" rx=\"70.69\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"70.84\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">_data_dst_00</text>\n",
-       "</g>\n",
-       "<!-- 139920670698640 -->\n",
-       "<g id=\"node5\" class=\"node\">\n",
-       "<title>139920670698640</title>\n",
-       "<ellipse fill=\"#56db7f\" stroke=\"black\" cx=\"249.84\" cy=\"-162\" rx=\"89.88\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"249.84\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">_data_img_22_01</text>\n",
-       "</g>\n",
-       "<!-- 139920661915920 -->\n",
-       "<g id=\"node6\" class=\"node\">\n",
-       "<title>139920661915920</title>\n",
-       "<ellipse fill=\"#56db7f\" stroke=\"black\" cx=\"455.84\" cy=\"-162\" rx=\"98.58\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"455.84\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">_data_img_22_0m1</text>\n",
-       "</g>\n",
-       "<!-- 139920657676048 -->\n",
-       "<g id=\"node7\" class=\"node\">\n",
-       "<title>139920657676048</title>\n",
-       "<ellipse fill=\"#3498db\" stroke=\"black\" cx=\"658.84\" cy=\"-162\" rx=\"85.59\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"658.84\" y=\"-158.3\" font-family=\"Times,serif\" font-size=\"14.00\">Loop over dim 1</text>\n",
-       "</g>\n",
-       "<!-- 139920657567760 -->\n",
-       "<g id=\"node9\" class=\"node\">\n",
-       "<title>139920657567760</title>\n",
-       "<ellipse fill=\"#dbc256\" stroke=\"black\" cx=\"658.84\" cy=\"-90\" rx=\"36.29\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"658.84\" y=\"-86.3\" font-family=\"Times,serif\" font-size=\"14.00\">Block</text>\n",
-       "</g>\n",
-       "<!-- 139920657676048&#45;&gt;139920657567760 -->\n",
-       "<g id=\"edge2\" class=\"edge\">\n",
-       "<title>139920657676048&#45;&gt;139920657567760</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M658.84,-143.7C658.84,-135.98 658.84,-126.71 658.84,-118.11\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"662.34,-118.1 658.84,-108.1 655.34,-118.1 662.34,-118.1\"/>\n",
-       "</g>\n",
-       "<!-- 139920662243472 -->\n",
-       "<g id=\"node8\" class=\"node\">\n",
-       "<title>139920662243472</title>\n",
-       "<ellipse fill=\"#56db7f\" stroke=\"black\" cx=\"658.84\" cy=\"-18\" rx=\"166.27\" ry=\"18\"/>\n",
-       "<text text-anchor=\"middle\" x=\"658.84\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\">_data_dst_00[_stride_dst_1*ctr_1]</text>\n",
-       "</g>\n",
-       "<!-- 139920657567760&#45;&gt;139920662243472 -->\n",
-       "<g id=\"edge1\" class=\"edge\">\n",
-       "<title>139920657567760&#45;&gt;139920662243472</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M658.84,-71.7C658.84,-63.98 658.84,-54.71 658.84,-46.11\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"662.34,-46.1 658.84,-36.1 655.34,-46.1 662.34,-46.1\"/>\n",
-       "</g>\n",
-       "<!-- 139920657663504&#45;&gt;139920670665808 -->\n",
-       "<g id=\"edge3\" class=\"edge\">\n",
-       "<title>139920657663504&#45;&gt;139920670665808</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M321.04,-225.11C274.68,-213.6 187.72,-192.01 129.54,-177.57\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"130.29,-174.15 119.74,-175.14 128.61,-180.94 130.29,-174.15\"/>\n",
-       "</g>\n",
-       "<!-- 139920657663504&#45;&gt;139920670698640 -->\n",
-       "<g id=\"edge4\" class=\"edge\">\n",
-       "<title>139920657663504&#45;&gt;139920670698640</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M332,-218.83C317.82,-209.19 298.75,-196.24 282.56,-185.23\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"284.15,-182.08 273.91,-179.35 280.21,-187.87 284.15,-182.08\"/>\n",
-       "</g>\n",
-       "<!-- 139920657663504&#45;&gt;139920661915920 -->\n",
-       "<g id=\"edge5\" class=\"edge\">\n",
-       "<title>139920657663504&#45;&gt;139920661915920</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M373.69,-218.83C387.77,-209.26 406.67,-196.42 422.79,-185.46\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"425.11,-188.12 431.41,-179.61 421.17,-182.33 425.11,-188.12\"/>\n",
-       "</g>\n",
-       "<!-- 139920657663504&#45;&gt;139920657676048 -->\n",
-       "<g id=\"edge6\" class=\"edge\">\n",
-       "<title>139920657663504&#45;&gt;139920657676048</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M385.3,-225.58C434.58,-214.3 529.28,-192.64 593.27,-178\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"594.3,-181.35 603.27,-175.71 592.74,-174.53 594.3,-181.35\"/>\n",
-       "</g>\n",
-       "<!-- 139920670664720&#45;&gt;139920666169168 -->\n",
-       "<g id=\"edge8\" class=\"edge\">\n",
-       "<title>139920670664720&#45;&gt;139920666169168</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M245.18,-362.15C233.32,-352.72 217.72,-340.31 204.33,-329.66\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"206.33,-326.78 196.32,-323.29 201.97,-332.25 206.33,-326.78\"/>\n",
-       "</g>\n",
-       "<!-- 139920670664720&#45;&gt;139920670656400 -->\n",
-       "<g id=\"edge9\" class=\"edge\">\n",
-       "<title>139920670664720&#45;&gt;139920670656400</title>\n",
-       "<path fill=\"none\" stroke=\"black\" d=\"M282.72,-362.15C294.63,-352.78 310.27,-340.49 323.75,-329.88\"/>\n",
-       "<polygon fill=\"black\" stroke=\"black\" points=\"326.12,-332.47 331.82,-323.54 321.79,-326.97 326.12,-332.47\"/>\n",
-       "</g>\n",
-       "</g>\n",
-       "</svg>\n"
-      ],
-      "text/plain": [
-       "<graphviz.sources.Source at 0x7f4230138790>"
-      ]
-     },
-     "execution_count": 32,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
-    "ps.to_dot(ast, graph_style={'size': \"9.5,12.5\"})"
+    "#   TODO nbackend\n",
+    "# ps.to_dot(ast, graph_style={'size': \"9.5,12.5\"})"
    ]
   },
   {
@@ -1136,7 +1002,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 33,
+   "execution_count": 71,
    "metadata": {},
    "outputs": [
     {
@@ -1161,6 +1027,7 @@
        ".highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n",
        ".highlight .gd { color: #A00000 } /* Generic.Deleted */\n",
        ".highlight .ge { font-style: italic } /* Generic.Emph */\n",
+       ".highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\n",
        ".highlight .gr { color: #E40000 } /* Generic.Error */\n",
        ".highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n",
        ".highlight .gi { color: #008400 } /* Generic.Inserted */\n",
@@ -1227,36 +1094,32 @@
     {
      "data": {
       "text/html": [
-       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_data_img</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_size_dst_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_size_dst_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"p\">)</span>\n",
+       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_size_dst_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_size_dst_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">dst_data</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">img_data</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"p\">)</span>\n",
        "<span class=\"p\">{</span>\n",
-       "<span class=\"w\">   </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_img_22</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_img</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">2</span><span class=\"o\">*</span><span class=\"n\">_stride_img_2</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"n\">_size_dst_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"n\">_size_dst_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
        "<span class=\"w\">   </span><span class=\"p\">{</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst_00</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_dst</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_0</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_img_22_01</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_img_22</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_img_22_0m1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_img_22</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"n\">_size_dst_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"n\">_size_dst_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
        "<span class=\"w\">      </span><span class=\"p\">{</span>\n",
-       "<span class=\"w\">         </span><span class=\"n\">_data_dst_00</span><span class=\"p\">[</span><span class=\"n\">_stride_dst_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">w_2</span><span class=\"o\">*</span><span class=\"mf\">-1.0</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">])</span><span class=\"o\">*</span><span class=\"p\">(</span><span class=\"n\">w_2</span><span class=\"o\">*</span><span class=\"mf\">-1.0</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]);</span>\n",
+       "<span class=\"w\">         </span><span class=\"n\">dst_data</span><span class=\"p\">[</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">])</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]);</span>\n",
        "<span class=\"w\">      </span><span class=\"p\">}</span>\n",
+       "\n",
        "<span class=\"w\">   </span><span class=\"p\">}</span>\n",
+       "\n",
        "<span class=\"p\">}</span>\n",
        "</pre></div>\n"
       ],
       "text/plain": [
-       "FUNC_PREFIX void kernel(double * RESTRICT  _data_dst, double * RESTRICT const _data_img, int64_t const _size_dst_0, int64_t const _size_dst_1, int64_t const _stride_dst_0, int64_t const _stride_dst_1, int64_t const _stride_img_0, int64_t const _stride_img_1, int64_t const _stride_img_2, double w_2)\n",
+       "FUNC_PREFIX void kernel (const int64_t _size_dst_0, const int64_t _size_dst_1, const int64_t _stride_dst_0, const int64_t _stride_dst_1, const int64_t _stride_img_0, const int64_t _stride_img_1, const int64_t _stride_img_2, double * const  dst_data, double * const  img_data, const double w_2)\n",
        "{\n",
-       "   double * RESTRICT _data_img_22 = _data_img + 2*_stride_img_2;\n",
-       "   for (int64_t ctr_0 = 1; ctr_0 < _size_dst_0 - 1; ctr_0 += 1)\n",
+       "   for(int64_t ctr_0 = 1LL; ctr_0 < _size_dst_0 - 1LL; ctr_0 += 1LL)\n",
        "   {\n",
-       "      double * RESTRICT  _data_dst_00 = _data_dst + _stride_dst_0*ctr_0;\n",
-       "      double * RESTRICT _data_img_22_01 = _stride_img_0*ctr_0 + _stride_img_0 + _data_img_22;\n",
-       "      double * RESTRICT _data_img_22_0m1 = _stride_img_0*ctr_0 - _stride_img_0 + _data_img_22;\n",
-       "      for (int64_t ctr_1 = 1; ctr_1 < _size_dst_1 - 1; ctr_1 += 1)\n",
+       "      for(int64_t ctr_1 = 1LL; ctr_1 < _size_dst_1 - 1LL; ctr_1 += 1LL)\n",
        "      {\n",
-       "         _data_dst_00[_stride_dst_1*ctr_1] = (w_2*-1.0*_data_img_22_0m1[_stride_img_1*ctr_1] + w_2*_data_img_22_01[_stride_img_1*ctr_1] - 0.5*_data_img_22_01[_stride_img_1*ctr_1 + _stride_img_1] - 0.5*_data_img_22_0m1[_stride_img_1*ctr_1 + _stride_img_1] - 0.5*_data_img_22_0m1[_stride_img_1*ctr_1 - _stride_img_1] + 0.5*_data_img_22_01[_stride_img_1*ctr_1 - _stride_img_1])*(w_2*-1.0*_data_img_22_0m1[_stride_img_1*ctr_1] + w_2*_data_img_22_01[_stride_img_1*ctr_1] - 0.5*_data_img_22_01[_stride_img_1*ctr_1 + _stride_img_1] - 0.5*_data_img_22_0m1[_stride_img_1*ctr_1 + _stride_img_1] - 0.5*_data_img_22_0m1[_stride_img_1*ctr_1 - _stride_img_1] + 0.5*_data_img_22_01[_stride_img_1*ctr_1 - _stride_img_1]);\n",
+       "         dst_data[ctr_0 * _stride_dst_0 + ctr_1 * _stride_dst_1] = (0.5 * img_data[(ctr_0 + 1LL) * _stride_img_0 + (ctr_1 + -1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + 1LL) * _stride_img_0 + (ctr_1 + 1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + -1LL) * _stride_img_0 + (ctr_1 + 1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + -1LL) * _stride_img_0 + (ctr_1 + -1LL) * _stride_img_1 + 2LL * _stride_img_2] + w_2 * img_data[(ctr_0 + 1LL) * _stride_img_0 + ctr_1 * _stride_img_1 + 2LL * _stride_img_2] - w_2 * img_data[(ctr_0 + -1LL) * _stride_img_0 + ctr_1 * _stride_img_1 + 2LL * _stride_img_2]) * (0.5 * img_data[(ctr_0 + 1LL) * _stride_img_0 + (ctr_1 + -1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + 1LL) * _stride_img_0 + (ctr_1 + 1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + -1LL) * _stride_img_0 + (ctr_1 + 1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + -1LL) * _stride_img_0 + (ctr_1 + -1LL) * _stride_img_1 + 2LL * _stride_img_2] + w_2 * img_data[(ctr_0 + 1LL) * _stride_img_0 + ctr_1 * _stride_img_1 + 2LL * _stride_img_2] - w_2 * img_data[(ctr_0 + -1LL) * _stride_img_0 + ctr_1 * _stride_img_1 + 2LL * _stride_img_2]);\n",
        "      }\n",
+       "\n",
        "   }\n",
+       "\n",
        "}"
       ]
      },
@@ -1277,7 +1140,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 34,
+   "execution_count": 72,
    "metadata": {},
    "outputs": [
     {
@@ -1302,6 +1165,7 @@
        ".highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n",
        ".highlight .gd { color: #A00000 } /* Generic.Deleted */\n",
        ".highlight .ge { font-style: italic } /* Generic.Emph */\n",
+       ".highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\n",
        ".highlight .gr { color: #E40000 } /* Generic.Error */\n",
        ".highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n",
        ".highlight .gi { color: #008400 } /* Generic.Inserted */\n",
@@ -1368,44 +1232,34 @@
     {
      "data": {
       "text/html": [
-       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_data_img</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_size_dst_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_size_dst_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"p\">)</span>\n",
+       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_size_dst_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_size_dst_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">dst_data</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">img_data</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"p\">)</span>\n",
        "<span class=\"p\">{</span>\n",
-       "<span class=\"w\">   </span><span class=\"cp\">#pragma omp parallel num_threads(2)</span>\n",
+       "<span class=\"w\">   </span><span class=\"cp\">#pragma omp parallel for schedule(static) num_threads(2)</span>\n",
+       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"n\">_size_dst_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
        "<span class=\"w\">   </span><span class=\"p\">{</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_img_22</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_img</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">2</span><span class=\"o\">*</span><span class=\"n\">_stride_img_2</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"cp\">#pragma omp for schedule(static)</span>\n",
-       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"n\">_size_dst_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"n\">_size_dst_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
        "<span class=\"w\">      </span><span class=\"p\">{</span>\n",
-       "<span class=\"w\">         </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst_00</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_dst</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_0</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">         </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_img_22_01</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_img_22</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">         </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_img_22_0m1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_img_22</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">         </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"n\">_size_dst_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span>\n",
-       "<span class=\"w\">         </span><span class=\"p\">{</span>\n",
-       "<span class=\"w\">            </span><span class=\"n\">_data_dst_00</span><span class=\"p\">[</span><span class=\"n\">_stride_dst_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">w_2</span><span class=\"o\">*</span><span class=\"mf\">-1.0</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">])</span><span class=\"o\">*</span><span class=\"p\">(</span><span class=\"n\">w_2</span><span class=\"o\">*</span><span class=\"mf\">-1.0</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_0m1</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"o\">*</span><span class=\"n\">_data_img_22_01</span><span class=\"p\">[</span><span class=\"n\">_stride_img_1</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"p\">]);</span>\n",
-       "<span class=\"w\">         </span><span class=\"p\">}</span>\n",
+       "<span class=\"w\">         </span><span class=\"n\">dst_data</span><span class=\"p\">[</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_dst_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">])</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">0.5</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">w_2</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">img_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">_stride_img_2</span><span class=\"p\">]);</span>\n",
        "<span class=\"w\">      </span><span class=\"p\">}</span>\n",
+       "\n",
        "<span class=\"w\">   </span><span class=\"p\">}</span>\n",
+       "\n",
        "<span class=\"p\">}</span>\n",
        "</pre></div>\n"
       ],
       "text/plain": [
-       "FUNC_PREFIX void kernel(double * RESTRICT  _data_dst, double * RESTRICT const _data_img, int64_t const _size_dst_0, int64_t const _size_dst_1, int64_t const _stride_dst_0, int64_t const _stride_dst_1, int64_t const _stride_img_0, int64_t const _stride_img_1, int64_t const _stride_img_2, double w_2)\n",
+       "FUNC_PREFIX void kernel (const int64_t _size_dst_0, const int64_t _size_dst_1, const int64_t _stride_dst_0, const int64_t _stride_dst_1, const int64_t _stride_img_0, const int64_t _stride_img_1, const int64_t _stride_img_2, double * const  dst_data, double * const  img_data, const double w_2)\n",
        "{\n",
-       "   #pragma omp parallel num_threads(2)\n",
+       "   #pragma omp parallel for schedule(static) num_threads(2)\n",
+       "   for(int64_t ctr_0 = 1LL; ctr_0 < _size_dst_0 - 1LL; ctr_0 += 1LL)\n",
        "   {\n",
-       "      double * RESTRICT _data_img_22 = _data_img + 2*_stride_img_2;\n",
-       "      #pragma omp for schedule(static)\n",
-       "      for (int64_t ctr_0 = 1; ctr_0 < _size_dst_0 - 1; ctr_0 += 1)\n",
+       "      for(int64_t ctr_1 = 1LL; ctr_1 < _size_dst_1 - 1LL; ctr_1 += 1LL)\n",
        "      {\n",
-       "         double * RESTRICT  _data_dst_00 = _data_dst + _stride_dst_0*ctr_0;\n",
-       "         double * RESTRICT _data_img_22_01 = _stride_img_0*ctr_0 + _stride_img_0 + _data_img_22;\n",
-       "         double * RESTRICT _data_img_22_0m1 = _stride_img_0*ctr_0 - _stride_img_0 + _data_img_22;\n",
-       "         for (int64_t ctr_1 = 1; ctr_1 < _size_dst_1 - 1; ctr_1 += 1)\n",
-       "         {\n",
-       "            _data_dst_00[_stride_dst_1*ctr_1] = (w_2*-1.0*_data_img_22_0m1[_stride_img_1*ctr_1] + w_2*_data_img_22_01[_stride_img_1*ctr_1] - 0.5*_data_img_22_01[_stride_img_1*ctr_1 + _stride_img_1] - 0.5*_data_img_22_0m1[_stride_img_1*ctr_1 + _stride_img_1] - 0.5*_data_img_22_0m1[_stride_img_1*ctr_1 - _stride_img_1] + 0.5*_data_img_22_01[_stride_img_1*ctr_1 - _stride_img_1])*(w_2*-1.0*_data_img_22_0m1[_stride_img_1*ctr_1] + w_2*_data_img_22_01[_stride_img_1*ctr_1] - 0.5*_data_img_22_01[_stride_img_1*ctr_1 + _stride_img_1] - 0.5*_data_img_22_0m1[_stride_img_1*ctr_1 + _stride_img_1] - 0.5*_data_img_22_0m1[_stride_img_1*ctr_1 - _stride_img_1] + 0.5*_data_img_22_01[_stride_img_1*ctr_1 - _stride_img_1]);\n",
-       "         }\n",
+       "         dst_data[ctr_0 * _stride_dst_0 + ctr_1 * _stride_dst_1] = (0.5 * img_data[(ctr_0 + 1LL) * _stride_img_0 + (ctr_1 + -1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + 1LL) * _stride_img_0 + (ctr_1 + 1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + -1LL) * _stride_img_0 + (ctr_1 + 1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + -1LL) * _stride_img_0 + (ctr_1 + -1LL) * _stride_img_1 + 2LL * _stride_img_2] + w_2 * img_data[(ctr_0 + 1LL) * _stride_img_0 + ctr_1 * _stride_img_1 + 2LL * _stride_img_2] - w_2 * img_data[(ctr_0 + -1LL) * _stride_img_0 + ctr_1 * _stride_img_1 + 2LL * _stride_img_2]) * (0.5 * img_data[(ctr_0 + 1LL) * _stride_img_0 + (ctr_1 + -1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + 1LL) * _stride_img_0 + (ctr_1 + 1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + -1LL) * _stride_img_0 + (ctr_1 + 1LL) * _stride_img_1 + 2LL * _stride_img_2] - 0.5 * img_data[(ctr_0 + -1LL) * _stride_img_0 + (ctr_1 + -1LL) * _stride_img_1 + 2LL * _stride_img_2] + w_2 * img_data[(ctr_0 + 1LL) * _stride_img_0 + ctr_1 * _stride_img_1 + 2LL * _stride_img_2] - w_2 * img_data[(ctr_0 + -1LL) * _stride_img_0 + ctr_1 * _stride_img_1 + 2LL * _stride_img_2]);\n",
        "      }\n",
+       "\n",
        "   }\n",
+       "\n",
        "}"
       ]
      },
@@ -1414,8 +1268,12 @@
     }
    ],
    "source": [
-    "ast = ps.create_kernel(update_rule)\n",
-    "ps.cpu.add_openmp(ast, num_threads=2)\n",
+    "ast = ps.create_kernel(\n",
+    "    update_rule,\n",
+    "    cpu_optim = ps.config.CpuOptimConfig(\n",
+    "        openmp=ps.config.OpenMpConfig(num_threads=2))\n",
+    "    )\n",
+    "\n",
     "ps.show_code(ast)"
    ]
   },
@@ -1431,7 +1289,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 35,
+   "execution_count": 73,
    "metadata": {},
    "outputs": [
     {
@@ -1456,6 +1314,7 @@
        ".highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n",
        ".highlight .gd { color: #A00000 } /* Generic.Deleted */\n",
        ".highlight .ge { font-style: italic } /* Generic.Emph */\n",
+       ".highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\n",
        ".highlight .gr { color: #E40000 } /* Generic.Error */\n",
        ".highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n",
        ".highlight .gi { color: #008400 } /* Generic.Inserted */\n",
@@ -1522,36 +1381,32 @@
     {
      "data": {
       "text/html": [
-       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_data_I</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst</span><span class=\"p\">)</span>\n",
+       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">I_data</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">dst_data</span><span class=\"p\">)</span>\n",
        "<span class=\"p\">{</span>\n",
-       "<span class=\"w\">   </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_I_21</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_I</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">202</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mf\">81L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
        "<span class=\"w\">   </span><span class=\"p\">{</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst_00</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_dst</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">601</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_I_21_01</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_I_21</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_I_21_0m1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_I_21</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">600</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mf\">289L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
        "<span class=\"w\">      </span><span class=\"p\">{</span>\n",
-       "<span class=\"w\">         </span><span class=\"n\">_data_dst_00</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">-1.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_21_01</span><span class=\"p\">[</span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">4</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">1.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_21_0m1</span><span class=\"p\">[</span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">4</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">1.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_21_0m1</span><span class=\"p\">[</span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">4</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">2.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_21_0m1</span><span class=\"p\">[</span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_21_01</span><span class=\"p\">[</span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_I_21_01</span><span class=\"p\">[</span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">4</span><span class=\"p\">];</span>\n",
+       "<span class=\"w\">         </span><span class=\"n\">dst_data</span><span class=\"p\">[</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">290L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">-1.0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">I_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">1160L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">4L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">I_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">1160L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">4L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"n\">I_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">1160L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">4L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">2.0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">I_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">1160L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">4L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2.0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">I_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">1160L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">4L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">I_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">1160L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">4L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">];</span>\n",
        "<span class=\"w\">      </span><span class=\"p\">}</span>\n",
+       "\n",
        "<span class=\"w\">   </span><span class=\"p\">}</span>\n",
+       "\n",
        "<span class=\"p\">}</span>\n",
        "</pre></div>\n"
       ],
       "text/plain": [
-       "FUNC_PREFIX void kernel(double * RESTRICT const _data_I, double * RESTRICT  _data_dst)\n",
+       "FUNC_PREFIX void kernel (double * const  I_data, double * const  dst_data)\n",
        "{\n",
-       "   double * RESTRICT _data_I_21 = _data_I + 1;\n",
-       "   for (int64_t ctr_0 = 1; ctr_0 < 202; ctr_0 += 1)\n",
+       "   for(int64_t ctr_0 = 1LL; ctr_0 < 81LL; ctr_0 += 1LL)\n",
        "   {\n",
-       "      double * RESTRICT  _data_dst_00 = _data_dst + 601*ctr_0;\n",
-       "      double * RESTRICT _data_I_21_01 = _data_I_21 + 2404*ctr_0 + 2404;\n",
-       "      double * RESTRICT _data_I_21_0m1 = _data_I_21 + 2404*ctr_0 - 2404;\n",
-       "      for (int64_t ctr_1 = 1; ctr_1 < 600; ctr_1 += 1)\n",
+       "      for(int64_t ctr_1 = 1LL; ctr_1 < 289LL; ctr_1 += 1LL)\n",
        "      {\n",
-       "         _data_dst_00[ctr_1] = -1.0*_data_I_21_01[4*ctr_1 + 4] - 1.0*_data_I_21_0m1[4*ctr_1 + 4] - 1.0*_data_I_21_0m1[4*ctr_1 - 4] - 2.0*_data_I_21_0m1[4*ctr_1] + 2.0*_data_I_21_01[4*ctr_1] + _data_I_21_01[4*ctr_1 - 4];\n",
+       "         dst_data[ctr_0 * 290LL + ctr_1] = -1.0 * I_data[(ctr_0 + 1LL) * 1160LL + (ctr_1 + 1LL) * 4LL + 1LL] - I_data[(ctr_0 + -1LL) * 1160LL + (ctr_1 + 1LL) * 4LL + 1LL] - I_data[(ctr_0 + -1LL) * 1160LL + (ctr_1 + -1LL) * 4LL + 1LL] - 2.0 * I_data[(ctr_0 + -1LL) * 1160LL + ctr_1 * 4LL + 1LL] + 2.0 * I_data[(ctr_0 + 1LL) * 1160LL + ctr_1 * 4LL + 1LL] + I_data[(ctr_0 + 1LL) * 1160LL + (ctr_1 + -1LL) * 4LL + 1LL];\n",
        "      }\n",
+       "\n",
        "   }\n",
+       "\n",
        "}"
       ]
      },
@@ -1588,130 +1443,15 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 36,
+   "execution_count": 74,
    "metadata": {},
    "outputs": [
     {
-     "data": {
-      "text/html": [
-       "<style>pre { line-height: 125%; }\n",
-       "td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n",
-       "span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }\n",
-       "td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n",
-       "span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n",
-       ".highlight .hll { background-color: #ffffcc }\n",
-       ".highlight { background: #f8f8f8; }\n",
-       ".highlight .c { color: #3D7B7B; font-style: italic } /* Comment */\n",
-       ".highlight .err { border: 1px solid #FF0000 } /* Error */\n",
-       ".highlight .k { color: #008000; font-weight: bold } /* Keyword */\n",
-       ".highlight .o { color: #666666 } /* Operator */\n",
-       ".highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */\n",
-       ".highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */\n",
-       ".highlight .cp { color: #9C6500 } /* Comment.Preproc */\n",
-       ".highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */\n",
-       ".highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */\n",
-       ".highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n",
-       ".highlight .gd { color: #A00000 } /* Generic.Deleted */\n",
-       ".highlight .ge { font-style: italic } /* Generic.Emph */\n",
-       ".highlight .gr { color: #E40000 } /* Generic.Error */\n",
-       ".highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n",
-       ".highlight .gi { color: #008400 } /* Generic.Inserted */\n",
-       ".highlight .go { color: #717171 } /* Generic.Output */\n",
-       ".highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\n",
-       ".highlight .gs { font-weight: bold } /* Generic.Strong */\n",
-       ".highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\n",
-       ".highlight .gt { color: #0044DD } /* Generic.Traceback */\n",
-       ".highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\n",
-       ".highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\n",
-       ".highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\n",
-       ".highlight .kp { color: #008000 } /* Keyword.Pseudo */\n",
-       ".highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\n",
-       ".highlight .kt { color: #B00040 } /* Keyword.Type */\n",
-       ".highlight .m { color: #666666 } /* Literal.Number */\n",
-       ".highlight .s { color: #BA2121 } /* Literal.String */\n",
-       ".highlight .na { color: #687822 } /* Name.Attribute */\n",
-       ".highlight .nb { color: #008000 } /* Name.Builtin */\n",
-       ".highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */\n",
-       ".highlight .no { color: #880000 } /* Name.Constant */\n",
-       ".highlight .nd { color: #AA22FF } /* Name.Decorator */\n",
-       ".highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */\n",
-       ".highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */\n",
-       ".highlight .nf { color: #0000FF } /* Name.Function */\n",
-       ".highlight .nl { color: #767600 } /* Name.Label */\n",
-       ".highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\n",
-       ".highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */\n",
-       ".highlight .nv { color: #19177C } /* Name.Variable */\n",
-       ".highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\n",
-       ".highlight .w { color: #bbbbbb } /* Text.Whitespace */\n",
-       ".highlight .mb { color: #666666 } /* Literal.Number.Bin */\n",
-       ".highlight .mf { color: #666666 } /* Literal.Number.Float */\n",
-       ".highlight .mh { color: #666666 } /* Literal.Number.Hex */\n",
-       ".highlight .mi { color: #666666 } /* Literal.Number.Integer */\n",
-       ".highlight .mo { color: #666666 } /* Literal.Number.Oct */\n",
-       ".highlight .sa { color: #BA2121 } /* Literal.String.Affix */\n",
-       ".highlight .sb { color: #BA2121 } /* Literal.String.Backtick */\n",
-       ".highlight .sc { color: #BA2121 } /* Literal.String.Char */\n",
-       ".highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */\n",
-       ".highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\n",
-       ".highlight .s2 { color: #BA2121 } /* Literal.String.Double */\n",
-       ".highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */\n",
-       ".highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */\n",
-       ".highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */\n",
-       ".highlight .sx { color: #008000 } /* Literal.String.Other */\n",
-       ".highlight .sr { color: #A45A77 } /* Literal.String.Regex */\n",
-       ".highlight .s1 { color: #BA2121 } /* Literal.String.Single */\n",
-       ".highlight .ss { color: #19177C } /* Literal.String.Symbol */\n",
-       ".highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */\n",
-       ".highlight .fm { color: #0000FF } /* Name.Function.Magic */\n",
-       ".highlight .vc { color: #19177C } /* Name.Variable.Class */\n",
-       ".highlight .vg { color: #19177C } /* Name.Variable.Global */\n",
-       ".highlight .vi { color: #19177C } /* Name.Variable.Instance */\n",
-       ".highlight .vm { color: #19177C } /* Name.Variable.Magic */\n",
-       ".highlight .il { color: #666666 } /* Literal.Number.Integer.Long */</style>"
-      ],
-      "text/plain": [
-       "<IPython.core.display.HTML object>"
-      ]
-     },
-     "metadata": {},
-     "output_type": "display_data"
-    },
-    {
-     "data": {
-      "text/html": [
-       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"nf\">__launch_bounds__</span><span class=\"p\">(</span><span class=\"mi\">256</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_data_I</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst</span><span class=\"p\">)</span>\n",
-       "<span class=\"p\">{</span>\n",
-       "<span class=\"w\">   </span><span class=\"k\">if</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">blockDim</span><span class=\"p\">.</span><span class=\"n\">x</span><span class=\"o\">*</span><span class=\"n\">blockIdx</span><span class=\"p\">.</span><span class=\"n\">x</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">threadIdx</span><span class=\"p\">.</span><span class=\"n\">x</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">202</span><span class=\"w\"> </span><span class=\"o\">&amp;&amp;</span><span class=\"w\"> </span><span class=\"n\">blockDim</span><span class=\"p\">.</span><span class=\"n\">y</span><span class=\"o\">*</span><span class=\"n\">blockIdx</span><span class=\"p\">.</span><span class=\"n\">y</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">threadIdx</span><span class=\"p\">.</span><span class=\"n\">y</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">600</span><span class=\"p\">)</span>\n",
-       "<span class=\"w\">   </span><span class=\"p\">{</span>\n",
-       "<span class=\"w\">      </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">blockDim</span><span class=\"p\">.</span><span class=\"n\">x</span><span class=\"o\">*</span><span class=\"n\">blockIdx</span><span class=\"p\">.</span><span class=\"n\">x</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">threadIdx</span><span class=\"p\">.</span><span class=\"n\">x</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">blockDim</span><span class=\"p\">.</span><span class=\"n\">y</span><span class=\"o\">*</span><span class=\"n\">blockIdx</span><span class=\"p\">.</span><span class=\"n\">y</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">threadIdx</span><span class=\"p\">.</span><span class=\"n\">y</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst_10</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_dst</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_I_11_21</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_I</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">5</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_I_1m1_21</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_I</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">3</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_I_10_21</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_I</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">4</span><span class=\"o\">*</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span>\n",
-       "<span class=\"w\">      </span><span class=\"n\">_data_dst_10</span><span class=\"p\">[</span><span class=\"mi\">601</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">-1.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_11_21</span><span class=\"p\">[</span><span class=\"mi\">2404</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">1.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_11_21</span><span class=\"p\">[</span><span class=\"mi\">2404</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">1.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_1m1_21</span><span class=\"p\">[</span><span class=\"mi\">2404</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mf\">2.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_10_21</span><span class=\"p\">[</span><span class=\"mi\">2404</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2.0</span><span class=\"o\">*</span><span class=\"n\">_data_I_10_21</span><span class=\"p\">[</span><span class=\"mi\">2404</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_I_1m1_21</span><span class=\"p\">[</span><span class=\"mi\">2404</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">2404</span><span class=\"p\">];</span>\n",
-       "<span class=\"w\">   </span><span class=\"p\">}</span><span class=\"w\"> </span>\n",
-       "<span class=\"p\">}</span>\n",
-       "</pre></div>\n"
-      ],
-      "text/plain": [
-       "FUNC_PREFIX __launch_bounds__(256) void kernel(double * RESTRICT const _data_I, double * RESTRICT  _data_dst)\n",
-       "{\n",
-       "   if (blockDim.x*blockIdx.x + threadIdx.x + 1 < 202 && blockDim.y*blockIdx.y + threadIdx.y + 1 < 600)\n",
-       "   {\n",
-       "      const int64_t ctr_0 = blockDim.x*blockIdx.x + threadIdx.x + 1;\n",
-       "      const int64_t ctr_1 = blockDim.y*blockIdx.y + threadIdx.y + 1;\n",
-       "      double * RESTRICT  _data_dst_10 = _data_dst + ctr_1;\n",
-       "      double * RESTRICT _data_I_11_21 = _data_I + 4*ctr_1 + 5;\n",
-       "      double * RESTRICT _data_I_1m1_21 = _data_I + 4*ctr_1 - 3;\n",
-       "      double * RESTRICT _data_I_10_21 = _data_I + 4*ctr_1 + 1;\n",
-       "      _data_dst_10[601*ctr_0] = -1.0*_data_I_11_21[2404*ctr_0 + 2404] - 1.0*_data_I_11_21[2404*ctr_0 - 2404] - 1.0*_data_I_1m1_21[2404*ctr_0 - 2404] - 2.0*_data_I_10_21[2404*ctr_0 - 2404] + 2.0*_data_I_10_21[2404*ctr_0 + 2404] + _data_I_1m1_21[2404*ctr_0 + 2404];\n",
-       "   } \n",
-       "}"
-      ]
-     },
-     "metadata": {},
-     "output_type": "display_data"
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Please install cupy for GPU support\n"
+     ]
     }
    ],
    "source": [
@@ -1746,7 +1486,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.11.0rc1"
+   "version": "3.10.13"
   }
  },
  "nbformat": 4,
diff --git a/docs/source/tutorials/02_tutorial_basic_kernels.ipynb b/docs/source/tutorials/02_tutorial_basic_kernels.ipynb
index eceb7117d1d861c9d904376082d85f0931d521f2..5f5938aa97d9ad110268cd392667ac35a1ff3510 100644
--- a/docs/source/tutorials/02_tutorial_basic_kernels.ipynb
+++ b/docs/source/tutorials/02_tutorial_basic_kernels.ipynb
@@ -46,9 +46,9 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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\n",
+      "image/png": "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",
       "text/latex": [
-       "$\\displaystyle \\left[ grad_{x} \\leftarrow \\frac{{src}_{(1,0)}}{2} - \\frac{{src}_{(-1,0)}}{2}, \\  grad_{y} \\leftarrow \\frac{{src}_{(0,1)}}{2} - \\frac{{src}_{(0,-1)}}{2}, \\  {dst}_{(0,0)} \\leftarrow grad_{x} + grad_{y}\\right]$"
+       "$\\displaystyle \\left[ grad_{x} \\leftarrow_{} \\frac{{src}_{(1,0)}}{2} - \\frac{{src}_{(-1,0)}}{2}, \\  grad_{y} \\leftarrow_{} \\frac{{src}_{(0,1)}}{2} - \\frac{{src}_{(0,-1)}}{2}, \\  {dst}_{(0,0)} \\leftarrow_{} grad_{x} + grad_{y}\\right]$"
       ],
       "text/plain": [
        "⎡         src_E   src_W            src_N   src_S                         ⎤\n",
@@ -88,9 +88,9 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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\n",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxwAAAAnCAYAAACFUk77AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAUlUlEQVR4Ae2d4bXctBLHN/fcApJQwYMO8qACkg4CqSDQQTh8Ct9yoINABUnoAF4FCXQAHSTcDvL+P1/JyFp7Lcmy1/aOzvFKlkcj6T/yeMaSvHeeP3/++HA4vNERhm9/+OGHn8MMS8+LgPD+UTW8d7V8pvg75d1wrviBoic6Hij9SMenSn+ng+t/6fxIVsoL+UH3Tnl/KrYQIRBhZdhH+NjpthGoOb4jXqZXTgyNCCvTKyewskuGgCGwHwSk+16qN99EPbp35TJ+FcGd4DgyYKOCdloRAeH+m9i9UvwTh9I4gDgMPjxRPg7GQTGCxCH81l0M6bj+qY6/dO2tYs/vvzrv0LmyFx8JI8P+4kfBfgGoNb7Fx/RKxjCphTtVGvYZwBupIWAInB0B6Sxs1NanUIOal+fe4Th7Ay+1ATxM1PeHisPZB5yLP8DEXceBINzXAW3jfCh9V0fsHGJA40D+qtiHr5UgvxNE89jx7+TXOhHvZ7V4zcHH9X2X2JfgtXZ5lfTpkstUHt+mVxIHU2XcqXU12CdC0CEzvdKBw04MgYtF4Ppie76yjksp81BhZuN3pR8FzcOpeO3OWVrlZzYOomvTXNc5sx84MC8490H593zax8pjuutvxX8HedSFc4J3yqzIaBCdnzlhOdgnOvfO0EFpZlhe6ui0c5TpwgRq39mxL+my2n2R8irB6pLLTB3fKj9VrwzqiCG5nBrbumZ6JV2nZ2M/JJNT+XuQ16n+2TVDwBCYjsDVdBbGYQoCUtQY/CyjeqiDBzt7MvxD4qD0nzpudHCd4J2P27PuL84CDstNN7t7pusYquwF+d1fURpnBieEaxyjQWWgf6+Y/Sb04TfFGO9heKO8tj/hhXOn1a5VYF+Cg9p+cfIqwemSy1Qc31P0SoqO6IgpcWybXglQE2Z9Oj0b+4BlcnLr8kruqBEaAobAJATM4ZgEX53CUtgY7HfEjZkNnIBn7gESVvCVTpiRuAkzfdrR89CJDX5PEsY4ADg3bVB5HBuchnbGo704nIBP6LSQZokSsyxNUNrnJTkxvtxSsdp3duxL+qp2X6S8SrC65DJTx7fKc98W6xWVHdURsXxSxrZoTK90gTvS6SXYd1mmne1BXmk9NSpDwBCYgoA5HFPQm1hWivpHHX5/xkHpeDlVWAMzHOG+jPAaZW9cho/j636GhHycgtZR6BAmnqg8TgWGSOygUD9v38PQGAdhxrnTav9msS/BbuvyKunzJZepNb7Fx+sTH3dg1fVBvZI55jp8E09Mr/wLVEenL4D9vzWnp1Ynr/SmG6UhYAhMRcAcjqkITivPwzqeaeAzxT8HD/qDe3hg4I/NXrCBnJmQTlB53n59INPx6jUeOoXGT+4OkFDP/ejaW52H+1Kiy2c53TL2JYBtXV4lfb7kMjXHd6leyRlzJbIyvSLUBnT63NjvRV4l/bAyhoAhUIDAdUEZK1IPgadixZspv3cCzuzXiDdZ42ywnOrkrATldPDmHgfDz5zw4HmhvBvFBHg1zkdzVv8HZyN+2FE39a4p7BH7Eny3Iq+Svl1ymWrjewa90jfmSmRleuUWtRydXgv7vcirpB9WxhAwBAoQMIejALRaRfQg51O4HCeD6HA0+OOo0SDa9itRA8Q4Azyop4YhHvCPl1nN6eAU9WNN2KstD9QJnMSxgEMZYztWxl/ftLx8JyxOQ6D2+Ba/Er2SM+bSOtalMr1yiwc6N8Y6PvfIQTuoQ2bWRauTlwfFYkPAEJgfgc05HE4h/iJoeKvzWufxbMD8qG27Bh42PHQmBeHuN7Ajh9hpis+hGXzITWrItgr3Yi8swWvWJWcmr/GBIoxw/Ey3jEPVR3E0tjPHXB/PsTzTK7cIVcN+Zl10NnnZvT12K+37usm/XL41sbsqb8Z5SqIQdfAfERjNY3saztPIFdcKfmoeij8rqNxdHfFbeP7vg7XiTdB10vzpYOxcUJ9f4nVLfIG/wqUI+xKoVJfJKxM45KPDdEsmbpCDnaI+vXJSR6hc3zhNbYHplfNhnyqjkO5s8mJ86ph0b7uxymfr+8Z52E9LrwyBGvJfWZcWa05N7K4Wa3XFigSAN3JP7mmoWOXeWDE70VGanOvAofheR5PWefhP4dB/ozw2tTdBaT6jy5/9sW8EWjass3Y8Dry9H/zCVky88/Mj7Ev6K7xNXiXAjZQRrqZbRjA6cflobAvPMR3Rp1fGxrZvgukVj8TtHr9Yp2dj/y+79FSCLvLMziqvCvc2ugGMP/gOWbwdBCrIf7Sz1KGDPbm7CrWwu94oKiguv6SnehfcgHmnmLd2eww4FixFa9dlq6/MSrTncacdFvcUtw4HNDofLOOuN8u3RBfPesRVXMr5EfYlHXd4DmKv64xdk1c+uKZb8jHzJXrH9ikd0TdOx8Y2lYnG9IpH/Taugn2XZdrZhuQ19d6eWj4N0JmpJC8M4j3bN0MILiE/9FKjm4YasdH8KthdbbTzvGmYc3YDY3y3BrIUDtixlKHzRmxsLIi+BHf/IBxjfxHXS7EvAcfkVYLaoWSM51S0W91SOrZtnOYMn37ahbHvb8Tp3DU8B6be25Tfw0z9bnXQ6SE4u24fqX7Tl6feO03nr1MhkELjzfYXOt67Mtx4TB/xnxFstnyi44HSj3RgyPL29UYHax75jnsb3HUUEEY9/OD1WPlMAXdCDy3GMvW96BBWOlF9ADvb7EmlZk5mo376T+iGn8wd48tSh2RHT7S8SXmjeLfO2xhgfdcLse9jNZa3CXkJD9MtY5LcyPXCsb2Jcbp2ESyBfQkGatfizwHViQ0S2hgn7QbRQ+ttG74I+Z3ybnRgD2Cg89Yantg4bxS/VXxkryh/1cH1ZzH7RvUN6naA0vVk21G0sUxXYzfWFnpN3BzOq8DuKgUodZ6b8XvF3ITcZAj6Dx3+T+aecE3nB8X8kR3GLDcpgbJtUD43MGXh5flRhn0AnamoAVrPL9nwbSsfSbj64f90hHQXl8E/pyOi7ziOCWX5ilh1OSXUu3qSXOxLOrQFeamNpltKhLviMrljewvjdMVwd5q2APad+hJPFn0OCIM+G2PQbhA9H595pfgnDqVxKBp6nf+uAzun+YNepXmh+pWOLTob2FeL2TfCaEy3qzmHJNtRvPpkugq7kU7UDDVxo11rwm7U4VBj8VDZEPwljScojzfWDN7flMZz8l8guq/0Q+V5Qxaa1khVPufczDga4Vtv0h2ve4SWL07cqEy1IH542v/T8bQ272qNnIHRnH2dk/cMUCzOcm34LN0e1We6ZfFRt0yFc46lOXkvg868tawNnyXbo7pO2RhHdoPosV+wWcL9mtgvvBQNA2vYQ5rwWpMWD1ZpwG+WIN7hR1yy6lDZRe0bsFADB+1GGi8asBq1HUV3SqZntRvpR81QEzfatTbsrhPA4rv0fOq0NfCVZvASmOlgMLzmRIF8P7NBZ9t0c/XWu2bvQOuEuHy8V3iFAe84lTYsl51We6iLm4M+sgRIUVHAkYr7UcTICrU3C04gYyw18Pbp5IMhlZHRzY6A6ZZ0iE23pGN1klL6AX1ieuUkSpu9WGQ3aEwwy8HLUGY0cC7i0GejtDQqw7IxjN/2RarStIXAUi2+5uhfxDaZfT+nyugaMzAvdcR2VR+rNs/xXNq+GdPttC/VdsyRaQ5ti1FuAjmoDGMiDvfJGJARDq9fFRSX8+c1cYNnDh45tL69WfH1KWqBgwPBoHgV0QE06xvDm8uD752PqEhz+rV+O0tsxAP+eLrc8GHIoQ3LZafVBh7meNrcyF8qfZPNJLOA6viYWWR35MLgzqlOOTnw7fSqwbAvg3NMXjlcxct0Sw5gGbQ2vpsH/qBuET7od9MrGWNqTtKaekXtzLIbVDdOAsujMMgbG4ZzHa1zoPSQjdLA4q43S62aDP0oDwfkveJm6ZXihzpYEdLnzHg+KWV4Icry87Z9vs6hGFodi9k3qitJt4uueTGoeMx2zJFpDu0QZKP5anOv06d8ZnbYk9bIfZRRQKAytXGDew4eObRBy9OT1yOkn7vr8RtjbpqO46BzPLfO9JYr20QCk5uWo8+xOOh6yy+HNqxjSlp1svn9nXjw5qv6wyhum+oafCDGtHZeFwHDvi6ehdxMtxQCN1bMxvcYQvNcN9znwTWVq/BPtjFCniqH8Y5RjuFL+pnS4cdUvCPSsVFEc+P48Ga42ePhzonIC5ehM3PSLEFX3L6oDeiTyqgsfJr9rop9/RGb41PRLmnf5Oh2GjtoO6rdyTLNoT1GaBU51XCjNzl45NBOQWrM4Wh4qzHtDeIaxg0Ye3jkpSwnanm5hrdrI8X7sfJwbj64a6O0vm2Kn7kyfGGCmx1eTdrTuOuDkeiY8mLKMusNwiBDu2AI7BgB3ScseUx+6PVBofLtPQ4/0axKt6hNtIc3T18o3U6HK82bxva8r29hnmhNt4SAWNoQGEBA98pUvdLqFFfFkY2hOng52tgJirETDopxKDDo49UHbXlHh21BHf5FLLMXrT2kNCs20GVxO9CV6JI4/5BZhnam2lsivQ2qY1EdpPrafio9pNtpXEpfWl6uO61MxPusdqNrT7WoMm60qzp2amPRc/FqBKVmeZSYcwP5wBozQnONhLsOTTx7weUmiIabjRul5aU8Bgo3IDMLBKYl/SxJEi2FVAZng30mTGPd14HTQPpzHfBPDirH/hLaZcEQMAQGENB9wgPkH8Xx5sqBEkfZq9ctro98BhNdwoZQ+nxQjE5B4WYFlTPdkoWYEV8aAu4eK9IrKptsYzhcuYc7MxPiwbOf2QB4+YBN0Rhtrn0smWmcDcXYMyEtZRo9QSIKvEiFV1/IKfNWDDC4s4Pau4QOStLtNN7hN2g76jrYJtmCObSu7mp2I/wqhGq40ZYcPDJpGatFz8XrUyDRCB0MbN74M8g/0cFN450CJZvAgCGPgXEq8EbwF9EhaHi90uH5kxfe/Dm04X4SwPCOD1+c8m8hlJ0ccF4eJvQnmaERGgJ7QkD3hr/neBvJwYMhObjy/t5fq27BOMD4wAgJdR6Gin9JktxnR2i6JRcxo78YBJxewLgv0isql2M3PBU9z3n2TmA3ENBr7WzFbVazzIqXmNAdFPMCwgdsH2yilIA+8fWk0EPTVwZdS72lYVYdJHzAMEW30376MWY75sg0h5Z2+rf/yGWq3Uh/isMMuNGWHDxSaYufi3eeP3/Ow/SJOktlo0F0vNF8pzi+KUfLLkGgdjEd+pliP5CWqNbqMAQuEgHdZ+gPliHwEJwUxGOVukXt4us1PBSbjZrufJN//DVJQFbYEFgIAd1j1fTKnE127ezYT8rDiGaT9j2lW72oNLYJX1E8WnqeU0a0D8SHl8AY9ZsIausqdbsHT+2rYjeKD+O2aNO4b0sYrxk3tS35uSjaf9Sv/wzOcIiAQf29DmYJmpvG5ZHPm4HVBde+1mvVOYI3x8NJCjyU9F+3+Fxp3sywWa5kFshxtWgKAjuQCXsbjh6gpzAR/dZ0C+0NZ1+Z4Xhxqo+Xdm0H43h3Itu4TLL1ypkE2MzGhHULdz8byvM2frbG503RzDLNrEBY51rS6sfWdPvBtbmW3Yit3DqZqXLZIm7qW/Zz8eoEIDgbPFibIEDuKsH+jVUZqGoXTgXeE+GJjtDB8MZ1c/GSf8BJ/W++4a00/wTPl7hQfn8o3cr5kjFauu9bl4naj054X4DbJnRL1K8PnLt75a7iXsMhKnMRp8LCdMvKJL1lmajtpXplcSk4PcD4jwMvJNrnquhIs5SpsU/oow42rYfhZJmAkPqYQVlj2IRuF/az2I3iy2x//D9zKXLaBG49Hcl6Ll71MPBZL5VgT8Y37sbg5sDZCNcvetqzxWoPN/BrxewBYQ0eAuezdpybwyEQXEB+nWVwwgh88MaZGrOwPAJblwm6oUQfbEK3BMOB+wQnnTXcpM3ZCMBRcuvjuNubfZxtWSaleuVckmNGo+N0OL3In/2x9AlbhCXr4coQ6OknS3CakFDGk7KUKmtW2RdcIN6EbhfWa7MbN4FbNH6yn4vZeziiCu10IwjoBmMWiDdH8bpSnA2Unu17EQhLBpPJkmiX1SUZcc/cdw+og2JeavBJ3JK3WGWNWHkpYWG6ZWUyMpksJxBhzewFX9jEAMsKKsPX75KdB9Gij9A/m9m/kQWIEW8CATcOk5+Lom/2cJya4dhEx62RyQgwW+XXlvYVQpFZWBYBk8myeJfUxjLS5i2klCaGBUrWnI0ukjaOu3is4cxkspAUpA/AmiVSnVmOseqdPqFsTjiaucopbLSGQCUEip6L15UqNzYrR0DKbegrZGz8Oei6LRNZWIYmk4UBL6uOqW7W+7IsgiUS7H2yECBg4zgAYyVJk8myghDeLLlk+VT4D+VjjUCvJDscomVJJ7Mb4T7VsTrsuiEwBwJFz0VzOOYQxUZ4SnHhbPBWJnsqeCNd3FwzTSbrEpnkkWwQrKvl522NjePz4t9Xu8mkD5V6ecKXPa7JKwVEmztTyl7Vm3otNk6GQBkCGodFz0VbUlWG915KsX+DL2eUbPzdCwZr64fJZG0SsfaUIGDjuAS1ecuYTObF9zCnQzAn75lhMfaGQIOAORwXOhCkvJgSY0/H0FKrC0XmfN02mZwPe6u5HgI2juthWYuTyaQWksbHEDAEShEwh6MUuQ2X08OHtaBsfrUvXaxEjiaTlQjCmjEJARvHk+CbpbDJZBZYjakhYAhkImAORyZgWyfXw8d/Ared2VAem9c+3Xrfttp+k8lWJWftDhGwcRyisY60yWQdcrBWGAKGwOHgN43zLeiPASB8cSF3Q1NQ3JJrREAyZZP4F4rjTeI4ISbvMwjNZHIG0K3K6gjYOK4O6WSGJpPJEBoDQ8AQKEBAuocl+6yk6YQ7Hz+Gfkbnmp3sCAENAGYwmn9i7+nWQ13/rCffsmZEwGQyI7jGejEEbBwvBnVyRSaTZKiM0BAwBBZCwM9wLFSdVXNGBHA2cDqOvE7l2X9wnEcwJpPz4G611kXAxnFdPGtwM5nUQNF4GAKGQDUE/g9m0CnDBZzhDQAAAABJRU5ErkJggg==",
       "text/latex": [
-       "$\\displaystyle \\left[ grad_{x} \\leftarrow \\frac{{src}_{(1,0)}}{2} - \\frac{{src}_{(-1,0)}}{2}, \\  grad_{y} \\leftarrow \\frac{{src}_{(0,1)}}{2} - \\frac{{src}_{(0,-1)}}{2}, \\  {dst}_{(0,0)} \\leftarrow grad_{x} + grad_{y}\\right]$"
+       "$\\displaystyle \\left[ grad_{x} \\leftarrow_{} \\frac{{src}_{(1,0)}}{2} - \\frac{{src}_{(-1,0)}}{2}, \\  grad_{y} \\leftarrow_{} \\frac{{src}_{(0,1)}}{2} - \\frac{{src}_{(0,-1)}}{2}, \\  {dst}_{(0,0)} \\leftarrow_{} grad_{x} + grad_{y}\\right]$"
       ],
       "text/plain": [
        "⎡         src_E   src_W            src_N   src_S                         ⎤\n",
@@ -130,7 +130,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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\n",
+      "image/png": "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",
       "text/latex": [
        "$\\displaystyle {src}_{(1,0)} + \\begin{cases} 1.0 & \\text{for}\\: {src}_{(0,1)} > 0 \\\\0.0 & \\text{otherwise} \\end{cases}$"
       ],
@@ -163,9 +163,9 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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\n",
+      "image/png": "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",
       "text/latex": [
-       "$\\displaystyle \\left[ grad_{x} \\leftarrow \\begin{cases} \\frac{{src}_{(1,0)}}{2} - \\frac{{src}_{(-1,0)}}{2} & \\text{for}\\: {src}_{(-1,0)} > 0 \\\\0.0 & \\text{otherwise} \\end{cases}\\right]$"
+       "$\\displaystyle \\left[ grad_{x} \\leftarrow_{} \\begin{cases} \\frac{{src}_{(1,0)}}{2} - \\frac{{src}_{(-1,0)}}{2} & \\text{for}\\: {src}_{(-1,0)} > 0 \\\\0.0 & \\text{otherwise} \\end{cases}\\right]$"
       ],
       "text/plain": [
        "⎡         ⎧src_E   src_W               ⎤\n",
@@ -204,10 +204,10 @@
     {
      "data": {
       "text/html": [
-       "<div>Subexpressions:</div><table style=\"border:none; width: 100%; \"><tr style=\"border:none\"> <td style=\"border:none\">$$a \\leftarrow {src}_{(0,1)} + {src}_{(-1,0)}$$</td>  </tr> <tr style=\"border:none\"> <td style=\"border:none\">$$b \\leftarrow 2 {src}_{(1,0)} + {src}_{(0,-1)}$$</td>  </tr> <tr style=\"border:none\"> <td style=\"border:none\">$$c \\leftarrow - {src}_{(0,0)} + 2 {src}_{(1,0)} + {src}_{(0,1)} + {src}_{(0,-1)} + {src}_{(-1,0)}$$</td>  </tr> </table><div>Main Assignments:</div><table style=\"border:none; width: 100%; \"><tr style=\"border:none\"> <td style=\"border:none\">$${dst}_{(0,0)} \\leftarrow a + b + c$$</td>  </tr> </table>"
+       "<div>Subexpressions:</div><table style=\"border:none; width: 100%; \"><tr style=\"border:none\"> <td style=\"border:none\">$$a \\leftarrow_{} {src}_{(0,1)} + {src}_{(-1,0)}$$</td>  </tr> <tr style=\"border:none\"> <td style=\"border:none\">$$b \\leftarrow_{} 2 {src}_{(1,0)} + {src}_{(0,-1)}$$</td>  </tr> <tr style=\"border:none\"> <td style=\"border:none\">$$c \\leftarrow_{} - {src}_{(0,0)} + 2 {src}_{(1,0)} + {src}_{(0,1)} + {src}_{(0,-1)} + {src}_{(-1,0)}$$</td>  </tr> </table><div>Main Assignments:</div><table style=\"border:none; width: 100%; \"><tr style=\"border:none\"> <td style=\"border:none\">$${dst}_{(0,0)} \\leftarrow_{} a + b + c$$</td>  </tr> </table>"
       ],
       "text/plain": [
-       "AssignmentCollection: dst_C, <- f(src_N, src_E, src_W, src_C, src_S)"
+       "AssignmentCollection: dst_C, <- f(src_S, src_C, src_W, src_N, src_E)"
       ]
      },
      "execution_count": 7,
@@ -271,10 +271,10 @@
     {
      "data": {
       "text/html": [
-       "<div>Subexpressions:</div><table style=\"border:none; width: 100%; \"><tr style=\"border:none\"> <td style=\"border:none\">$$a \\leftarrow {src}_{(0,1)} + {src}_{(-1,0)}$$</td>  </tr> <tr style=\"border:none\"> <td style=\"border:none\">$$b \\leftarrow 2 {src}_{(1,0)} + {src}_{(0,-1)}$$</td>  </tr> <tr style=\"border:none\"> <td style=\"border:none\">$$c \\leftarrow - {src}_{(0,0)} + a + b$$</td>  </tr> </table><div>Main Assignments:</div><table style=\"border:none; width: 100%; \"><tr style=\"border:none\"> <td style=\"border:none\">$${dst}_{(0,0)} \\leftarrow a + b + c$$</td>  </tr> </table>"
+       "<div>Subexpressions:</div><table style=\"border:none; width: 100%; \"><tr style=\"border:none\"> <td style=\"border:none\">$$a \\leftarrow_{} {src}_{(0,1)} + {src}_{(-1,0)}$$</td>  </tr> <tr style=\"border:none\"> <td style=\"border:none\">$$b \\leftarrow_{} 2 {src}_{(1,0)} + {src}_{(0,-1)}$$</td>  </tr> <tr style=\"border:none\"> <td style=\"border:none\">$$c \\leftarrow_{} - {src}_{(0,0)} + a + b$$</td>  </tr> </table><div>Main Assignments:</div><table style=\"border:none; width: 100%; \"><tr style=\"border:none\"> <td style=\"border:none\">$${dst}_{(0,0)} \\leftarrow_{} a + b + c$$</td>  </tr> </table>"
       ],
       "text/plain": [
-       "AssignmentCollection: dst_C, <- f(src_N, src_E, src_W, src_C, src_S)"
+       "AssignmentCollection: dst_C, <- f(src_S, src_C, src_W, src_N, src_E)"
       ]
      },
      "execution_count": 9,
@@ -289,28 +289,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 10,
+   "execution_count": 1,
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "{'adds': 6,\n",
-       " 'muls': 1,\n",
-       " 'divs': 0,\n",
-       " 'sqrts': 0,\n",
-       " 'fast_sqrts': 0,\n",
-       " 'fast_inv_sqrts': 0,\n",
-       " 'fast_div': 0}"
-      ]
-     },
-     "execution_count": 10,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
-    "opt_ac.operation_count"
+    "# FIXME currently unavailable\n",
+    "# opt_ac.operation_count"
    ]
   },
   {
@@ -337,22 +321,23 @@
        "span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n",
        ".highlight .hll { background-color: #ffffcc }\n",
        ".highlight { background: #f8f8f8; }\n",
-       ".highlight .c { color: #408080; font-style: italic } /* Comment */\n",
+       ".highlight .c { color: #3D7B7B; font-style: italic } /* Comment */\n",
        ".highlight .err { border: 1px solid #FF0000 } /* Error */\n",
        ".highlight .k { color: #008000; font-weight: bold } /* Keyword */\n",
        ".highlight .o { color: #666666 } /* Operator */\n",
-       ".highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\n",
-       ".highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */\n",
-       ".highlight .cp { color: #BC7A00 } /* Comment.Preproc */\n",
-       ".highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\n",
-       ".highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */\n",
-       ".highlight .cs { color: #408080; font-style: italic } /* Comment.Special */\n",
+       ".highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */\n",
+       ".highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */\n",
+       ".highlight .cp { color: #9C6500 } /* Comment.Preproc */\n",
+       ".highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */\n",
+       ".highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */\n",
+       ".highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n",
        ".highlight .gd { color: #A00000 } /* Generic.Deleted */\n",
        ".highlight .ge { font-style: italic } /* Generic.Emph */\n",
-       ".highlight .gr { color: #FF0000 } /* Generic.Error */\n",
+       ".highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\n",
+       ".highlight .gr { color: #E40000 } /* Generic.Error */\n",
        ".highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n",
-       ".highlight .gi { color: #00A000 } /* Generic.Inserted */\n",
-       ".highlight .go { color: #888888 } /* Generic.Output */\n",
+       ".highlight .gi { color: #008400 } /* Generic.Inserted */\n",
+       ".highlight .go { color: #717171 } /* Generic.Output */\n",
        ".highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\n",
        ".highlight .gs { font-weight: bold } /* Generic.Strong */\n",
        ".highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\n",
@@ -365,15 +350,15 @@
        ".highlight .kt { color: #B00040 } /* Keyword.Type */\n",
        ".highlight .m { color: #666666 } /* Literal.Number */\n",
        ".highlight .s { color: #BA2121 } /* Literal.String */\n",
-       ".highlight .na { color: #7D9029 } /* Name.Attribute */\n",
+       ".highlight .na { color: #687822 } /* Name.Attribute */\n",
        ".highlight .nb { color: #008000 } /* Name.Builtin */\n",
        ".highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */\n",
        ".highlight .no { color: #880000 } /* Name.Constant */\n",
        ".highlight .nd { color: #AA22FF } /* Name.Decorator */\n",
-       ".highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */\n",
-       ".highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\n",
+       ".highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */\n",
+       ".highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */\n",
        ".highlight .nf { color: #0000FF } /* Name.Function */\n",
-       ".highlight .nl { color: #A0A000 } /* Name.Label */\n",
+       ".highlight .nl { color: #767600 } /* Name.Label */\n",
        ".highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\n",
        ".highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */\n",
        ".highlight .nv { color: #19177C } /* Name.Variable */\n",
@@ -390,11 +375,11 @@
        ".highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */\n",
        ".highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\n",
        ".highlight .s2 { color: #BA2121 } /* Literal.String.Double */\n",
-       ".highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\n",
+       ".highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */\n",
        ".highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */\n",
-       ".highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\n",
+       ".highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */\n",
        ".highlight .sx { color: #008000 } /* Literal.String.Other */\n",
-       ".highlight .sr { color: #BB6688 } /* Literal.String.Regex */\n",
+       ".highlight .sr { color: #A45A77 } /* Literal.String.Regex */\n",
        ".highlight .s1 { color: #BA2121 } /* Literal.String.Single */\n",
        ".highlight .ss { color: #19177C } /* Literal.String.Symbol */\n",
        ".highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */\n",
@@ -415,34 +400,32 @@
     {
      "data": {
       "text/html": [
-       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">2</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">18</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst_00</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_dst</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_src_02</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">60</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_src_0m1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">2</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">28</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">         </span><span class=\"n\">_data_dst_00</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src_02</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_src_0m1</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">];</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"p\">}</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"p\">}</span><span class=\"w\"></span>\n",
-       "<span class=\"p\">}</span><span class=\"w\"></span>\n",
+       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">dst_data</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">src_data</span><span class=\"p\">)</span>\n",
+       "<span class=\"p\">{</span>\n",
+       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mf\">18L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">   </span><span class=\"p\">{</span>\n",
+       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mf\">28L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">      </span><span class=\"p\">{</span>\n",
+       "<span class=\"w\">         </span><span class=\"n\">dst_data</span><span class=\"p\">[</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">src_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">src_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">];</span>\n",
+       "<span class=\"w\">      </span><span class=\"p\">}</span>\n",
+       "\n",
+       "<span class=\"w\">   </span><span class=\"p\">}</span>\n",
+       "\n",
+       "<span class=\"p\">}</span>\n",
        "</pre></div>\n"
       ],
       "text/plain": [
-       "FUNC_PREFIX void kernel(double * RESTRICT  _data_dst, double * RESTRICT const _data_src)\n",
+       "FUNC_PREFIX void kernel (double * const  dst_data, double * const  src_data)\n",
        "{\n",
-       "   for (int64_t ctr_0 = 2; ctr_0 < 18; ctr_0 += 1)\n",
+       "   for(int64_t ctr_0 = 2LL; ctr_0 < 18LL; ctr_0 += 1LL)\n",
        "   {\n",
-       "      double * RESTRICT  _data_dst_00 = _data_dst + 30*ctr_0;\n",
-       "      double * RESTRICT _data_src_02 = _data_src + 30*ctr_0 + 60;\n",
-       "      double * RESTRICT _data_src_0m1 = _data_src + 30*ctr_0 - 30;\n",
-       "      for (int64_t ctr_1 = 2; ctr_1 < 28; ctr_1 += 1)\n",
+       "      for(int64_t ctr_1 = 2LL; ctr_1 < 28LL; ctr_1 += 1LL)\n",
        "      {\n",
-       "         _data_dst_00[ctr_1] = _data_src_02[ctr_1] + _data_src_0m1[ctr_1];\n",
+       "         dst_data[ctr_0 * 30LL + ctr_1] = src_data[(ctr_0 + 2LL) * 30LL + ctr_1] + src_data[(ctr_0 + -1LL) * 30LL + ctr_1];\n",
        "      }\n",
+       "\n",
        "   }\n",
+       "\n",
        "}"
       ]
      },
@@ -478,22 +461,23 @@
        "span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n",
        ".highlight .hll { background-color: #ffffcc }\n",
        ".highlight { background: #f8f8f8; }\n",
-       ".highlight .c { color: #408080; font-style: italic } /* Comment */\n",
+       ".highlight .c { color: #3D7B7B; font-style: italic } /* Comment */\n",
        ".highlight .err { border: 1px solid #FF0000 } /* Error */\n",
        ".highlight .k { color: #008000; font-weight: bold } /* Keyword */\n",
        ".highlight .o { color: #666666 } /* Operator */\n",
-       ".highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\n",
-       ".highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */\n",
-       ".highlight .cp { color: #BC7A00 } /* Comment.Preproc */\n",
-       ".highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\n",
-       ".highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */\n",
-       ".highlight .cs { color: #408080; font-style: italic } /* Comment.Special */\n",
+       ".highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */\n",
+       ".highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */\n",
+       ".highlight .cp { color: #9C6500 } /* Comment.Preproc */\n",
+       ".highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */\n",
+       ".highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */\n",
+       ".highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n",
        ".highlight .gd { color: #A00000 } /* Generic.Deleted */\n",
        ".highlight .ge { font-style: italic } /* Generic.Emph */\n",
-       ".highlight .gr { color: #FF0000 } /* Generic.Error */\n",
+       ".highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\n",
+       ".highlight .gr { color: #E40000 } /* Generic.Error */\n",
        ".highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n",
-       ".highlight .gi { color: #00A000 } /* Generic.Inserted */\n",
-       ".highlight .go { color: #888888 } /* Generic.Output */\n",
+       ".highlight .gi { color: #008400 } /* Generic.Inserted */\n",
+       ".highlight .go { color: #717171 } /* Generic.Output */\n",
        ".highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\n",
        ".highlight .gs { font-weight: bold } /* Generic.Strong */\n",
        ".highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\n",
@@ -506,15 +490,15 @@
        ".highlight .kt { color: #B00040 } /* Keyword.Type */\n",
        ".highlight .m { color: #666666 } /* Literal.Number */\n",
        ".highlight .s { color: #BA2121 } /* Literal.String */\n",
-       ".highlight .na { color: #7D9029 } /* Name.Attribute */\n",
+       ".highlight .na { color: #687822 } /* Name.Attribute */\n",
        ".highlight .nb { color: #008000 } /* Name.Builtin */\n",
        ".highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */\n",
        ".highlight .no { color: #880000 } /* Name.Constant */\n",
        ".highlight .nd { color: #AA22FF } /* Name.Decorator */\n",
-       ".highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */\n",
-       ".highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\n",
+       ".highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */\n",
+       ".highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */\n",
        ".highlight .nf { color: #0000FF } /* Name.Function */\n",
-       ".highlight .nl { color: #A0A000 } /* Name.Label */\n",
+       ".highlight .nl { color: #767600 } /* Name.Label */\n",
        ".highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\n",
        ".highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */\n",
        ".highlight .nv { color: #19177C } /* Name.Variable */\n",
@@ -531,11 +515,11 @@
        ".highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */\n",
        ".highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\n",
        ".highlight .s2 { color: #BA2121 } /* Literal.String.Double */\n",
-       ".highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\n",
+       ".highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */\n",
        ".highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */\n",
-       ".highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\n",
+       ".highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */\n",
        ".highlight .sx { color: #008000 } /* Literal.String.Other */\n",
-       ".highlight .sr { color: #BB6688 } /* Literal.String.Regex */\n",
+       ".highlight .sr { color: #A45A77 } /* Literal.String.Regex */\n",
        ".highlight .s1 { color: #BA2121 } /* Literal.String.Single */\n",
        ".highlight .ss { color: #19177C } /* Literal.String.Symbol */\n",
        ".highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */\n",
@@ -556,34 +540,32 @@
     {
      "data": {
       "text/html": [
-       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">0</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">18</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst_00</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_dst</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_src_02</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">60</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_src_0m1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">-</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">         </span><span class=\"n\">_data_dst_00</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src_02</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_src_0m1</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">];</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"p\">}</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"p\">}</span><span class=\"w\"></span>\n",
-       "<span class=\"p\">}</span><span class=\"w\"></span>\n",
+       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">dst_data</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">src_data</span><span class=\"p\">)</span>\n",
+       "<span class=\"p\">{</span>\n",
+       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">0L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mf\">18L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">   </span><span class=\"p\">{</span>\n",
+       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">      </span><span class=\"p\">{</span>\n",
+       "<span class=\"w\">         </span><span class=\"n\">dst_data</span><span class=\"p\">[</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">src_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">2L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">src_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">-1LL</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">];</span>\n",
+       "<span class=\"w\">      </span><span class=\"p\">}</span>\n",
+       "\n",
+       "<span class=\"w\">   </span><span class=\"p\">}</span>\n",
+       "\n",
+       "<span class=\"p\">}</span>\n",
        "</pre></div>\n"
       ],
       "text/plain": [
-       "FUNC_PREFIX void kernel(double * RESTRICT  _data_dst, double * RESTRICT const _data_src)\n",
+       "FUNC_PREFIX void kernel (double * const  dst_data, double * const  src_data)\n",
        "{\n",
-       "   for (int64_t ctr_0 = 0; ctr_0 < 18; ctr_0 += 1)\n",
+       "   for(int64_t ctr_0 = 0LL; ctr_0 < 18LL; ctr_0 += 1LL)\n",
        "   {\n",
-       "      double * RESTRICT  _data_dst_00 = _data_dst + 30*ctr_0;\n",
-       "      double * RESTRICT _data_src_02 = _data_src + 30*ctr_0 + 60;\n",
-       "      double * RESTRICT _data_src_0m1 = _data_src + 30*ctr_0 - 30;\n",
-       "      for (int64_t ctr_1 = 1; ctr_1 < 30; ctr_1 += 1)\n",
+       "      for(int64_t ctr_1 = 1LL; ctr_1 < 30LL; ctr_1 += 1LL)\n",
        "      {\n",
-       "         _data_dst_00[ctr_1] = _data_src_02[ctr_1] + _data_src_0m1[ctr_1];\n",
+       "         dst_data[ctr_0 * 30LL + ctr_1] = src_data[(ctr_0 + 2LL) * 30LL + ctr_1] + src_data[(ctr_0 + -1LL) * 30LL + ctr_1];\n",
        "      }\n",
+       "\n",
        "   }\n",
+       "\n",
        "}"
       ]
      },
@@ -631,7 +613,7 @@
     "try:\n",
     "    invalid_kernel = ps.create_kernel(invalid_description)\n",
     "    assert False, \"Should never be executed\"\n",
-    "except ValueError as e:\n",
+    "except ps.KernelConstraintsError as e:\n",
     "    print(e)"
    ]
   },
@@ -708,7 +690,7 @@
     "try:\n",
     "    ps.create_kernel(not_allowed)\n",
     "    assert False\n",
-    "except ValueError as e:\n",
+    "except ps.KernelConstraintsError as e:\n",
     "    print(e)"
    ]
   },
@@ -741,7 +723,7 @@
     "try:\n",
     "    ps.create_kernel(not_allowed)\n",
     "    assert False\n",
-    "except ValueError as e:\n",
+    "except ps.KernelConstraintsError as e:\n",
     "    print(e)"
    ]
   },
@@ -767,22 +749,23 @@
        "span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\n",
        ".highlight .hll { background-color: #ffffcc }\n",
        ".highlight { background: #f8f8f8; }\n",
-       ".highlight .c { color: #408080; font-style: italic } /* Comment */\n",
+       ".highlight .c { color: #3D7B7B; font-style: italic } /* Comment */\n",
        ".highlight .err { border: 1px solid #FF0000 } /* Error */\n",
        ".highlight .k { color: #008000; font-weight: bold } /* Keyword */\n",
        ".highlight .o { color: #666666 } /* Operator */\n",
-       ".highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\n",
-       ".highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */\n",
-       ".highlight .cp { color: #BC7A00 } /* Comment.Preproc */\n",
-       ".highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\n",
-       ".highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */\n",
-       ".highlight .cs { color: #408080; font-style: italic } /* Comment.Special */\n",
+       ".highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */\n",
+       ".highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */\n",
+       ".highlight .cp { color: #9C6500 } /* Comment.Preproc */\n",
+       ".highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */\n",
+       ".highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */\n",
+       ".highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */\n",
        ".highlight .gd { color: #A00000 } /* Generic.Deleted */\n",
        ".highlight .ge { font-style: italic } /* Generic.Emph */\n",
-       ".highlight .gr { color: #FF0000 } /* Generic.Error */\n",
+       ".highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\n",
+       ".highlight .gr { color: #E40000 } /* Generic.Error */\n",
        ".highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */\n",
-       ".highlight .gi { color: #00A000 } /* Generic.Inserted */\n",
-       ".highlight .go { color: #888888 } /* Generic.Output */\n",
+       ".highlight .gi { color: #008400 } /* Generic.Inserted */\n",
+       ".highlight .go { color: #717171 } /* Generic.Output */\n",
        ".highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\n",
        ".highlight .gs { font-weight: bold } /* Generic.Strong */\n",
        ".highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\n",
@@ -795,15 +778,15 @@
        ".highlight .kt { color: #B00040 } /* Keyword.Type */\n",
        ".highlight .m { color: #666666 } /* Literal.Number */\n",
        ".highlight .s { color: #BA2121 } /* Literal.String */\n",
-       ".highlight .na { color: #7D9029 } /* Name.Attribute */\n",
+       ".highlight .na { color: #687822 } /* Name.Attribute */\n",
        ".highlight .nb { color: #008000 } /* Name.Builtin */\n",
        ".highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */\n",
        ".highlight .no { color: #880000 } /* Name.Constant */\n",
        ".highlight .nd { color: #AA22FF } /* Name.Decorator */\n",
-       ".highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */\n",
-       ".highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\n",
+       ".highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */\n",
+       ".highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */\n",
        ".highlight .nf { color: #0000FF } /* Name.Function */\n",
-       ".highlight .nl { color: #A0A000 } /* Name.Label */\n",
+       ".highlight .nl { color: #767600 } /* Name.Label */\n",
        ".highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\n",
        ".highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */\n",
        ".highlight .nv { color: #19177C } /* Name.Variable */\n",
@@ -820,11 +803,11 @@
        ".highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */\n",
        ".highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\n",
        ".highlight .s2 { color: #BA2121 } /* Literal.String.Double */\n",
-       ".highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\n",
+       ".highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */\n",
        ".highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */\n",
-       ".highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\n",
+       ".highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */\n",
        ".highlight .sx { color: #008000 } /* Literal.String.Other */\n",
-       ".highlight .sr { color: #BB6688 } /* Literal.String.Regex */\n",
+       ".highlight .sr { color: #A45A77 } /* Literal.String.Regex */\n",
        ".highlight .s1 { color: #BA2121 } /* Literal.String.Single */\n",
        ".highlight .ss { color: #19177C } /* Literal.String.Symbol */\n",
        ".highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */\n",
@@ -845,36 +828,34 @@
     {
      "data": {
       "text/html": [
-       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">19</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_src_01</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\"> </span><span class=\"n\">_data_src_00</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">RESTRICT</span><span class=\"w\">  </span><span class=\"n\">_data_dst_00</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_dst</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">30</span><span class=\"o\">*</span><span class=\"n\">ctr_0</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mi\">29</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">)</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"p\">{</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">         </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"n\">a</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">_data_src_00</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">_data_src_01</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">];</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">         </span><span class=\"n\">_data_dst_00</span><span class=\"p\">[</span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">a</span><span class=\"o\">*</span><span class=\"mf\">2.0</span><span class=\"p\">;</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">      </span><span class=\"p\">}</span><span class=\"w\"></span>\n",
-       "<span class=\"w\">   </span><span class=\"p\">}</span><span class=\"w\"></span>\n",
-       "<span class=\"p\">}</span><span class=\"w\"></span>\n",
+       "<div class=\"highlight\"><pre><span></span><span class=\"n\">FUNC_PREFIX</span><span class=\"w\"> </span><span class=\"kt\">void</span><span class=\"w\"> </span><span class=\"n\">kernel</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">dst_data</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"k\">const</span><span class=\"w\">  </span><span class=\"n\">src_data</span><span class=\"p\">)</span>\n",
+       "<span class=\"p\">{</span>\n",
+       "<span class=\"w\">   </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mf\">19L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">   </span><span class=\"p\">{</span>\n",
+       "<span class=\"w\">      </span><span class=\"k\">for</span><span class=\"p\">(</span><span class=\"kt\">int64_t</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">&lt;</span><span class=\"w\"> </span><span class=\"mf\">29L</span><span class=\"n\">L</span><span class=\"p\">;</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+=</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span>\n",
+       "<span class=\"w\">      </span><span class=\"p\">{</span>\n",
+       "<span class=\"w\">         </span><span class=\"k\">const</span><span class=\"w\"> </span><span class=\"kt\">double</span><span class=\"w\"> </span><span class=\"n\">a</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"n\">src_data</span><span class=\"p\">[(</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">src_data</span><span class=\"p\">[</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"p\">(</span><span class=\"n\">ctr_1</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"mf\">1L</span><span class=\"n\">L</span><span class=\"p\">)];</span>\n",
+       "<span class=\"w\">         </span><span class=\"n\">dst_data</span><span class=\"p\">[</span><span class=\"n\">ctr_0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"mf\">30L</span><span class=\"n\">L</span><span class=\"w\"> </span><span class=\"o\">+</span><span class=\"w\"> </span><span class=\"n\">ctr_1</span><span class=\"p\">]</span><span class=\"w\"> </span><span class=\"o\">=</span><span class=\"w\"> </span><span class=\"mf\">2.0</span><span class=\"w\"> </span><span class=\"o\">*</span><span class=\"w\"> </span><span class=\"n\">a</span><span class=\"p\">;</span>\n",
+       "<span class=\"w\">      </span><span class=\"p\">}</span>\n",
+       "\n",
+       "<span class=\"w\">   </span><span class=\"p\">}</span>\n",
+       "\n",
+       "<span class=\"p\">}</span>\n",
        "</pre></div>\n"
       ],
       "text/plain": [
-       "FUNC_PREFIX void kernel(double * RESTRICT  _data_dst, double * RESTRICT const _data_src)\n",
+       "FUNC_PREFIX void kernel (double * const  dst_data, double * const  src_data)\n",
        "{\n",
-       "   for (int64_t ctr_0 = 1; ctr_0 < 19; ctr_0 += 1)\n",
+       "   for(int64_t ctr_0 = 1LL; ctr_0 < 19LL; ctr_0 += 1LL)\n",
        "   {\n",
-       "      double * RESTRICT _data_src_01 = _data_src + 30*ctr_0 + 30;\n",
-       "      double * RESTRICT _data_src_00 = _data_src + 30*ctr_0;\n",
-       "      double * RESTRICT  _data_dst_00 = _data_dst + 30*ctr_0;\n",
-       "      for (int64_t ctr_1 = 1; ctr_1 < 29; ctr_1 += 1)\n",
+       "      for(int64_t ctr_1 = 1LL; ctr_1 < 29LL; ctr_1 += 1LL)\n",
        "      {\n",
-       "         const double a = _data_src_00[ctr_1 + 1] + _data_src_01[ctr_1];\n",
-       "         _data_dst_00[ctr_1] = a*2.0;\n",
+       "         const double a = src_data[(ctr_0 + 1LL) * 30LL + ctr_1] + src_data[ctr_0 * 30LL + (ctr_1 + 1LL)];\n",
+       "         dst_data[ctr_0 * 30LL + ctr_1] = 2.0 * a;\n",
        "      }\n",
+       "\n",
        "   }\n",
+       "\n",
        "}"
       ]
      },
@@ -912,9 +893,9 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.9.9"
+   "version": "3.10.13"
   }
  },
  "nbformat": 4,
  "nbformat_minor": 2
-}
\ No newline at end of file
+}
diff --git a/pytest.ini b/pytest.ini
index 8c445bea68f8eda1ee9d80e452f4aa97599d30b0..b43b0f00ce528fc8ca1cdd8355c0168d98b6e608 100644
--- a/pytest.ini
+++ b/pytest.ini
@@ -1,9 +1,15 @@
 [pytest]
-testpaths = src tests doc/notebooks
+testpaths = src tests docs/source/tutorials
 pythonpath = src
 python_files = test_*.py *_test.py scenario_*.py
 norecursedirs = *.egg-info .git .cache .ipynb_checkpoints htmlcov
-addopts = --doctest-modules --durations=20  --cov-config pytest.ini
+addopts = 
+       --doctest-modules
+       --durations=20 
+       --cov-config pytest.ini
+       --ignore=src/pystencils/old
+       --ignore=tests/_old
+       --ignore=tests/_todo
 markers =
        longrun: tests only run at night since they have large execution time
        notebook: mark for notebooks
@@ -34,6 +40,7 @@ omit = doc/*
        src/pystencils/cache.py
        src/pystencils/pacxx/benchmark.py
        src/pystencils/_version.py
+       src/pystencils/old
        venv/
 
 [report]
@@ -56,7 +63,7 @@ exclude_lines =
        if __name__ == .__main__.:
 
 skip_covered = True
-fail_under = 85
+fail_under = 80
 
 [html]
 directory = coverage_report
diff --git a/src/pystencils/__init__.py b/src/pystencils/__init__.py
index f5cb3e10b646dd6ead4673827d0166c9f0f9e5ea..5baf97b6b5fb60c57e0ee088276de07493002f1e 100644
--- a/src/pystencils/__init__.py
+++ b/src/pystencils/__init__.py
@@ -19,6 +19,7 @@ from .kernel_decorator import kernel, kernel_config
 from .kernelcreation import create_kernel, create_staggered_kernel
 from .backend.kernelfunction import KernelFunction
 from .backend.jit import no_jit
+from .backend.exceptions import KernelConstraintsError
 from .slicing import make_slice
 from .spatial_coordinates import (
     x_,
@@ -54,6 +55,7 @@ __all__ = [
     "create_kernel",
     "create_staggered_kernel",
     "KernelFunction",
+    "KernelConstraintsError",
     "Target",
     "no_jit",
     "show_code",
diff --git a/src/pystencils/alignedarray.py b/src/pystencils/alignedarray.py
index 63bdb3a5f1324a099bbd82fd666bfaec11eeb5af..32cc4dc839d6be837cf47d2e5264fb768626b618 100644
--- a/src/pystencils/alignedarray.py
+++ b/src/pystencils/alignedarray.py
@@ -1,3 +1,4 @@
+# flake8: noqa
 import numpy as np
 
 
@@ -17,10 +18,12 @@ def aligned_empty(shape, byte_alignment=True, dtype=np.float64, byte_offset=0, o
         align_inner_coordinate: if True, the start of the innermost coordinate lines are aligned as well
     """
     if byte_alignment is True or byte_alignment == 'cacheline':
-        from pystencils.backends.simd_instruction_sets import (get_supported_instruction_sets, get_cacheline_size,
-                                                               get_vector_instruction_set)
+        # from pystencils.backends.simd_instruction_sets import (get_supported_instruction_sets, get_cacheline_size,
+        #                                                        get_vector_instruction_set)
 
-        instruction_sets = get_supported_instruction_sets()
+        # instruction_sets = get_supported_instruction_sets()
+        #   TODO fix this
+        instruction_sets = None
         if instruction_sets is None:
             byte_alignment = 64
         elif byte_alignment == 'cacheline':
diff --git a/src/pystencils/boundaries/boundaryhandling.py b/src/pystencils/boundaries/boundaryhandling.py
index f171d56091f69fbd1bef2a2edc4cf844a96a9f40..c7657ec51e5d0386087455e8ff927ef56dff0384 100644
--- a/src/pystencils/boundaries/boundaryhandling.py
+++ b/src/pystencils/boundaries/boundaryhandling.py
@@ -36,12 +36,9 @@ class FlagInterface:
         >>> dh = create_data_handling((4, 5))
         >>> fi = FlagInterface(dh, 'flag_field', np.uint8)
         >>> assert dh.has_data('flag_field')
-        >>> fi.reserve_next_flag()
-        2
-        >>> fi.reserve_flag(4)
-        4
-        >>> fi.reserve_next_flag()
-        8
+        >>> assert fi.reserve_next_flag() == 2
+        >>> assert fi.reserve_flag(4) == 4
+        >>> assert fi.reserve_next_flag() == 8
     """
 
     def __init__(self, data_handling, flag_field_name, dtype=DEFAULT_FLAG_TYPE):
diff --git a/src/pystencils/display_utils.py b/src/pystencils/display_utils.py
index 301cdef0f106fc2dbaef6f016b21e14c5e34911d..0543c925908decaf460446bf31ac727759f5499b 100644
--- a/src/pystencils/display_utils.py
+++ b/src/pystencils/display_utils.py
@@ -9,7 +9,6 @@ from .backend.jit import KernelWrapper
 
 def to_dot(expr: sp.Expr, graph_style: Optional[Dict[str, Any]] = None, short=True):
     """Show a sympy or pystencils AST as dot graph"""
-    from pystencils.sympyextensions.astnodes import Node
     try:
         import graphviz
     except ImportError:
@@ -18,12 +17,15 @@ def to_dot(expr: sp.Expr, graph_style: Optional[Dict[str, Any]] = None, short=Tr
 
     graph_style = {} if graph_style is None else graph_style
 
-    if isinstance(expr, Node):
-        from pystencils.backends.dot import print_dot
-        return graphviz.Source(print_dot(expr, short=short, graph_attr=graph_style))
-    else:
+    # if isinstance(expr, Node):
+    #     from pystencils.backends.dot import print_dot
+    #     return graphviz.Source(print_dot(expr, short=short, graph_attr=graph_style))
+    if isinstance(expr, sp.Basic):
         from sympy.printing.dot import dotprint
         return graphviz.Source(dotprint(expr, graph_attr=graph_style))
+    else:
+        #  TODO nbackend
+        raise NotImplementedError("Printing of AST nodes for the new backend is not implemented yet")
 
 
 def highlight_cpp(code: str):
diff --git a/src/pystencils/simplificationfactory.py b/src/pystencils/simplificationfactory.py
index 869454ecf0f4e1ab05f79b7370a2d22f30c1dcdb..68eb22d59a460aae6ef4c6bba50bbd9f0acacb83 100644
--- a/src/pystencils/simplificationfactory.py
+++ b/src/pystencils/simplificationfactory.py
@@ -1,4 +1,4 @@
-from pystencils.sympyextensions import (
+from pystencils.simp import (
     SimplificationStrategy,
     insert_constants,
     insert_symbol_times_minus_one,
diff --git a/src/pystencils/sympyextensions/integer_functions.py b/src/pystencils/sympyextensions/integer_functions.py
index 3b215266eac147ea3082a0536e180728201d6b3e..a683c528c8a999efa8fbc6a534f864e27491ced4 100644
--- a/src/pystencils/sympyextensions/integer_functions.py
+++ b/src/pystencils/sympyextensions/integer_functions.py
@@ -80,8 +80,6 @@ class modulo_floor(sp.Function):
         12
         >>> from pystencils import TypedSymbol
         >>> a, b = TypedSymbol("a", "int64"), TypedSymbol("b", "int32")
-        >>> modulo_floor(a, b).to_c(str)
-        '(int64_t)((a) / (b)) * (b)'
     """
     nargs = 2
     is_integer = True
@@ -113,8 +111,6 @@ class modulo_ceil(sp.Function):
         12
         >>> from pystencils import TypedSymbol
         >>> a, b = TypedSymbol("a", "int64"), TypedSymbol("b", "int32")
-        >>> modulo_ceil(a, b).to_c(str)
-        '((a) % (b) == 0 ? a : ((int64_t)((a) / (b))+1) * (b))'
     """
     nargs = 2
     is_integer = True
@@ -144,8 +140,6 @@ class div_ceil(sp.Function):
         2
         >>> from pystencils import TypedSymbol
         >>> a, b = TypedSymbol("a", "int64"), TypedSymbol("b", "int32")
-        >>> div_ceil(a, b).to_c(str)
-        '( (a) % (b) == 0 ? (int64_t)(a) / (int64_t)(b) : ( (int64_t)(a) / (int64_t)(b) ) +1 )'
     """
     nargs = 2
     is_integer = True
@@ -175,8 +169,6 @@ class div_floor(sp.Function):
         2
         >>> from pystencils import TypedSymbol
         >>> a, b = TypedSymbol("a", "int64"), TypedSymbol("b", "int32")
-        >>> div_floor(a, b).to_c(str)
-        '((int64_t)(a) / (int64_t)(b))'
     """
     nargs = 2
     is_integer = True
diff --git a/src/pystencils/utils.py b/src/pystencils/utils.py
index 98331e7e5f561405cee99c3422b9f232747ecfcb..de98e44316e259c81bbcc3b3ce2aa7c490f7a5e8 100644
--- a/src/pystencils/utils.py
+++ b/src/pystencils/utils.py
@@ -82,8 +82,7 @@ def boolean_array_bounding_box(boolean_array):
 
     >>> a = np.zeros((4, 4), dtype=bool)
     >>> a[1:-1, 1:-1] = True
-    >>> boolean_array_bounding_box(a)
-    [(1, 3), (1, 3)]
+    >>> assert boolean_array_bounding_box(a) == [(1, 3), (1, 3)]
     """
     dim = boolean_array.ndim
     shape = boolean_array.shape