diff --git a/graph.ipynb b/graph.ipynb
index 4b639c61769e98f03d884f74fecb0b6309ae219f..583f2f7349c693dfbc341d4cb51444ed49cdae3c 100644
--- a/graph.ipynb
+++ b/graph.ipynb
@@ -20,7 +20,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 2,
       "metadata": {
         "id": "M18yRYkw6cJz"
       },
@@ -58,7 +58,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 3,
       "metadata": {
         "id": "OF2OuaTGDQMl"
       },
@@ -133,7 +133,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 4,
       "metadata": {
         "id": "2oa-b7dNPYEX"
       },
@@ -163,7 +163,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 5,
       "metadata": {
         "id": "boY51esQcZrj"
       },
@@ -205,7 +205,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 6,
       "metadata": {
         "id": "gdkvRQpQgGCr"
       },
@@ -231,7 +231,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 7,
       "metadata": {
         "id": "zrZmYUQ0PQ_i"
       },
@@ -287,7 +287,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 8,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -437,7 +437,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 9,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -504,7 +504,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 10,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -539,7 +539,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 11,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -615,7 +615,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 12,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -644,7 +644,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 13,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -662,7 +662,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 14,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -679,7 +679,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 15,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -708,7 +708,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": null,
+      "execution_count": 16,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -784,7 +784,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": 46,
+      "execution_count": 17,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -920,7 +920,7 @@
     },
     {
       "cell_type": "code",
-      "execution_count": 68,
+      "execution_count": 18,
       "metadata": {},
       "outputs": [],
       "source": [
@@ -929,7 +929,7 @@
         "    skel=skeletonization_image(binarization_image(im,'otsu'),'lee')\n",
         "    skel2=skeletonization_image(binarization_image(im,'otsu'),'lee')\n",
         "    CNs=minutia_extraction(skel)\n",
-        "\n",
+        "    plt.imsave(\"rightops.png\",draw_minutia(CNs,skel))\n",
         "    global blocked\n",
         "    global debug\n",
         "    global veryDebug\n",
@@ -942,27 +942,29 @@
         "        nonEncountered.append(CNs[i])\n",
         "    tot=[]\n",
         "    count=0\n",
-        "    while len(nonEncountered)!=0 or findWhitePix(skel2):\n",
-        "        print(findWhitePix(skel2))\n",
-        "        if count>50:\n",
+        "    while findWhitePix(skel2):\n",
+        "        #print(findWhitePix(skel2))\n",
+        "        if count>5000:\n",
         "            return tot\n",
         "        idx=indexOfHighestOneMin(nonEncountered)\n",
-        "        print(idx)\n",
+        "        #print(idx)\n",
         "        if idx<0:\n",
         "            idx=indexOfHighestThreeMin(nonEncountered)\n",
         "            #print('3 ! : '+idx)\n",
         "            if idx<0:\n",
-        "                print('loooooop')\n",
+        "                #print('loooooop')\n",
         "                a=findWhitePix(skel2)\n",
         "                if a:\n",
         "                    nonEncountered.append((a[0],a[1],5))\n",
+        "                    CNs.append((a[0],a[1],5))\n",
         "                    idx=0\n",
-        "        compCon,visited=recurseGraph(skel,nonEncountered,(nonEncountered[idx][0],nonEncountered[idx][1]),(nonEncountered[idx][0],nonEncountered[idx][1]))\n",
+        "        dot=CNs[CNs.index(nonEncountered[idx])]\n",
+        "        compCon,visited=recurseGraph(skel,CNs,(dot[0],dot[1]),(dot[0],dot[1]))\n",
         "        for i in range(len(compCon)):\n",
-        "            if not(nonEncountered[compCon[i][0]] in encounteredCNs):\n",
-        "                encounteredCNs.append(nonEncountered[compCon[i][0]])\n",
-        "            if not(nonEncountered[compCon[i][1]] in encounteredCNs):\n",
-        "                encounteredCNs.append(nonEncountered[compCon[i][1]])\n",
+        "            if not(CNs[compCon[i][0]] in encounteredCNs):\n",
+        "                encounteredCNs.append(CNs[compCon[i][0]])\n",
+        "            if not(CNs[compCon[i][1]] in encounteredCNs):\n",
+        "                encounteredCNs.append(CNs[compCon[i][1]])\n",
         "            \n",
         "            # if (compCon[i][0] in nonEncountered):\n",
         "            #     encounteredCNs.append(nonEncountered[compCon[i][0]])\n",
@@ -978,8 +980,10 @@
         "        plt.imshow(skel2)\n",
         "        tot.append(compCon)\n",
         "        count+=1\n",
+        "        print(count)\n",
         "        #print(nonEncountered)\n",
         "    #imshow()\n",
+        "    plt.imsave('/home/felix/Documents/work/FuzzyDoc/fuzzydoc/hole_skel.png',skel2)\n",
         "    return(tot)"
       ]
     },
@@ -1006,27 +1010,18 @@
     },
     {
       "cell_type": "code",
-      "execution_count": 64,
+      "execution_count": null,
       "metadata": {},
-      "outputs": [
-        {
-          "data": {
-            "text/plain": [
-              "-1"
-            ]
-          },
-          "execution_count": 64,
-          "metadata": {},
-          "output_type": "execute_result"
-        }
-      ],
+      "outputs": [],
       "source": [
-        "indexOfHighestOneMin([])"
+        "debug=False ; veryDebug=False ; blocked=[]\n",
+        "\n",
+        "print(graph(\"imMaskINV.png\"))"
       ]
     },
     {
       "cell_type": "code",
-      "execution_count": 69,
+      "execution_count": 20,
       "metadata": {},
       "outputs": [
         {
@@ -1035,346 +1030,9 @@
           "text": [
             "threshold found : 0.533203125\n",
             "threshold found : 0.533203125\n",
-            "threshold found : 0.533203125\n",
-            "(4, 16)\n",
-            "0\n",
-            "pos depart :  (31, 20) 0\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "blocked : [(43, 25)] point arrivee : 1\n",
-            "(4, 16)\n",
-            "-1\n",
-            "loooooop\n",
-            "pos depart :  (4, 16) 0\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(0, 1)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, -1)\n",
-            "(1, -1)\n",
-            "(1, -1)\n",
-            "(0, -1)\n",
-            "(1, -1)\n",
-            "(0, -1)\n",
-            "(1, -1)\n",
-            "(0, -1)\n",
-            "(1, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(-1, -1)\n",
-            "(0, -1)\n",
-            "(-1, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(-1, 1)\n",
-            "(-1, 1)\n",
-            "blocked : [(43, 25), (5, 15)] point arrivee : 0\n",
-            "pos depart :  (4, 17) 0\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(0, 1)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, 0)\n",
-            "(1, -1)\n",
-            "(1, -1)\n",
-            "(1, -1)\n",
-            "(1, -1)\n",
-            "(0, -1)\n",
-            "(1, -1)\n",
-            "(0, -1)\n",
-            "(1, -1)\n",
-            "(0, -1)\n",
-            "(1, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(-1, -1)\n",
-            "(0, -1)\n",
-            "(-1, -1)\n",
-            "(0, -1)\n",
-            "(0, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, -1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 0)\n",
-            "(-1, 1)\n",
-            "(-1, 1)\n",
-            "(0, 1)\n",
-            "(0, 1)\n",
-            "(-1, 1)\n",
-            "(-1, 1)\n",
-            "blocked : [(43, 25), (5, 15), (4, 17), (5, 15)] point arrivee : 0\n",
-            "[[(0, 1)], [(0, 0), (0, 0)]]\n"
+            "1\n",
+            "2\n",
+            "[[(0, 1)], [(2, 2), (2, 2)]]\n"
           ]
         },
         {
@@ -1391,31 +1049,71 @@
         }
       ],
       "source": [
-        "path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/imgs/1_truth.png\"\n",
+        "# path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/imgs/1_truth.png\"\n",
         "path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/0Dot.jpg\"\n",
-        "plt.imshow(skeletonization_image(binarization_image(load_image(path),'otsu'),'lee'))\n",
-        "debug=True ; veryDebug=True ; blocked=[]\n",
+        "# path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/imgs/new_database/Bounding_Box/Arial_600/num/8/591.jpg\"\n",
+        "# path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/testCadre.png\"\n",
+        "# path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/payslip_Arial_10_1_g.png\"\n",
+        "# path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/imgs/new_database/documents/2PS_Arial_600.jpg\"\n",
+        "# mask=detectTextAreas(path,'mask.png',square(25))\n",
+        "# im=load_image(path)\n",
+        "# for i in range(im.shape[0]):\n",
+        "#     for j in range(im.shape[1]):\n",
+        "#         if not(mask[i][j]):\n",
+        "#             im[i][j]=255\n",
+        "# # plt.imshow(skeletonization_image(binarization_image(load_image(path),'otsu'),'lee'))\n",
+        "# newpath=\"imClean.png\"\n",
+        "# plt.imsave(newpath,im)\n",
+        "debug=False ; veryDebug=False ; blocked=[]   \n",
         "print(graph(path))"
       ]
     },
     {
       "cell_type": "code",
-      "execution_count": 45,
+      "execution_count": 21,
       "metadata": {},
       "outputs": [
         {
-          "ename": "AttributeError",
-          "evalue": "'numpy.ndarray' object has no attribute 'index'",
-          "output_type": "error",
-          "traceback": [
-            "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
-            "\u001b[0;31mAttributeError\u001b[0m                            Traceback (most recent call last)",
-            "\u001b[0;32m/tmp/ipykernel_6160/2426019096.py\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mim\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m255\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
-            "\u001b[0;31mAttributeError\u001b[0m: 'numpy.ndarray' object has no attribute 'index'"
+          "name": "stdout",
+          "output_type": "stream",
+          "text": [
+            "threshold found : 0.525390625\n",
+            "threshold found : 0.525390625\n",
+            "1\n",
+            "[[(1, 0), (0, 1), (1, 0), (0, 1)]]\n"
           ]
+        },
+        {
+          "data": {
+            "image/png": "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",
+            "text/plain": [
+              "<Figure size 432x288 with 1 Axes>"
+            ]
+          },
+          "metadata": {
+            "needs_background": "light"
+          },
+          "output_type": "display_data"
         }
       ],
-      "source": []
+      "source": [
+        "path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/0Dot.jpg\"\n",
+        "path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/imgs/new_database/Bounding_Box/Arial_600/num/8/591.jpg\"\n",
+        "# path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/testCadre.png\"\n",
+        "# path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/payslip_Arial_10_1_g.png\"\n",
+        "# path=\"/home/felix/Documents/work/FuzzyDoc/fuzzydoc/imgs/new_database/documents/2PS_Arial_600.jpg\"\n",
+        "# mask=detectTextAreas(path,'mask.png',square(25))\n",
+        "# im=load_image(path)\n",
+        "# for i in range(im.shape[0]):\n",
+        "#     for j in range(im.shape[1]):\n",
+        "#         if not(mask[i][j]):\n",
+        "#             im[i][j]=255\n",
+        "# # plt.imshow(skeletonization_image(binarization_image(load_image(path),'otsu'),'lee'))\n",
+        "# newpath=\"imClean.png\"\n",
+        "# plt.imsave(newpath,im)\n",
+        "debug=False ; veryDebug=False ; blocked=[]\n",
+        "print(graph(path))"
+      ]
     },
     {
       "cell_type": "code",