diff --git a/IntroProgrammingInPython.ipynb b/IntroProgrammingInPython.ipynb
index 94674820b179967fc5503bfd7b5a5dfb98f0ab27..3c2fba836749f8573bb98d34fe09fbcb9a98aea1 100644
--- a/IntroProgrammingInPython.ipynb
+++ b/IntroProgrammingInPython.ipynb
@@ -204,7 +204,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 68,
+   "execution_count": null,
    "id": "55b489a8-2568-4418-82f1-d16b74ce8a6d",
    "metadata": {},
    "outputs": [],
@@ -282,18 +282,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 3,
+   "execution_count": null,
    "id": "f3b3fb00-a25e-4050-8d41-ad9a10678bf9",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello World\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "#!/bin/env python3\n",
     "\n",
@@ -322,7 +314,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 9,
+   "execution_count": null,
    "id": "6bf448b7-7e4f-46ff-81d8-0b94d97104fe",
    "metadata": {
     "slideshow": {
@@ -330,26 +322,7 @@
     },
     "tags": []
    },
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Help on built-in function print in module builtins:\n",
-      "\n",
-      "print(...)\n",
-      "    print(value, ..., sep=' ', end='\\n', file=sys.stdout, flush=False)\n",
-      "    \n",
-      "    Prints the values to a stream, or to sys.stdout by default.\n",
-      "    Optional keyword arguments:\n",
-      "    file:  a file-like object (stream); defaults to the current sys.stdout.\n",
-      "    sep:   string inserted between values, default a space.\n",
-      "    end:   string appended after the last value, default a newline.\n",
-      "    flush: whether to forcibly flush the stream.\n",
-      "\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "#!/bin/env python3\n",
     "\n",
@@ -486,21 +459,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 12,
+   "execution_count": null,
    "id": "680027f3-13eb-4632-ab75-7801eed203b1",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "1"
-      ]
-     },
-     "execution_count": 12,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "#!/bin/env python3\n",
     "\n",
@@ -510,21 +472,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 62,
+   "execution_count": null,
    "id": "63970c76-b3cc-4baf-9cf3-56e411c5c172",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "1.1"
-      ]
-     },
-     "execution_count": 62,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "#!/bin/env python3\n",
     "\n",
@@ -542,63 +493,30 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 64,
+   "execution_count": null,
    "id": "fe7ca668-54f5-45d2-98d8-43b43efe18d4",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "int"
-      ]
-     },
-     "execution_count": 64,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "type(1)"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 66,
+   "execution_count": null,
    "id": "fc018a67-d3b8-4a60-8e06-ce40d4fa1f42",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "float"
-      ]
-     },
-     "execution_count": 66,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "type(1.1)"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 67,
+   "execution_count": null,
    "id": "7a382ce2-76e1-4fc7-8c94-a8301aca22b2",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "complex"
-      ]
-     },
-     "execution_count": 67,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "type(1+2J)"
    ]
@@ -615,84 +533,40 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 21,
+   "execution_count": null,
    "id": "5e8d4385-1f26-4c41-963f-95ac2207f683",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "3"
-      ]
-     },
-     "execution_count": 21,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "1 + 2"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 22,
+   "execution_count": null,
    "id": "bfa6e62e-063c-4f47-b255-709736ba2c15",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "-1"
-      ]
-     },
-     "execution_count": 22,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "1 - 2"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 19,
+   "execution_count": null,
    "id": "7527ea33-fda7-4f7b-b315-149a998f528d",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "0.5"
-      ]
-     },
-     "execution_count": 19,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "1 / 2"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 23,
+   "execution_count": null,
    "id": "fffb310a-c899-43be-a6f0-f0187d2321e6",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "2"
-      ]
-     },
-     "execution_count": 23,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "1 * 2"
    ]
@@ -707,63 +581,30 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 26,
+   "execution_count": null,
    "id": "cb45e17f-d04e-441e-852e-171f06bbe466",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "0"
-      ]
-     },
-     "execution_count": 26,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "1 // 2"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 28,
+   "execution_count": null,
    "id": "2efad625-5a60-4ffd-828e-8b4a1689cf17",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "1"
-      ]
-     },
-     "execution_count": 28,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "1 % 2"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 31,
+   "execution_count": null,
    "id": "550ed6ac-026c-4c3b-b7f0-12e2cc56d4ae",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "4"
-      ]
-     },
-     "execution_count": 31,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "2 ** 2"
    ]
@@ -778,21 +619,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 39,
+   "execution_count": null,
    "id": "6c8332df-d2c7-4dae-8b6c-beb05c44fe49",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "15.8"
-      ]
-     },
-     "execution_count": 39,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "6 * 3 - 2.2"
    ]
@@ -807,21 +637,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 38,
+   "execution_count": null,
    "id": "a11d00c0-c61d-4cd2-bc9b-0c6ca856cccb",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "6"
-      ]
-     },
-     "execution_count": 38,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "6 * (3 - 2)"
    ]
@@ -848,18 +667,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 218,
+   "execution_count": null,
    "id": "ec429a84-de01-40bf-8bc6-67aaea81d240",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "1\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "name = 1\n",
     "print(name)"
@@ -875,7 +686,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 222,
+   "execution_count": null,
    "id": "7734e532-9edd-4013-a838-6ecfe32dcb85",
    "metadata": {},
    "outputs": [],
@@ -889,57 +700,30 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 226,
+   "execution_count": null,
    "id": "85cfaf9b-5309-4ac7-8fd9-2034e4adb4f9",
    "metadata": {},
-   "outputs": [
-    {
-     "ename": "SyntaxError",
-     "evalue": "invalid decimal literal (<ipython-input-226-ac1344e44015>, line 1)",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;36m  File \u001b[0;32m\"<ipython-input-226-ac1344e44015>\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m    1_value = 1\u001b[0m\n\u001b[0m     ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid decimal literal\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "1_value = 1"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 228,
+   "execution_count": null,
    "id": "d379fb9d-30a3-4505-b98c-d5a77c0b500c",
    "metadata": {},
-   "outputs": [
-    {
-     "ename": "SyntaxError",
-     "evalue": "invalid syntax (<ipython-input-228-336cc308e9ba>, line 1)",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;36m  File \u001b[0;32m\"<ipython-input-228-336cc308e9ba>\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m    @tor = 1\u001b[0m\n\u001b[0m         ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "@tor = 1"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 230,
+   "execution_count": null,
    "id": "d9ec65ab-937c-4943-9b10-f923d4ee0363",
    "metadata": {},
-   "outputs": [
-    {
-     "ename": "SyntaxError",
-     "evalue": "invalid syntax (<ipython-input-230-49ff6b8b9baa>, line 1)",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;36m  File \u001b[0;32m\"<ipython-input-230-49ff6b8b9baa>\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m    .der = 1\u001b[0m\n\u001b[0m    ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     ".der = 1"
    ]
@@ -964,57 +748,30 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 233,
+   "execution_count": null,
    "id": "fc0f7f9b-440b-4d16-bc12-24fafd18a112",
    "metadata": {},
-   "outputs": [
-    {
-     "ename": "SyntaxError",
-     "evalue": "cannot assign to None (<ipython-input-233-d03f602a0186>, line 1)",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;36m  File \u001b[0;32m\"<ipython-input-233-d03f602a0186>\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m    None = 1\u001b[0m\n\u001b[0m    ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m cannot assign to None\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "None = 1"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 235,
+   "execution_count": null,
    "id": "7d460e27-69e1-4885-ba6c-b00ca6f233ca",
    "metadata": {},
-   "outputs": [
-    {
-     "ename": "SyntaxError",
-     "evalue": "invalid syntax (<ipython-input-235-773eba7f7781>, line 1)",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;36m  File \u001b[0;32m\"<ipython-input-235-773eba7f7781>\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m    if = 1\u001b[0m\n\u001b[0m       ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "if = 1"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 238,
+   "execution_count": null,
    "id": "5ca05cdd-9fb6-49af-a5b4-6bd0cea82309",
    "metadata": {},
-   "outputs": [
-    {
-     "ename": "SyntaxError",
-     "evalue": "invalid syntax (<ipython-input-238-fca67dd73332>, line 1)",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;36m  File \u001b[0;32m\"<ipython-input-238-fca67dd73332>\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m    with = 1\u001b[0m\n\u001b[0m         ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "with = 1"
    ]
@@ -1029,19 +786,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 239,
+   "execution_count": null,
    "id": "6d88c116-5e8e-4623-9af7-4176f87ad7a5",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "1\n",
-      "2\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "a = 1\n",
     "A = 2\n",
@@ -1061,7 +809,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 241,
+   "execution_count": null,
    "id": "9ab676b5-8fbd-43ae-acac-c1c76bb40954",
    "metadata": {},
    "outputs": [],
@@ -1079,19 +827,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 242,
+   "execution_count": null,
    "id": "984dd4bf-8f79-4dda-9d86-f71f0f117cce",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "1\n",
-      "Hello\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "value = 1\n",
     "print(value)\n",
@@ -1111,25 +850,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 246,
+   "execution_count": null,
    "id": "68528cd0-d4c1-4e86-93c1-f5e1d187fc84",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdin",
-     "output_type": "stream",
-     "text": [
-      "What is your name? Auke\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello Auke\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "user_input = input(\"What is your name?\")\n",
     "print(\"Hello\", user_input)"
@@ -1161,23 +885,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 149,
+   "execution_count": null,
    "id": "2a201b96-0d2c-4a25-bc88-32e98d78e71d",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "*******\n",
-      "Hello\n",
-      "*******\n",
-      "*******\n",
-      "World\n",
-      "*******\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "print(\"*******\")\n",
     "print(\"Hello\")\n",
@@ -1197,23 +908,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 152,
+   "execution_count": null,
    "id": "7ad8fa73-e3c9-4c30-ba17-0bff43eb440f",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "*******\n",
-      "Hello\n",
-      "*******\n",
-      "*******\n",
-      "World\n",
-      "*******\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "def star_print(word):\n",
     "    print(\"*******\")\n",
@@ -1236,23 +934,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 153,
+   "execution_count": null,
    "id": "171ef230-e9ed-4a73-a44f-b85075882365",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "*******\n",
-      "Hello\n",
-      "*******\n",
-      "*******\n",
-      "World\n",
-      "*******\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "def eo3(l):\n",
     "    print(\"*******\")\n",
@@ -1265,7 +950,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 165,
+   "execution_count": null,
    "id": "797a3072-8ab0-41df-8573-ea813b28a113",
    "metadata": {},
    "outputs": [],
@@ -1279,7 +964,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 159,
+   "execution_count": null,
    "id": "3ea4e9a5-05cb-433d-800d-6f843c7b7b54",
    "metadata": {},
    "outputs": [],
@@ -1301,20 +986,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 164,
+   "execution_count": null,
    "id": "cd20f1cd-382e-4bc3-865b-eb20434d6db0",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hi World\n",
-      "Hello World\n",
-      "Yo World\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# default values can be used to make parameters optional\n",
     "def function(name, greeting=\"Hello\"):\n",
@@ -1336,21 +1011,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 175,
+   "execution_count": null,
    "id": "2349a128-b5aa-4d52-81ce-ff17cc47bdee",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "9"
-      ]
-     },
-     "execution_count": 175,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "def square(number):\n",
     "    return number * number\n",
@@ -1380,19 +1044,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 173,
+   "execution_count": null,
    "id": "35be1bf0-2474-48f6-b322-6b73e2e2650d",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Lofar\n",
-      "Astron\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# name is in the global space\n",
     "name = \"Astron\"\n",
@@ -1411,19 +1066,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 171,
+   "execution_count": null,
    "id": "5e04fc82-06ef-4abf-bfed-25ec3d80a06e",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Astron\n",
-      "Astron\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# name is in global space\n",
     "name = \"Astron\"\n",
@@ -1438,19 +1084,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 176,
+   "execution_count": null,
    "id": "6595d2c7-e14c-40fc-bf3f-5760762b0945",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Lofar\n",
-      "Lofar\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "name = \"Astron\"\n",
     "\n",
@@ -1491,18 +1128,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 75,
+   "execution_count": null,
    "id": "c979d150-9c12-4327-b565-15abe1d1c386",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello world\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Double quoted\n",
     "print(\"Hello world\")"
@@ -1510,18 +1139,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 74,
+   "execution_count": null,
    "id": "02fa86ad-deea-4faf-88c6-4c58cc20da4b",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello world\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Single quoted\n",
     "print('Hello world')"
@@ -1529,21 +1150,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 76,
+   "execution_count": null,
    "id": "e5ba08fc-c1f6-480f-b266-5e5588088e42",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello\n",
-      "World\n",
-      "Hello\n",
-      "World\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Tripple double or single quoted\n",
     "print(\"\"\"Hello\n",
@@ -1570,36 +1180,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 78,
+   "execution_count": null,
    "id": "52191429-1b46-4a83-9fa7-c517a27b2553",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello 'world'\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "print(\"Hello 'world'\")"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 80,
+   "execution_count": null,
    "id": "3a669e92-3d70-4a6f-a63e-7297dbb2b23b",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello \"world\"\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "print('Hello \"world\"')"
    ]
@@ -1614,18 +1208,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 83,
+   "execution_count": null,
    "id": "1a228894-08d7-4427-8b1d-dd1189d197cb",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "'Hello' \"world\"\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "print(\"'Hello' \\\"world\\\"\")"
    ]
@@ -1650,21 +1236,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 86,
+   "execution_count": null,
    "id": "823a3626-607c-4b36-9649-a2f2f6ddd89c",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "5"
-      ]
-     },
-     "execution_count": 86,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "len(\"Hello\")"
    ]
@@ -1679,21 +1254,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 89,
+   "execution_count": null,
    "id": "c474f9ce-6261-4367-b06d-7bed69957a95",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'H'"
-      ]
-     },
-     "execution_count": 89,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# This gives the first character\n",
     "\"Hello World\"[0]"
@@ -1701,21 +1265,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 92,
+   "execution_count": null,
    "id": "ea1b0267-a714-4c29-937c-b530ce5f97f6",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'d'"
-      ]
-     },
-     "execution_count": 92,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# This gives the last character\n",
     "\"Hello World\"[-1]"
@@ -1731,42 +1284,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 103,
+   "execution_count": null,
    "id": "24172988-9803-4a3f-a403-ef9ffa047b9d",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'el'"
-      ]
-     },
-     "execution_count": 103,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello World\"[1:3]"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 101,
+   "execution_count": null,
    "id": "2f218244-ae5a-4116-ac1e-491ae5b3e0c3",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'rl'"
-      ]
-     },
-     "execution_count": 101,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello World\"[-3:-1]"
    ]
@@ -1781,21 +1312,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 108,
+   "execution_count": null,
    "id": "838eb491-4885-45d7-9df6-19c316602de5",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'llo World'"
-      ]
-     },
-     "execution_count": 108,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Here we don't care about the ending part. We only want to skip the first two chars\n",
     "\"Hello World\"[2:]"
@@ -1803,21 +1323,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 111,
+   "execution_count": null,
    "id": "9309812a-3170-4d59-b966-82166eb5c747",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'Hell'"
-      ]
-     },
-     "execution_count": 111,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Here we don't specify the 0. This is a form that is not used alot because it doesn't have any benefits.\n",
     "\"Hello World\"[:4]"
@@ -1825,21 +1334,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 112,
+   "execution_count": null,
    "id": "3fea243c-0b03-44e0-aa25-2f6374cd0e72",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'Hello World'"
-      ]
-     },
-     "execution_count": 112,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Here we ask for a copy of the entire string and can be seen in code bases for that reason.\n",
     "\"Hello World\"[:]"
@@ -1873,21 +1371,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 48,
+   "execution_count": null,
    "id": "a5c0b80c-7ced-48c5-8fda-c3296b824227",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'HELLO'"
-      ]
-     },
-     "execution_count": 48,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "hello = \"Hello\"\n",
     "hello.upper()"
@@ -1905,19 +1392,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 49,
+   "execution_count": null,
    "id": "f1ef23d5-34c5-4184-9842-bb96a6940e79",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "3.0\n",
-      "1.0\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "a = 1+3J\n",
     "print(a.imag)\n",
@@ -1934,33 +1412,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 51,
+   "execution_count": null,
    "id": "600391b4-007b-4ae0-8548-0ee3debeccdd",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Help on built-in function dir in module builtins:\n",
-      "\n",
-      "dir(...)\n",
-      "    dir([object]) -> list of strings\n",
-      "    \n",
-      "    If called without an argument, return the names in the current scope.\n",
-      "    Else, return an alphabetized list of names comprising (some of) the attributes\n",
-      "    of the given object, and of attributes reachable from it.\n",
-      "    If the object supplies a method named __dir__, it will be used; otherwise\n",
-      "    the default dir() logic is used and returns:\n",
-      "      for a module object: the module's attributes.\n",
-      "      for a class object:  its attributes, and recursively the attributes\n",
-      "        of its bases.\n",
-      "      for any other object: its attributes, its class's attributes, and\n",
-      "        recursively the attributes of its class's base classes.\n",
-      "\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "help(dir)"
    ]
@@ -1997,42 +1452,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 114,
+   "execution_count": null,
    "id": "1d5f6a49-f49b-45e6-a64c-a925ca4b2814",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'HELLO WORLD'"
-      ]
-     },
-     "execution_count": 114,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello World\".upper()"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 116,
+   "execution_count": null,
    "id": "f8fcdb48-5544-4d73-86a2-0725d13bdafe",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'hello world'"
-      ]
-     },
-     "execution_count": 116,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello World\".lower()"
    ]
@@ -2055,18 +1488,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 121,
+   "execution_count": null,
    "id": "c4f7171e-863f-48b0-abbc-e13e55e11c5d",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello World\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "hello = \"Hello\" + \" \" + \"World\"\n",
     "print(hello)"
@@ -2082,21 +1507,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 123,
+   "execution_count": null,
    "id": "894f39c0-3073-4337-b30d-d991a51a38fc",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'Hello world'"
-      ]
-     },
-     "execution_count": 123,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Here we don't use formatting at all. Just a basic string\n",
     "f\"Hello world\""
@@ -2104,21 +1518,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 127,
+   "execution_count": null,
    "id": "c6cabd8d-6ec8-4504-bc0d-d1b58d0d8c58",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "\"Hello World you don't look a day older than 4600000000.0 years\""
-      ]
-     },
-     "execution_count": 127,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# Here we want to use the variable directly in the formatted string.\n",
     "# Python will put the string representative of in the string.\n",
@@ -2129,21 +1532,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 131,
+   "execution_count": null,
    "id": "91b20aa6-4d2e-4931-9a2e-d74b7987d376",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "\"Hello World you don't look a day older than 4.6E+09 years\""
-      ]
-     },
-     "execution_count": 131,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# We can also provide hints on how to format things.\n",
     "name = \"World\"\n",
@@ -2161,105 +1553,50 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 133,
+   "execution_count": null,
    "id": "6dac110d-fe50-4fcc-832c-d2b8524b6191",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'Hello World'"
-      ]
-     },
-     "execution_count": 133,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello {}\".format(\"World\")"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 135,
+   "execution_count": null,
    "id": "ec76336b-afb9-4a8e-9c80-6a4d41061ada",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'Hello World'"
-      ]
-     },
-     "execution_count": 135,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello {name}\".format(name=\"World\")"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 137,
+   "execution_count": null,
    "id": "8cd4909c-c1f4-4b2b-9016-48e695aa4c78",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'Hello World, my name is Python'"
-      ]
-     },
-     "execution_count": 137,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello {}, my name is {}\".format(\"World\", \"Python\")"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 138,
+   "execution_count": null,
    "id": "efdc5c29-475a-45e3-9e76-3f868ba30b51",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'Hello World, my name is Python. Have a nice day World.'"
-      ]
-     },
-     "execution_count": 138,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello {name}, my name is {program}. Have a nice day {name}.\".format(name=\"World\", program=\"Python\")"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 140,
+   "execution_count": null,
    "id": "2be4e458-3254-496b-add4-b82234981766",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "'Hello World, my name is Python. Have a nice day World'"
-      ]
-     },
-     "execution_count": 140,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "\"Hello {0}, my name is {1}. Have a nice day {0}\".format(\"World\", \"Python\")"
    ]
@@ -2284,25 +1621,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 144,
+   "execution_count": null,
    "id": "af86fc92-6cfb-4d3c-98b2-81b04d3bc5e4",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdin",
-     "output_type": "stream",
-     "text": [
-      "What is your name? Auke\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Hello Auke\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "#!/bin/env python3\n",
     "\n",
@@ -2333,21 +1655,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 179,
+   "execution_count": null,
    "id": "549f88c8-4087-4e97-98af-2983277b520a",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "[]"
-      ]
-     },
-     "execution_count": 179,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# This is an empty list\n",
     "[]"
@@ -2355,21 +1666,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 182,
+   "execution_count": null,
    "id": "a09f4e16-3843-44cd-8753-3b5bb92e7c3e",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "[1, 2, 3, 4, 5]"
-      ]
-     },
-     "execution_count": 182,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# This is a list op numbers\n",
     "[1, 2, 3, 4, 5]"
@@ -2377,21 +1677,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 184,
+   "execution_count": null,
    "id": "0e9582a6-7bb5-4215-b54c-968d059f6bf8",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "[1, 'Hello']"
-      ]
-     },
-     "execution_count": 184,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# We can combine different types of data in a list\n",
     "[1, \"Hello\"]"
@@ -2415,21 +1704,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 210,
+   "execution_count": null,
    "id": "c516367b-1273-4528-a9e6-e8cda17c2365",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "2"
-      ]
-     },
-     "execution_count": 210,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "len([1, 2])"
    ]
@@ -2444,84 +1722,40 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 187,
+   "execution_count": null,
    "id": "bca4829b-ac84-49c8-b027-e32bb01cda4c",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "1"
-      ]
-     },
-     "execution_count": 187,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "[1, 2, 3, 4, 5][0]"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 196,
+   "execution_count": null,
    "id": "9cd21b50-fcf2-4020-982a-bbbd345b5ad7",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "5"
-      ]
-     },
-     "execution_count": 196,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "[1, 2, 3, 4, 5][-1]"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 195,
+   "execution_count": null,
    "id": "f57bce1c-c387-4890-b807-6122868b2590",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "[2, 3, 4, 5]"
-      ]
-     },
-     "execution_count": 195,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "[1, 2, 3, 4, 5][1:]"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": 198,
+   "execution_count": null,
    "id": "72090cf8-0114-45c0-a708-585d380eb891",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "[3, 4]"
-      ]
-     },
-     "execution_count": 198,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "[1, 2, 3, 4, 5][2:4]"
    ]
@@ -2536,21 +1770,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 202,
+   "execution_count": null,
    "id": "b31d312f-3ca6-481b-8297-886c3dc9820f",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "[1, 2, 3, 4, 5]"
-      ]
-     },
-     "execution_count": 202,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "[1, 2, 3] + [4, 5]"
    ]
@@ -2565,19 +1788,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 201,
+   "execution_count": null,
    "id": "84483bfd-ffbf-4d78-80d9-40169b9c9d52",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "[1, 2, 3]\n",
-      "[1, 2, 88]\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "items = [1, 2, 3]\n",
     "print(items)\n",
@@ -2595,19 +1809,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 203,
+   "execution_count": null,
    "id": "42a9c653-8e46-4293-b3f0-a96fe9e721a4",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "[]\n",
-      "[2]\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "items = []\n",
     "print(items)\n",
@@ -2625,20 +1830,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 209,
+   "execution_count": null,
    "id": "a350fa2d-6f81-4408-939d-9c6106cb591b",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "[1, 2, 3, 4, 5]\n",
-      "[1, 22, 33, 44, 5]\n",
-      "[1, 44, 5]\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "items = [1, 2, 3, 4, 5]\n",
     "print(items)\n",
@@ -2658,20 +1853,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 216,
+   "execution_count": null,
    "id": "c242b92e-9531-4099-9fe1-392b6c37b26c",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "[[1, 2, 3], [4, 5]]\n",
-      "[1, 2, 3]\n",
-      "2\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "items = [[1, 2, 3], [4, 5]]\n",
     "print(items)\n",
@@ -2701,18 +1886,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 248,
+   "execution_count": null,
    "id": "8bc04d51-abd6-45fb-bd72-d31e6b9adddd",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "()\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# This is a empty tuple\n",
     "tup = ()\n",
@@ -2721,18 +1898,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 250,
+   "execution_count": null,
    "id": "5f6468cd-7e3b-4c00-8790-931ec09d0eb1",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "(1,)\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# This is a single item tuple notice the ,\n",
     "tup = (1,)\n",
@@ -2741,18 +1910,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 252,
+   "execution_count": null,
    "id": "76e881a3-1aec-4baa-afdd-9fb131c42937",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "(1, 'Astron')\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# This is a tuple with multiple types\n",
     "tup = (1, \"Astron\")\n",
@@ -2761,21 +1922,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 255,
+   "execution_count": null,
    "id": "64952409-83b3-4b1a-a549-42ed695ca310",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "1"
-      ]
-     },
-     "execution_count": 255,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# we can index a tuple\n",
     "(1, \"Astron\")[0]"
@@ -2783,22 +1933,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 257,
+   "execution_count": null,
    "id": "25ef0a7b-982d-435b-a4da-59b35683e29b",
    "metadata": {},
-   "outputs": [
-    {
-     "ename": "TypeError",
-     "evalue": "'tuple' object does not support item assignment",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
-      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
-      "\u001b[0;32m<ipython-input-257-891212edf9e8>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0;31m# We can't change a tuple once its created\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      2\u001b[0m \u001b[0mtup\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"Astron\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 3\u001b[0;31m \u001b[0mtup\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m2\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
-      "\u001b[0;31mTypeError\u001b[0m: 'tuple' object does not support item assignment"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# We can't change a tuple once its created\n",
     "tup = (1, \"Astron\")\n",
@@ -2807,21 +1945,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 258,
+   "execution_count": null,
    "id": "3fb1ef09-cb58-4a52-bc33-d7217f7c70a8",
    "metadata": {},
-   "outputs": [
-    {
-     "data": {
-      "text/plain": [
-       "4"
-      ]
-     },
-     "execution_count": 258,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "# We can also use len() on a tuple\n",
     "len((1, 2, 3, \"Hello\"))"
@@ -2837,18 +1964,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 259,
+   "execution_count": null,
    "id": "ecd3864c-514c-4f44-aa81-cd273c231e36",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "[('Jive', 26), ('Nova', 27), ('Astron', 209)]\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "organizations = []\n",
     "organizations.append((\"Jive\", 26))\n",
@@ -2887,18 +2006,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 262,
+   "execution_count": null,
    "id": "de9a88b4-ebd6-4cc3-8daa-73646a32a4c2",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "{'Nova', 'Astron', 'Jive'}\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "individuals = {\"Astron\", \"Jive\", \"Nova\", \"Nova\"}\n",
     "print(individuals)"
@@ -2914,18 +2025,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 263,
+   "execution_count": null,
    "id": "42459f5d-0412-4204-8f57-67468767e416",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "{'CS001', 'CS003', 'FR606', 'CS002'}\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "obs1 = ['CS001']\n",
     "obs2 = ['CS001', 'CS002']\n",
@@ -2946,18 +2049,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 264,
+   "execution_count": null,
    "id": "d78e8f01-b665-4864-b779-704d8bf83c47",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "{'CS001', 'CS003', 'CS004'}\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "stations = {'CS001', 'CS002', 'CS003', 'CS004'}\n",
     "reserved = {'CS002'}\n",
@@ -2976,18 +2071,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 265,
+   "execution_count": null,
    "id": "4f71e542-a66a-4dcd-ad1e-73a2de07c24e",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "{'CS003', 'CS002'}\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "obs1 = {'CS002', 'CS003', 'CS004'}\n",
     "obs2 = {'CS001', 'CS002', 'CS003'}\n",
@@ -3008,18 +2095,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 266,
+   "execution_count": null,
    "id": "601c3f43-6226-45ac-85bf-d335f6ad8953",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "{'name': 'CasA', 'size': 20}\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "item = {'name': \"CasA\", 'size': 20}\n",
     "print(item)"
@@ -3027,18 +2106,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 269,
+   "execution_count": null,
    "id": "483d5667-9b7b-49fe-8e1f-33ddb0cd7221",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "{'Dwingeloo': '0521', 'Assen': '0592'}\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "net_code = {'Dwingeloo': '0521', 'Assen': '0592'}\n",
     "print(net_code)"
@@ -3054,18 +2125,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 270,
+   "execution_count": null,
    "id": "37390c12-2f84-45de-82a2-4610b9c9fefb",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "dict_keys(['Dwingeloo', 'Assen'])\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "net_code = {'Dwingeloo': '0521', 'Assen': '0592'}\n",
     "print(net_code.keys())"
@@ -3073,18 +2136,10 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 272,
+   "execution_count": null,
    "id": "1d5f6026-4e44-4f9e-8bec-8c7a3fef1ceb",
    "metadata": {},
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "dict_values(['0521', '0592'])\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "net_code = {'Dwingeloo': '0521', 'Assen': '0592'}\n",
     "print(net_code.values())"
@@ -3108,7 +2163,40 @@
     "## Flow control\n",
     "\n",
     "In flow control we decide to run or skip certain code based on truth values. Python has the two object True and False reserved as truth values. The meaning of these objects is quite self explanetory.\n",
-    "\n"
+    "\n",
+    "Lets get into what things result in truth values."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "a7bbe9e7-fb0e-425b-99e0-bd5deaff739d",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Comparisons\n",
+    "print(1 == 2)\n",
+    "print(1 != 2)\n",
+    "print(1 < 2)\n",
+    "print(1 > 2)\n",
+    "print(1 <= 2)\n",
+    "print(1 >= 2)\n",
+    "print(False is True)\n",
+    "print(False is not True)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "d477c22c-1671-4eeb-badf-55da4b1df28d",
+   "metadata": {},
+   "source": [
+    "Besides False and True other values can be used as truth indicators. Lets take a quote from the python documentation. https://docs.python.org/3/library/stdtypes.html#boolean-operations-and-or-not\n",
+    "\n",
+    "> By default, an object is considered true unless its class defines either a __bool__() method that returns False or a __len__() method that returns zero, when called with the object. 1 Here are most of the built-in objects considered false:\n",
+    "\n",
+    ">>    constants defined to be false: None and False.\n",
+    ">>    zero of any numeric type: 0, 0.0, 0j, Decimal(0), Fraction(0, 1)\n",
+    ">>    empty sequences and collections: '', (), [], {}, set(), range(0)\n"
    ]
   },
   {
@@ -3116,7 +2204,157 @@
    "id": "b35aee31-6f50-4bf2-9abb-94ec9df038b5",
    "metadata": {},
    "source": [
-    "### If\n"
+    "### If\n",
+    "\n",
+    "Now the fun can begin. We can finally make choices in our programs. The if statement will take a truth value and a block of code to execute if the value is True."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "8cfd8681-38ae-4e29-a32c-548a2466e7f1",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "if True:\n",
+    "    print(\"Hello\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "98550e33-e372-423a-9df8-603f92051179",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "if False:\n",
+    "    print(\"Hello\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "857f42fe-dccd-4ffd-8995-059865c14ddd",
+   "metadata": {},
+   "source": [
+    "We can also introduce a block for the False condition. For that we need the true block and introduce an else block."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "10553bf9-a018-4ae5-9406-884075e5832f",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "if False:\n",
+    "    print(\"Hello\")\n",
+    "else:\n",
+    "    print(\"World\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "2d9544e8-3f30-4e38-9cc7-f654f2a64938",
+   "metadata": {},
+   "source": [
+    "We could also decide we need to check more things before we go into a else block by using elif. Short for else if."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "2f70125b-5ff8-4605-a7c3-f83a8323001f",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "if False:\n",
+    "    print(\"Hello\")\n",
+    "elif False:\n",
+    "    print(\"World\")\n",
+    "else:\n",
+    "    print(\"Bye\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "dcff0c1c-cb97-43c9-9232-1939dfc4ef0e",
+   "metadata": {},
+   "source": [
+    "What is important to understand is that only one block will be executed. The first that if True will be executed."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "1d13bb5a-c243-4375-85e0-98a7b2fde930",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "if True:\n",
+    "    print(\"Hello\")\n",
+    "elif True:\n",
+    "    print(\"World\")\n",
+    "else:\n",
+    "    print(\"Bye\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "70dfd96c-bb7f-47ad-b84b-6388f6b0ce13",
+   "metadata": {},
+   "source": [
+    "If we do want to also check for the other conditions we should not include it in an else if or elif block."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "567b11d6-0902-4356-bd76-2a2d9df44aa0",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "if True:\n",
+    "    print(\"Hello\")\n",
+    "\n",
+    "if True:\n",
+    "    print(\"World\")\n",
+    "else:\n",
+    "    print(\"Bye\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "77804c8d-4a6b-4322-82a9-60696df3be31",
+   "metadata": {},
+   "source": [
+    "So now take a more real world example:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "32696c97-1b5b-4351-b80a-8281155e14e4",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "x = int(input(\"Please enter an integer: \"))\n",
+    "\n",
+    "if x < 0:\n",
+    "    print('Negative number')\n",
+    "elif x == 0:\n",
+    "    print('Zero')\n",
+    "else:\n",
+    "    print('Positive number')"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "97a513bc-26ba-471e-ae3a-67b674bde3a9",
+   "metadata": {},
+   "source": [
+    "### Exercise\n",
+    "\n",
+    "Create a text menu with options. Let the user enter a selection and print something out specific for that option. Use the else to catch an option that you didn't provide. Think about uppercase and lowercase if you don't use numbers as options."
    ]
   },
   {
@@ -3124,7 +2362,48 @@
    "id": "0dfd5dd3-328d-445f-97b1-1ac26a48a0e5",
    "metadata": {},
    "source": [
-    "### While\n"
+    "### While\n",
+    "\n",
+    "To repeast certain steps we could call a function multiple time but this is very limited. We could use a looping mechanism in the language. Luckely Python provides a could of those. One of them is the while loop.\n",
+    "\n",
+    "It will perform a block until something becomes false."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "d4ff0dac-fe36-4bbc-8a95-0fa73389c219",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "while value := input(\"Type an animal name: \"):\n",
+    "    if value.endswith(\"s\"):\n",
+    "        print(\"Ooh I like\", value)\n",
+    "    else:\n",
+    "        print(\"Ooh I like a\", value)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "84b4cbea-d617-4502-8254-8038c4d52a66",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "value = 0\n",
+    "while value < 100:\n",
+    "    print(value, end=\", \")\n",
+    "    value = value + value + 1"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "102f9376-db7e-4beb-855c-bbbf36fde65e",
+   "metadata": {},
+   "source": [
+    "### Exercise\n",
+    "\n",
+    "Create a program to calculate the fibonacci series till a maximum of say 100. https://en.wikipedia.org/wiki/Fibonacci_number"
    ]
   },
   {
@@ -3132,7 +2411,30 @@
    "id": "00fa41bf-a364-49d0-9608-71508a7f1044",
    "metadata": {},
    "source": [
-    "### For\n"
+    "### For\n",
+    "\n",
+    "The for loop allows an easy way to loop over items in a collection."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "f880f6ff-a4b0-4757-8047-148c329d12a5",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "for item in (\"Hello\", \"World\", \"And\", \"Thanks\", \"For\", \"The\", \"Fish\"):\n",
+    "    print(item, end=\" \")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "f56444df-a1d6-4413-b1e7-ac0b259ad5be",
+   "metadata": {},
+   "source": [
+    "### Exercise\n",
+    "\n",
+    "Loop over a list or tuple with numbers and print out the square of it. You could create a function for the quare calculation if you want."
    ]
   },
   {
@@ -3140,7 +2442,60 @@
    "id": "0d025fb4-d651-431b-96fc-2605d2c18385",
    "metadata": {},
    "source": [
-    "### Break / Continue"
+    "### Break / Continue\n",
+    "\n",
+    "Sometimes there is a need to stop early in a loop. For example in searching for an item in a list. Once found you could break the loop early. This can be done with a break."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "b36a44d5-5c5d-41fa-8651-fbbee188a79f",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "print(\"I am looking for something\")\n",
+    "\n",
+    "for item in (\"AMOLF\", \"ARCNL\", \"ASTRON\", \"CWI\", \"DIFFER\", \"Nikhef\", \"NIOZ\", \"NSCR\", \"SRON\"):\n",
+    "    if item.endswith('R'):\n",
+    "        print(\"Ah here it is. It is an\", item)\n",
+    "        break;\n",
+    "\n",
+    "    print(\"Hmm its not\", item)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "c09672b8-61fd-465b-8079-8e970832efd1",
+   "metadata": {},
+   "source": [
+    "We sometimes might want to skip certain items. For that we can use continue. It will go strait back to the beginning of the loop."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "6d93a538-d310-4859-9696-a8da22a50ee0",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "print(\"I am looking for something\")\n",
+    "\n",
+    "for item in (\"AMOLF\", \"ARCNL\", \"ASTRON\", \"CWI\", \"DIFFER\", \"Nikhef\", \"NIOZ\", \"NSCR\", \"SRON\"):\n",
+    "    if 'A' in item:\n",
+    "        continue\n",
+    "\n",
+    "    print(\"Lets go visit\", item)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "bc2110b3-b30d-48d6-8f5a-479d0e69f460",
+   "metadata": {},
+   "source": [
+    "### Exercise\n",
+    "\n",
+    "So now lets combine a lot of things we have learned. Lets create a calculator. Lets take a while loop that is always True. Ask for input from the user. Say two values and an operator. Then print the answer. If the user provides wrong input we tell the user. If the user provides a 'q' character we want to quit the loop. There is no one right answer here."
    ]
   },
   {
@@ -3148,7 +2503,60 @@
    "id": "e24b0155-ddec-4363-a111-a9d8b0670fc6",
    "metadata": {},
    "source": [
-    "## Abstraction"
+    "## Abstraction\n",
+    "\n",
+    "Abstraction is a way to hide details and giving it a name.\n",
+    "\n",
+    "We can abstract things in Python with compound data structures, functions, objects, etc.\n",
+    "\n",
+    "The abstraction can be helpful in clearly writing down how our process works. And we do this by abstracting details away at the right level. We want to combine abstractions of the same detail level to create another layer of building block with a higher detail level.\n",
+    "\n",
+    "We could give a complex check used in an \"if\" a name to give it a meaning. We want the reader of the code flowing through our code and not have interuptions with lower level details."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "dec7e707-2306-4bc6-ab78-c57eae13b415",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def turn_to(angle):\n",
+    "    print(\"Turning to angle:\", angle)\n",
+    "\n",
+    "angle = 44\n",
+    "\n",
+    "if angle > 30 and angle < 180:\n",
+    "    turn_to(angle)\n",
+    "else:\n",
+    "    print(\"Unsafe angle:\", angle)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "42aee757-0979-401a-adfc-e132f9035e2b",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "def turn_to(angle):\n",
+    "    print(\"Turning to angle:\", angle)\n",
+    "\n",
+    "def is_safe_angle(angle):\n",
+    "    return angle > 30 and angle < 180\n",
+    "\n",
+    "def report_unsafe_angle(angle):\n",
+    "    print(\"Unsafe angle:\", angle)\n",
+    "    \n",
+    "# ------------------------------------\n",
+    "\n",
+    "def turn_telescope(angle):\n",
+    "    if is_safe_angle(angle):\n",
+    "        turn_to(angle)\n",
+    "    else:\n",
+    "        report_unsafe_angle(angle)\n",
+    "        \n",
+    "turn_telescope(angle=44)"
    ]
   },
   {
@@ -3185,6 +2593,7 @@
     "\n",
     "## Community\n",
     "\n",
+    "* Slack #learn-python\n",
     "* Slack #cop-programming\n",
     "* Slack #software-development\n",
     "* Slack #webdev\n",